,I8Berkeley DB Reference Guide: Introduction[P2

Berkeley DB Reference Guide: Introduction



*

What is Berkeley DB?



GBerkeley DB is an embeddable database system that supports keyed accessto data.CThe software is distributed in source code form, and developers canDcompile and link the source code into a single library for inclusiondirectly in their applications.

GDevelopers may choose to store data in any of several different storageGstructures to satisfy the requirements of a particular application. InIdatabase terminology, these storage structures and the code that operates?on them are called access methods. The library includes)support for the following access methods:



FBerkeley DB also provides core database services to developers. Theseservices include:



GBy combining the page cache, transaction, locking, and logging systems,MBerkeley DB provides the same services found in much larger, complex and morePexpensive, database systems. Berkeley DB supports multiple simultaneous readersHand writers and guarantees that all changes are recoverable, even in theAcase of a catastrophic hardware failure during a database update.

GDevelopers may select some or all of the core database services for anyCaccess method or database. Therefore, it is possible to choose theFappropriate storage structure and the right degrees of concurrency and#recoverability for any application.

EIn addition, some of the systems (for example, the locking subsystem)Jcan be called separately from the Berkeley DB access method. As a result,Fdevelopers can integrate non-database objects into their transactionalapplications using Berkeley DB.

NBerkeley DB includes callable APIs in C, C++ and Java. Callable APIs for Tcl,)Python and Perl are separately available.

JThe Berkeley DB library does not provide user-level interfaces, data entryJGUI's, SQL support or any of the other standard database interfaces. WhatFit does provide are the programmatic building blocks that allow you toHeasily embed database-style functionality and support into other objectsor interfaces.

AJÿÿ