我正在寻找用 C 编写的 B 树库的精益且构建良好的开源实现。它需要在非 GPL 许可下才能用于商业应用程序。理想情况下,该库支持将 B-tree 索引存储/操作为磁盘文件,以便可以使用可配置(即:最小)RAM 占用空间构建大型树。
注意:由于似乎有些混淆,二叉树和 B-Tree不是一回事。
我正在寻找用 C 编写的 B 树库的精益且构建良好的开源实现。它需要在非 GPL 许可下才能用于商业应用程序。理想情况下,该库支持将 B-tree 索引存储/操作为磁盘文件,以便可以使用可配置(即:最小)RAM 占用空间构建大型树。
注意:由于似乎有些混淆,二叉树和 B-Tree不是一回事。
SQLite 实现的作者已放弃版权。如果 LGPL 没问题,那么也许你可以使用GNUpdate 的实现?
如果 LGPL 没问题,那么东京内阁可能符合要求。LGPL 允许与非自由应用程序链接,而不会对最终产品的分发增加任何限制。
查看 QDBM: http: //fallabs.com/qdbm/。它是 LGPL(可用于商业应用程序),使用任意键/值对实现磁盘支持的哈希和/或 B+ 树,并构建在各种平台上。
Attractive Chaos实现 kbtree.h。这是一个高效的 B-tree 库
我遇到了这个——用于 SCM、Java、C# 和 C 的 WB B-Tree 数据库,它是一个 GNU 包。
也许你可以考虑伯克利分贝。它在内部使用 b-tree。