c++ - C/C++ 中的分布式键/值存储,具有可插拔存储

标签 c++ c key-value dht distributed-database

我正在寻找一个基于 C/C++ 的分布式键/值存储,它具有足够干净的设计,因此我可以插入我自己的内存存储引擎。即使我必须更改代码才能做到这一点也没关系。

有人推荐吗?或者在做这件事时有类似的经历?基于 Java 的项目 Voldemort ( http://www.project-voldemort.com/voldemort/ ) 是一个很好的例子,除了它是用 JAVA 编写的,而我正在寻找 C++ 或 C 中的东西。

最佳答案

Berkeley DB 是一个带有 C(有点像 C++)api 的键值存储。除了在键值存储之上编写您自己的元组管理之外,我不确定您所说的“可插拔存储”是什么意思。

相关性:

不回答问题,胡说八道,貌似得负分:

但我不确定这是否有效。我开始使用 Berkeley DB,但意识到我的查询变得越来越复杂,而且我编写了太多开销代码。

我最终迁移到了 SQLite。它是一个 C/C++,具有完整的 SQL 功能,但进程内内存占用非常低。然后在此基础上使用 ORM 工具来管理数据结构。

Wt 的 ORM 工具在这方面工作得很好。

这两者的结合可能会让您加快自己的代码速度,而不是乱搞访问层代码。

关于c++ - C/C++ 中的分布式键/值存储,具有可插拔存储,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21409836/

相关文章:

Java 的 System.exit(0); vs C++ 返回 0;

c++ - MPI_Bcast与数组:每个进程发送一个元素

c++ - 将 NanoGUI 添加到 OpenGL 项目

C++ 静态成员的多个实例

c - 在 Windows api 中的自定义按钮上绘制文本

c - {0} 和 calloc 之间的区别?

c - 如何从 Windows .txt 文件中读取回车符(即 '\r' )

angular - 使用 *ngFor 和 [(ngModel)] 通过 Map 更改对象数组

ios - 如何为 UILabel 添加名称

javascript - for循环中对象中每个键的返回值