• 嵌入數據庫 Berkeley DB 簡介

    0
    PHP Java C/C++ Go 12479 次瀏覽

    ORACLE Berkeley DB(BDB)是一個高性能的,嵌入數據庫編程庫,和C語言C++JavaPerlPythonTcl以及其他很多語言都有應用程序編程界面。Berkeley DB可以保存任意類型的鍵/值對,而且可以為一個鍵保存多個數據。Berkeley DB可以支持數千的并發線程同時操作數據庫,支持最大256TB的數據,廣泛用于各種操作系統包括大多數Unix類操作系統和Windows操作系統以及實時操作系統

    源起

    Berkeley DB最先由伯克利加州大學為了移除受到AT&T限制的程式碼,從BSD 4.3到4.4時所改寫的軟體。在1996年時,網景公司希望Berkeley DB的作者群改善函式庫,以配合網景公司所需要的LDAP伺服器,以及在Netscape 瀏覽器,因此促成了Sleepycat Software(在2006年時2月時Sleepycat Software被甲骨文公司所買下)。

    Berkeley DB以Sleepycat Public License發行(該授權條款為OSI及FSF所認可的條款)。發行時包括了完整的程式碼、編譯工具、測試套件,以及說明文件。由於良好的程式碼的品質以及工具程式,Berkeley DB常被其他開放原始碼軟體所使用。對於不想使用Sleepycat Public License的開發團體,甲骨文公司也提供了其他付費的授權方式。

    Berkeley DB包含有與某些經典Unix數據庫編程庫兼容的接口,包括:dbmndbmhsearch

     特征

    Berkeley DB運行在大多數的操作系統中,例如大多數的UNIX系統, 和windows系統,以及實時操作系統。
    Berkeley DB 還擁有對一些老的UNIX數據庫,例如dbm, ndbm und hsearch的兼容接口.
    對于在java系統中的使用,Berkeley DB提供了一個壓縮成jar單個文件的java版本。 這個版本可以運行在java虛擬機上使用,并且擁有和C語言版本相同的所有操作和功能。

    Berkeley DB XML,是一個接口,通過它可以實現對XML數據存貯的支持。對XML數據的訪問,會使用相應的查詢語句如Xquery, Xpath。

    Berkeley DB只支持單一的數據結構,它的所有數據包括兩個部分:key 和 data.

    Berkeley DB原則上是為嵌入式數據庫設計的。

     體系結構

    Berkeley DB以擁有比Microsoft SQL Server和Oracle等數據庫系統而言更簡單的體系結構而著稱。例如,它不支持網絡訪問—程序通過進程內的API訪問數據庫。 他不支持SQL或者其他的數據庫查詢語言,不支持表結構和數據列。 訪問數據庫的程序自主決定數據如何儲存在記錄里,Berkeley DB不對記錄里的數據進行任何包裝。記錄和它的鍵都可以達到4G字節的長度。

    盡管架構很簡單,Berkeley DB卻支持很多高級的數據庫特性,比如ACID 數據庫事務處理, 細粒度鎖, XA接口,熱備份以及同步復制。

     使用Berkeley DB的程式

    Berkeley DB是一些輕量級目錄訪問協議服務器,數據庫系統以及其他很多商業和[開源]應用的底層存儲系統。下面是使用了Berkeley DB的知名軟件的名單。

     MySQL與Berkeley DB

    作為全世界最流行的輕量級數據庫之一,MySQL也曾經采用過Berkeley DB作為其底層數據引擎,但因Berkeley DB最終被數據庫廠商Oracle收購,并且改變了其版權許可協議性質,所以MySQL不再使用其作為數據引擎之一。

    相似問題

    相關經驗

    相關資訊

    相關文檔

  • sesese色