1、berkeley db的介紹

 1、            簡介html

 

Berkeley DBBDB)是一個高性能的,嵌入數據庫編程庫,和C語言,C++JavaPerlPythonTcl以及其餘不少語言都有應用程序編程界面。Berkeley DB能夠保存任意類型的鍵/值對,並且能夠爲一個鍵保存多個數據。Berkeley DB能夠支持數千的併發線程同時操做數據庫,支持最大256TB的數據,普遍用於各類操做系統包括大多數Unix類操做系統和Windows操做系統以及實時操做系統。數據庫

Berkeley DB Java Edition (JE)是一個徹底用JAVA寫的,它適合於管理海量的,簡單的數據。編程

Berkeley DB特徵:緩存

1.  數據存儲能力很強(Large database support)多線程

2.  支持多線程(Multiple thread and process support)併發

3.  數據庫的記錄很簡單,只是簡單的鍵值對(Database records)oracle

4.  提供事務支持(Transactions)ide

5.  提供索引支持(Indexes)性能

6.  提供內存緩存的支持(In-memory cache)spa

7.  按照連續的記錄文件存儲數據(Log files)

8.  後臺線程的支持(Background threads)

9.  數據庫環境封裝了一個或多個數據庫(Database environments)

10. 支持數據庫的備份和恢復(Backup and restore)

 

2、            獲取JE

JE下載地址:http://www.oracle.com/technology/software/products/berkeley-db/je/index.html

解開包後 JE_HOME/lib/je-<version>.jar 中的jar文件添加到你的環境變量中就能夠使用je了。相關幫助文檔能夠參考 JE_HOME/docs/index.html源代碼見JE_HOME/src/*.*。(就是把你獲得的jre文件導入到你的項目中)

 

3、            JE常見異常

DatabaseNotFoundException 當沒有找到指定的數據庫的時候會返回這個異常

DeadlockException 線程間死鎖異常

RunRecoveryException 回收異常,當發生此異常的時候,你必須得從新打開環境變量。

 

4、            關於日誌文件必須瞭解的六項

JE的日誌文件跟其餘的數據庫的日誌文件不太同樣,跟C版的DBD也是有區別的

1JE的日誌文件只能APPEND,第一個日誌文件名是 00000000.jdb,當他增加到必定大小的時候(默認是10M),開始寫第二個日誌文件00000001.jdb,已此類推。

2.跟C版本有所不一樣,JE的數據日誌和事務日誌是放在一塊兒的,而不是分開放的。

3. JE cleaner負責清掃沒用到的磁盤空間,刪除後,或者更新後新的記錄會追加進來,而原有的記錄空間就不在使用了,cleaner負責清理不用的空間。

4. 清理並非當即進行的,當你關閉你的數據庫環境後,經過調用一個cleaner方法來清理。

5. 清理也不是自動執行的,須要你本身手動調用cleaner 方法來定時清理的。

6. 日誌文件的刪除僅發生在檢查點以後。cleaner準備出哪些log 文件須要被刪除,當檢查點事後,刪掉一些不在被使用的文件。每寫20M的日誌文件就執行一次檢查點,默認下。

相關文章
相關標籤/搜索