Berkeley DB
Материал из Википедии — свободной энциклопедии
Berkeley DB (BDB) - высокопроизводительная, встраиваемая база данных реализованная в виде библиотеки. BDB является нереляционной базой данных - она хранит пары ключ/значение как массивы байтов, и поддерживает множество значений для одного ключа. BDB может обслуживать тысячи процессов или потоков, одновременно манипулирующих базами данных размером в 256 терабайт, на разнообразном оборудованиии под различным операционными системами, включая большинство UNIX-подобных систем и Windows, а также на операционных системах реального времени.
Первая версия Berkeley DB была разработана в Университете Беркли во время перехода от BSD 4.3 к 4.4 когда происходило удаление кода UNIX, принадлежащего компании AT&T. Netscape попросила авторов Berkeley DB улучшить и расширить библиотеку - в то время версию 1.85 - чтобы она удовлетворяла их требованиям к использованию в сервере LDAP и в браузере Netscape. Этот запрос привёл к созданию Sleepycat Software (купленной корпорацией Oracle в феврале 2006 года). Berkeley DB распространяется под лицензией Sleepycat Public License - которая была одобрена OSI и FSF. Программа поставляется с полным исходным кодом, средствами сборки, инструментами тестирования и документацией. Качество кода и практичность вместе со свободной лицензией привело к использованию Berkeley DB во многих свободных и открытых программах. Те, кто не желает следовать условиям лицензии Sleepycat Public License, могут купить у корпорации Oracle собственническую лицензию на использование библиотеки в закрытых проектах. Данная техника называется двойным лицензированием.
[править] Архитектура
Berkeley DB примечательна своей простой архитектурой в сравнении с другими системами баз данных, такими как, например Microsoft SQL Server и Oracle. Например в ней отсутствуют сетевой доступ — программы используют базу данных через вызовы внутрипроцессного API. Она не поддерживает SQL или любой другой язык запросов, так же как не поддерживает схему БД или столбцы в таблицах. Программа, которая использует БД, сама решает, как данные сохраняются в записи; БД не налагает ограничений на данные, хранимые в записях. Запись и её ключ оба могут иметь размер до четырёх гигабайт.
Несмотря на простую архитектуру, Berkeley DB поддерживает многие передовые возможности баз данных, такие как ACID-транзакции, детальные блокировки, интерфейс XA, горячие бэкапы и репликацию.
[править] Программы, в которых используется Berkeley DB
Berkeley DB является хранилищем данных для серверов LDAP, СУБД, и множества других собственнических и свободных программ. Вот список нескольких широко известных программ, в которых для хранения данных используется Berkeley DB:
- MySQL — Поддержка таблиц BDB включена в дистрибутив исходного кода MySQL начиная с версии 3.23.34 и в бинарную версию MySQL-Max. BerkeleyDB обеспечивает транзакционный обработчик таблиц для MySQL. Использование BerkeleyDB повышает для ваших таблиц шансы уцелеть после сбоев, а также предоставляет возможность осуществлять операции COMMIT и ROLLBACK для транзакций. Дистрибутив исходного кода MySQL поставляется с дистрибутивом BDB, содержащим несколько небольших исправлений, которые позволяют устранить определённые проблемы при работе с MySQL.
- Subversion — Система управления версиями, разработанная чтобы заменить CVS.
- KDevelop — IDE для GNU/Linux и других Unix-подобных операционных систем.
- Sun Grid Engine — Свободная система управления распределёнными ресурсами. Самый популярный планировщик пакетных очередей задач для вычислительных ферм.
- Movable Type — Собственническая система публикации блогов, разработанная калифорнийской компанией Six Apart.
- Caravel CMS — Свободная система управления содержимым изначально разработанная для использования в более чем 2,000 организаций Меннонитской церкви.
- OpenLDAP — Свободная реализация «Облегчённого протокола доступа к каталогам» (LDAP).
- Fedora Directory Server - сервер каталогов уровня предприятия c открытым исходным кодом. Изначально именно под нужды FDS (тогда сервер назывался Netscape Directory Server) была адаптированна академическая версия BerkeleyDB.
- KLibido — Свободный клиент новостных групп USENET, ориентированный на скачивание бинарных файлов.
- Citadel — Свободная платформа совместной работы в которой все данные, включая базу сообщений, хранятся в Berkeley DB.
- Bogofilter — Свободный спам-фильтр который хранит свои списки ключевых слов в Berkeley DB.
- Jabberd2 — Сервер сети Jabber.
- Spamassassin — Анти-спамовое приложение.
- Redland — Прикладной каркас для RDF. Может использовать BDB для постоянного хранения данных (троек).
[править] Ссылки
- Сайт Oracle Berkeley DB
- Сайт компании Sleepycat
- itc.ua (русск.)
- Открытые системы #11/2000 - Berkeley DB
Это незавершённая статья о компьютерном программном обеспечении. Вы можете помочь проекту, исправив и дополнив её. |