View the Most Wanted LQ Wiki articles.
LinuxQuestions.org > Linux Wiki > Berkeley DB

From LQWiki

Jump to: navigation, search

Berkeley DB is the most widely deployed embedded database system in the world. It is in applications used by tens of millions: from stand-alone desktop programs to high-performance data servers, Berkeley DB is the backing store for applications in daily use.

Berkeley DB is the scalable, reliable storage engine behind many popular Internet services. Messaging and directory servers from companies like Netscape and Innosoft use Berkeley DB to manage the data they deliver. Mail transfer agents from companies like Sendmail www.sendmail.com and Software.com www.software.com use Berkeley DB. Companies like Network Associates rely on Berkeley DB to provide security infrastructure on the Web. Sleepycat Software's products are built for software developers, not database administrators.

Berkeley DB uses 48 bits to address individual bytes in a database. This means that the largest theoretical Berkeley DB database is 2**48 bytes. A truly enormous database. Because Berkeley DB can be deployed in so many different ways, Sleepycat has provided the tools developers require without mandating their use; for example, Berkeley DB's support for multi-threaded operation. The library is entirely thread-safe. Because Berkeley DB itself doesn't mandate the use of any particular threads package, you can use the one you like best.

Berkeley DB works equally well when multiple processes operate on a single database. Whether sharing is among threads in a single process, among processes on a machine, or some hybrid of the two, the database software correctly handles cacheing, locking, and other core services.

Because the Berkeley DB uses 48-bit addresses, the largest theoretical database is 2**48 bytes, or 256 petabytes, in size. Berkeley DB is in regular production use today, managing databases that are hundreds of gigabytes in size.


Share

Personal tools