gpt4 book ai didi

java - 可嵌入的基于磁盘的键值存储

转载 作者:行者123 更新时间:2023-12-04 06:02:45 25 4
gpt4 key购买 nike

我们正在开发一个项目,该项目将使用单个 jar 文件进行分发。我们需要一些具有以下属性的键值存储:

  • 可嵌入到我们的 jar 文件中,因此无需额外安装。
  • 最多可容纳数千万双
  • 内存效率。这意味着 50M 对不到 100M
  • 键和值都是简单类型:long、int、small byte[]
  • 用于商业用途的免费许可是额外奖励
  • 我们不需要并发、ACID 或此类高级东西。
  • 低于 100 微秒的分摊查找时间。

  • 除了 BerkelyDB 或 JDBM2/3 之外还有什么建议吗?

    最佳答案

    GNU Trove提供了许多映射(例如 TIntIntHashMap ),它们比标准 Java 映射更节省内存,因为它们使用原始类型。我怀疑除非您对存储的内容有所了解,否则您可以获得比这更高的内存效率。 Trove是more or less LGPL,因此您使用它可能是安全的。我不知道它是否特别符合您的确切规范,但我认为当您可以将东西放入 RAM 时,值得一试。

    当您可能需要交换到磁盘时,Ehcache是个不错的选择。您可以指定在一定数量的条目后将值存储在磁盘上(在 2.5 版中,如果您不知道确切的条目数量,您可以在使用一定数量的 RAM 后指定)。

    关于java - 可嵌入的基于磁盘的键值存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8759713/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com