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