什么是C中良好的开源B树实现?

时间:2008-08-28 14:21:11

标签: c algorithm data-structures b-tree

我正在寻找一个用C语言编写的B树库的精简和构建良好的开源实现。它需要在非GPL许可下才能在商业应用程序中使用。理想情况下,此库支持将B树索引作为磁盘文件进行存储/操作,以便可以使用可配置(即:最小)RAM占用空间来构建大型树。

注意:由于似乎存在一些混淆,二元树和B树是相同的事情。

6 个答案:

答案 0 :(得分:7)

SQLite implementation的作者放弃了版权。如果LGPL没问题,那么也许你可以使用GNUpdate's implementation

答案 1 :(得分:6)

如果LGPL没问题,那么Tokyo Cabinet可能符合要求。 LGPL允许链接非自由应用程序,而不会对最终产品的分发添加任何限制。

答案 2 :(得分:5)

查看QDBM:http://fallabs.com/qdbm/。它是LGPL(可以在商业应用中使用),实现具有任意键/值对的磁盘支持哈希和/或B +树,并且构建在各种平台上。

答案 3 :(得分:3)

Attractive Chaos实现kbtree.h。它是一个高效的B树库

答案 4 :(得分:2)

我遇到了this - 用于SCM,Java,C#和C的WB B-Tree数据库,它是一个GNU包。

答案 5 :(得分:0)

也许你可以考虑一下伯克利数据库。它在内部使用了一个b树。