我正在寻找一种快速、可嵌入的键/值存储,它在键集合(或简单的可嵌入数据库)上具有游标语义,可以在 .NET 和单声道中使用。需要它是开源的,宁愿使用 MIT 或 Apache 风格的许可证而不是 GPL 许可证。不反对需要编写绑定的库,只要二进制文件可用于 windows 和 linux。
考虑的选项:
- SQLite - 具有绑定和本机实现,但单线程并且不是那么快
- 嵌入式 InnoDB - 我找不到 .NET 绑定,它是 GPLv2
- Berkley DB - 我找不到 .NET 绑定
- 东京内阁 - 我找不到 .NET 绑定,并且在 Windows 上构建有问题
- MadCow 内存映射数据结构 - GPLv2
有没有比上面更好的选项,或者我不知道的上面的绑定?
更新:在 4.8 和 5.0 中使用了 Oracle 的官方 BDB 绑定,但无法让它们在单声道下工作。还有一些其他问题(BDB 的 C# 驱动程序仍然不成熟)。编写了一个受 BitCask 启发的 K/V 存储,名为 Firkin ( http://github.com/sdether/Firkin ) 存储并现在使用它。