Berkeley DB

Berkeley DBは、アプリケーション組み込み型のデータベースライブラリである。現在はオラクルの製品であり、またオープンソースとして公開されている。
歴史.
Berkeley DBは、元々カリフォルニア大学バークレー校のプロジェクトが4.3 BSDに含まれるAT&T由来のコードを置き換える過程で生まれた。その後、開発者によって設立されたSleepycat Softwareが開発・販売を手がけていた。2006年2月にオラクルがSleepycat Softwareを買収したのちは、"Oracle Berkeley DB"とブランド名を変えオラクルの製品群の一部を成している。
特徴.
Berkeley DBには、Cで実装されたオリジナルの"Berkeley DB"、Javaで実装された"Berkeley DB Java Edition"、XMLデータベースの"Berkeley DB XML Edition"の三種類が存在する。いずれもオープンソースとして公開されているが、その用途に応じてオープンソースライセンスと商用用途向けライセンスを選択できるデュアルライセンス方式を採っている。
いわゆるリレーショナルデータベースではない。
Berkeley DB.
オリジナルの"Berkeley DB"は、UNIXに古くから含まれていたdbmより発展したアプリケーション組み込み型データベースである。dbmと同じく、SQLのようなデータ操作言語を持たず、データベースへのアクセスは全てサブルーチン呼び出しによって行う。しかしdbmとは異なり、データ操作機能にトランザクションやレプリケーションに対応するインタフェースが備わっているのが特徴である（X/Open XAなど）。その他にロックやオンラインバックアップ機能を持つ。
"Berkeley DB"本体が対応するプログラミング言語はCおよびC++だけだが、Perl、Python、Tcl他多くの言語にバインディングが用意されており、それらから容易に利用することができる。
Berkeley DB Java Edition.
Javaのみを使って実装されているため、Java実行環境さえあればプロセッサやOSを問わず利用できるのが大きな特徴である。
データベースそのものの機能はオリジナルのBerkeley DBとほぼ同等である。
Berkeley DB XML Edition.
XQueryおよびXPathによるXML文書の検索に特化したデータベースである。バックエンドに"Berkeley DB"を利用している。
Berkeley DBを利用するソフトウェア.
数多くのソフトウェアがBerkeley DBをバックエンドデータベース・ストレージとして現在または過去に採用している。