Berkeley DB (libdb) is a programmatic toolkit that provides embedded database support for both traditional and client/server applications. It includes b+tree, queue, extended linear hashing, fixed, and variable-length record access methods, transactions, locking, logging, shared memory caching, database recovery, and replication for highly available systems. DB supports C, C++, C#, Java, PHP, and Perl APIs. It supports key-value pair (NoSQL), SQL, and Java Object formatted data. It is available for a wide variety of Unix platforms as well as QNX, Android, Mac OS X, and several varieties of Windows.
|Tags||Database Database Engines/Servers|
|Operating Systems||Windows Unix FreeBSD Solaris HP-UX Mac OS AIX Linux Android QNX Windriver|
|Implementation||C C++ Java Perl Python Tcl C#|
Release Notes: The first 5.3 release came out a few month ago. One of the main highlights was support for the Android platform. 5.3.21 is the second release. This is mainly a bugfix release, but it does include one feature which is potentially very interesting, support for Oracle JDK7.
Release Notes: New features include an online backup command for SQL, VACUUM (which does not require the database to be quiescent), encryption, BFILE, ADO.NET, iOS/iPhone/iPad support (in addition to existing support for Android), a new command line tool called "db_replicate" which will turn non-HA applications into HA/replicated applications with no new code, performance improvements, and lots of other features.
Release Notes: Increased Performance: improved concurrency for multi-threaded applications on SMP systems. A new db_sql tool: automatic generation of Berkeley DB application code from SQL for faster development and migration. New APIs: support for C#/.NET and the C++ Standard Template Library (STL).
Release Notes: The lock manager may now be partitioned, improving performance on some SMP and CMP systems. Optional pre-zero log files. Replications across different endian CPUs. Replication can manage the master node via leases. The Java/JNI API now supports the Direct Persistence Layer (DPL). failchk() and other methods related to post-process failure database cleanup have been improved.
Release Notes: Non-stop upgrades for replicated systems: customers can upgrade/patch the database without taking the entire system down. Multi-version concurrency control (MVCC) allows read transactions to proceed without being blocked by write transactions, therefore improving concurrency and performance. Replication framework is a pre-built, out of the box framework that makes it faster and easier for developers to build replicated apps.