Ответ 1
Проверьте QDBM: http://fallabs.com/qdbm/. Это LGPL (может использоваться в коммерческом приложении), реализует хэш-диск с поддержкой диска и/или дерево B + с произвольными парами ключ/значение и основывается на различных платформах.
Я ищу бережливую и хорошо построенную реализацию с открытым исходным кодом библиотеки B-дерева, написанную на C. Она должна находиться под лицензией, отличной от GPL, чтобы ее можно было использовать в коммерческом приложении. В идеале, эта библиотека поддерживает индекс B-дерева, который будет храниться/управляться как файл диска, чтобы большие деревья могли быть построены с использованием настраиваемого (т.е. Минимального) размера ОЗУ.
Примечание. Поскольку, похоже, какая-то путаница, двоичное дерево и B-дерево - это не одно и то же.
Проверьте QDBM: http://fallabs.com/qdbm/. Это LGPL (может использоваться в коммерческом приложении), реализует хэш-диск с поддержкой диска и/или дерево B + с произвольными парами ключ/значение и основывается на различных платформах.
Автор реализация SQLite отказался от авторских прав. Если LGPL в порядке, возможно, вы могли бы использовать GNUpdate implementation?
Если LGPL в порядке, то Tokyo Cabinet может поместиться в счет. LGPL позволяет связываться с несвободным приложением, не добавляя никаких ограничений на распространение конечного продукта.
Привлекательный хаос реализует kbtree.h. Это эффективная библиотека B-дерева
Я столкнулся с this - База данных B-Tree WB для SCM, Java, С# и C, которая представляет собой пакет GNU.
Может быть, вы можете рассмотреть berkeley db. Он использует внутреннее дерево b.