【发布时间】:2012-01-28 12:47:36
【问题描述】:
我查看了键值数据库 Redis 并对可以提供以下功能的替代方案感到好奇:
-
而不是将外部数据库引擎作为单独的进程启动,然后连接到它,例如通过C interface:
redisContext *c = redisConnect("127.0.0.1", 6379);是否有替代方案可以选择将数据库代码包含为库,并将数据作为文件加载到二进制文件中?例如,给定二进制
myDbBinary和命令:$ myBinary --filter=filterOptions db.dat二进制文件
myBinary不会启动单独的数据库进程并连接到其端口,而是myBinary将文件db.dat中的密钥(和哈希)加载到内存(或类似的VM 排列)中然后它可以过滤(使用filterOptions,无论它们是什么)并执行键/哈希查找。 数据和存储指令的 C 和 Python 接口。
哈希支持,我的意思是一个键将一个哈希表作为一个值来维护。
有这样的软件吗?
【问题讨论】:
-
您可以使用标准库中的任何 *dbm 模块(包括“anydbm”)。您必须自己进行文件锁定和争用处理。但是,除此之外,这是一个非常简单的选择。
标签: python c database redis key-value