问题描述
我需要一个类似于cdb(常数数据库)的工具,这将允许我在索引文件中存储大量的数据集(范围在几百千兆字节)。 CDB是一个理想的候选人,但它有一个2 GB的文件大小限制,所以它不合适。
我正在寻找的功能是一个支持二进制键和值的持久键值存储。创建后数据库是只读的,永远不会被修改。
你能推荐一些工具吗?和btw,存储开销应该小,因为我将存储十亿的记录。
I need a tool similar to cdb (constant database) that would allow me to store large sets of data (in the range of hundreds of gigabytes) in indexed files. CDB is an ideal candidate but it has a 2 GB file size limit so it's not suitable.The functionality I'm looking for is a persistent key-value store supporting binary keys and values. After creating the database is read only and will never be modified.Can you recommend some tool? And btw, storage overhead should be small because I will be storing billion of records.
BTW我在寻找一个数据库管理库(可嵌入),而不是一个独立的服务器。
BTW I'm looking for a db management library (embeddable), not a standalone server. Something that can be used inside a C program.
感谢您,
RG
Thanks,RG
推荐答案
另一个选项是mcdb,它从Dan J. Bernstein的cdb扩展。
Another option is mcdb, which is extended from Dan J. Bernstein's cdb.
mcdb支持非常大的常数数据库,比cdb快,用于数据库创建和数据库访问。但是,创建数百GB的数据库可能需要一些时间。 mcdb可以在几秒钟内为缓存数据创建一个千兆字节大小的数据库,或在从冷缓存启动时一分钟左右创建一个千兆字节大小的数据库。
mcdb supports very large constant databases and is faster than cdb, both for database creation and database access. Still, creating a database of hundreds of gigabytes can take a bit of time. mcdb can create a gigabyte-sized database in a few seconds for cached data or in a minute or so when starting from cold cache.
(披露:我是mcdb的作者)
(Disclosure: I am the author of mcdb)
这篇关于cdb - 大文件的常量键值存储(数百GB)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!