Berkeley DB Programmer's Reference: Introduction

Berkeley DB Programmer's Reference: Introduction

What is Berkeley DB?

The Berkeley DB library is a set of subsystems that provide a multi-lingual, modular programming interface to keyed databases. The library includes support for various indexed access methods (currently B+tree, Extended Linear Hashing, and Fixed and Variable-length records), and in the scope of those access methods, transactions and full recoverability, locking, logging and file page caching.

Many of the subsystems (e.g., the shared memory buffer pool subsystem) are useful independent of the other Berkeley DB subsystems. However, some subsystems are explicitly based on other subsystems (e.g., using the transaction subsystem also requires using the logging subsystem).

Berkeley DB supports C, C++, Java and Perl APIs.

The Berkeley DB library does not provide user interfaces, data entry GUI's, SQL support or any of the other standard user-level database interfaces. What it does provide are the programmatic building blocks that allow you to easily embed database-style functionality and support into other objects or interfaces.