cdb-用于大文件(数百GB)的常量键值存储



我需要一个类似于cdb(常量数据库)的工具,它允许我在索引文件中存储大量数据(在数百GB的范围内)。CDB是一个理想的候选者,但它有2GB的文件大小限制,所以它不合适。我正在寻找的功能是一个持久的键值存储,支持二进制键和值。创建后,数据库是只读的,永远不会被修改。你能推荐一些工具吗?顺便说一句,存储开销应该很小,因为我将存储数十亿条记录。

顺便说一句,我正在寻找一个数据库管理库(可嵌入),而不是一个独立的服务器。可以在C程序中使用的东西。

谢谢,RG

另一个选项是mcdb,它是从Dan J.Bernstein的cdb扩展而来的。

https://github.com/gstrauss/mcdb/

mcdb支持非常大的常量数据库,并且在数据库创建和数据库访问方面都比cdb快。尽管如此,创建一个数百GB的数据库可能需要一些时间。mcdb可以在几秒钟内为缓存的数据创建一个千兆字节大小的数据库,或者从冷缓存启动时在一分钟左右的时间内创建。

https://github.com/gstrauss/mcdb/blob/master/t/PERFORMANCE

(披露:我是mcdb的作者)

有hamsterdb(我是作者),伯克利,东京内阁。

hamsterdb使用btree,因此对数据进行排序。东京内阁是一个散列表,因此没有排序。伯克利可以两者兼而有之。

不用说我会推荐什么;)

所有这些都可以链接到C应用程序中。它们都不应该有2GB的限制。

再见Christoph

如果您的值较大而键较小,则也可以考虑redishttp://redis.io

相关内容

  • 没有找到相关文章

最新更新