BerkeleyDB
Berkeley DB (BDB) is an embedded database software library for key/value data, historically significant in open-source software. Berkeley DB is written in C with API bindings for many other programming languages. BDB stores arbitrary key/data pairs as byte arrays and supports multiple data items for a single key. Berkeley DB is not a relational database,[2] although it has database features including database transactions, multiversion concurrency control and write-ahead logging. BDB runs on a wide variety of operating systems, including most Unix-like and Windows systems, and real-time operating systems. BDB was commercially supported and developed by Sleepycat Software from 1996 to 2006. Sleepycat Software was acquired by Oracle Corporation in February 2006. https://en.wikipedia.org/wiki/Berkeley_DB
- The name "Berkeley DB" is used by Oracle Corporation for three different products, only one of which is BDB:[15]
- Berkeley DB, the C database library that is the subject of this article
- Berkeley DB Java Edition,[16] a pure Java library whose design is modelled after the C library but is otherwise unrelated
- Berkeley DB XML,[17] a C++ program that supports XQuery, and which includes a legacy version of the C database library
- Open-source programs still using Berkeley DB (BDB was once very widespread, but usage dropped steeply from 2013 see licensing section). Notable software that still uses Berkeley DB for data storage include:
- Bogofilter – A free/open-source spam filter that saves its wordlists using Berkeley DB by default.[18]
- Citadel/UX – A collaborative software (messaging and groupware) that is directly descended from the Citadel family of programs, which became popular in the 1980s and 1990s as a bulletin board system platform.
- Sendmail – A free/open-source MTA, first released in 1983 for Linux/Unix systems.
- Spamassassin – A free/open-source anti-spam application.
- Open-source operating systems and languages such as Perl and Python still support old BerkelyDB interfaces. The FreeBSD and OpenBSD operating systems ship Berkeley DB 1.8x to support the dbopen()[19][20] operating system call used by password programs such as pwb_mkdb.[21] Linux operating systems, including those based on Debian,[22] and Fedora[23] ship Berkeley DB 5.3 libraries.
- Berkeley DB licenses:
- V2.0 - V6.0.19 is licensed under the Sleepycat License
- V6.0.20 and newer is licensed under the GNU AGPL v3.[25]
- Switching the open source license in 2013 from the Sleepycat license to the AGPL had a major effect on open source software. Since BDB is a library, any application linking to it must be under an AGPL-compatible license. Many open source applications and all closed source applications would need to be relicensed to become AGPL-compatible, which was not acceptable to many developers and open source operating systems. By 2013 there were many alternatives to BDB, and Debian Linux was typical in their decision to completely phase out Berkeley DB, with a preference for the Lightning Memory-Mapped Database (LMDB).[26]
older notes
The Open Source license for Berkeley DB permits you to use the software at no charge under the condition that if you use Berkeley DB in an application you redistribute, the complete source code for your application must be available and freely redistributable under reasonable conditions. If you do not want to release the source code for your application, you may purchase a license from Sleepycat Software.
Dave McCusker has had some issues with them.
Sleepycat is also working on an XML-native db: Berkeley Db Xml
Here's an old email about performance of BerkeleyDB as a back-end to Zope's ZEO/ZODB (instead of the native data.fs file).
See SubVersion for a side note regarding running BerkeleyDB on MsWindows (Win95/98).
Edited: | Tweet this! | Search Twitter for discussion
No Space passed/matched! - http://fluxent.com/wiki/BerkeleyDB... Click here for WikiGraphBrowser
No Space passed/matched! - http://fluxent.com/wiki/BerkeleyDB