【问题标题】:PatriciaTrie or HashMap which is best to store large amount of data in sessionPatriciaTrie 或 HashMap 最好在会话中存储大量数据
【发布时间】:2017-03-03 07:05:52
【问题描述】:

PatriciaTrie 或 HashMap 最适合在会话中存储大量(10 万条记录)数据。 PatriciaTrie 如何分配内存——例如——HashMap 通过 Initial_Size*loadFactor 分配内存。

【问题讨论】:

  • 定义large - 至少是数量级?什么?数百个条目?很少有 Mega 条目?
  • 做一些测试,找出更好的方法。
  • 我需要解释为什么我要使用 PatriciaTrie 代替 HashMap。
  • 大意味着大约有一百万条记录。
  • 您决定哪个“最好”的标准是什么?您是否要使用特定于 trie 的 API 方法?

标签: java collections


【解决方案1】:

由于内存开销,目前我正在寻找 HashMap 的最佳替代品,并且我需要更快地更新和检索数据。

我不知道Trie 是否会比HashMap 提供更小的内存开销。这取决于密钥的大小和分布,以及如何实现 Trie。查找和更新的速度可能也是如此。

我认为您需要尝试(不是双关语)两种替代方法并衡量性能......使用代表您的实际数据的数据集。 p>

另一点(您似乎误解了)是您是否打算利用 API 中的特定于 Trie 的方法;例如ceiling、floor、headMap、tailMap、first、last 等等。如果你这样做了,那么你需要使用 Trie ... 或其他类型的可导航地图 API。使用HashMap 无法有效地做这些事情。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-02-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-31
    • 1970-01-01
    • 1970-01-01
    • 2011-05-28
    相关资源
    最近更新 更多