Что такое хорошая реализация B-дерева с открытым исходным кодом на C?[закрыто]
-
09-06-2019 - |
Вопрос
Я ищу бережливую и хорошо сконструированную реализацию библиотеки B-tree с открытым исходным кодом, написанную на C.Он должен быть под лицензией, отличной от GPL, чтобы его можно было использовать в коммерческом приложении.В идеале, эта библиотека поддерживает сохранение индекса B-tree в виде файла на диске, чтобы можно было создавать большие деревья с использованием настраиваемого (ie:минимальный) Объем оперативной памяти.
Примечание:Поскольку, казалось, возникла некоторая путаница, двоичное дерево и B-дерево являются нет то же самое.
Решение
Проверьте QDBM: http://fallabs.com/qdbm/.Это LGPL (может использоваться в коммерческих приложениях), реализует хэш с поддержкой диска и / или B + дерево с произвольными парами ключ / значение и строится на различных платформах.
Другие советы
Автор книги " Реализация SQLite отказался от авторских прав.Если LGPL в порядке, то, возможно, вы могли бы использовать Реализация GNUpdate?
Если LGPL в порядке, то Токийский кабинет министров могло бы подойти по всем статьям.LGPL позволяет создавать ссылки на несвободные приложения без добавления каких-либо ограничений на распространение конечного продукта.
Привлекательный Хаос реализовать kbtree.h.Это эффективная библиотека B-дерева
Я наткнулся на это - База данных WB B-Tree для SCM, Java, C # и C - это пакет GNU.
Может быть, вы могли бы рассмотреть базу данных berkeley db.Он использует b-дерево внутри компании.