【问题标题】:Key-Value DB (an alternative to Berkeley DB?)Key-Value DB(Berkeley DB 的替代品?)
【发布时间】:2011-08-30 09:58:56
【问题描述】:

我正在寻找磁盘上的哈希图(Berkeley DB 完全适合,但存在许可问题)。 要求是:

  1. 具有商业友好型许可证的 FOSS(可在商业应用中免费使用)
  2. 一个 C/C++ 接口
  3. 可嵌入
  4. 速度不错?比 SQLite 更快是理想的
  5. 跨平台也不错

欢迎提出任何建议。 谢谢!

【问题讨论】:

    标签: c++ c hashmap


    【解决方案1】:

    最近有几个选项,它们都提供了 byte[] -> byte[] 映射、原子批量更新,并且都获得了 BSD 许可:

    Leveldb 来自 Google。

    RocksDB 来自 Facebook,它基于 Leveldb 的一个分支,声称可以在 SSD 支持的存储上提供更高的性能。

    【讨论】:

      【解决方案2】:

      虽然你的应用领域和数据规范不明确; RocksDB,它是嵌入式持久键值存储的最新解决方案,似乎适合您。 Facebook 的基准测试表明,它在服务器工作负载方面比 LevelDB 具有更好的性能,尤其是在数据大于 RAM 容量的情况下。它也是在 BSD 许可下开源的。您可以找到 RocksDB C++ 示例和more detail from here

      【讨论】:

        【解决方案3】:

        *dbm 库怎么样?

        dbm ndbm gdbm sdbm tdbm 和朋友们

        有很多选择。

        【讨论】:

        • 刚刚意识到其中许多不会(或至少不打算?)在 Windows 上编译。此外,许多人已经很老了。我不会立即拒绝他们,我只是想听听您对此的看法
        • 隐藏的需求(叹气)。 sdbm 似乎可用于 Windows。
        猜你喜欢
        • 2011-03-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多