LevelDB數(shù)據(jù)庫 v1.22 綠色免費版

2022-07-09發(fā)布者:lisi大?。?/span> 下載:0

文件大小:

軟件介紹

LevelDB數(shù)據(jù)庫是Google編寫的一個快速鍵值存儲庫,LevelDB應用了LSM (Log Structured Merge) 策略,lsm_tree對索引變更進行延遲及批量處理,它提供了從字符串鍵到字符串值的有序映射,調用者可以提供一個自定義比較函數(shù)來覆蓋排序順序。

image.png

功能介紹
鍵和值是任意的字節(jié)數(shù)組。
數(shù)據(jù)是按鍵排序存儲的。
調用者可以提供一個自定義比較函數(shù)來覆蓋排序順序。
基本的操作是Put(key,value)、Get(key)、Delete(key)。
在一個原子批中可以進行多次修改。
用戶可以創(chuàng)建瞬時快照,以獲得數(shù)據(jù)的一致視圖。
在數(shù)據(jù)上支持向前和向后迭代。
使用Snappy壓縮庫對數(shù)據(jù)進行自動壓縮。
外部活動(文件系統(tǒng)操作等)通過虛擬接口中轉,因此用戶可以自定義操作系統(tǒng)的交互。
LevelDB的特點和限制如下:
特點:
1、key和value都是任意長度的字節(jié)數(shù)組;
2、entry(即一條K-V記錄)默認是按照key的字典順序存儲的,當然開發(fā)者也可以重載這個排序函數(shù);
3、提供的基本操作接口:Put()、Delete()、Get()、Batch();
4、支持批量操作以原子操作進行;
5、可以創(chuàng)建數(shù)據(jù)全景的snapshot(快照),并允許在快照中查找數(shù)據(jù);
6、可以通過前向(或后向)迭代器遍歷數(shù)據(jù)(迭代器會隱含的創(chuàng)建一個snapshot);
7、自動使用Snappy壓縮數(shù)據(jù);
8、可移植性;
限制:
1、非關系型數(shù)據(jù)模型(NoSQL),不支持sql語句,也不支持索引;
2、一次只允許一個進程訪問一個特定的數(shù)據(jù)庫;
3、沒有內置的C/S架構,但開發(fā)者可以使用LevelDB庫自己封裝一個server;
更新日志
修正了格式,使其符合Google C++ Style Guide的要求。
特別導出Windows鏈接的WriteBatch::Handler內部類。
Merge pull request #665 from cheng-chang:coding.
Merge pull request #669 from pavel-pimenov:fix-readme-windows-mkdir.
Merge pull request #472 from zhoudayang:patch-1.
Merge pull request #339 from richcole-at-amazon:master.
用 CMake 構建恢復 soname 版本。
其他雜項清理、修復和改進。
寫操作流程:
1、順序寫入磁盤log文件;
2、寫入內存memtable(采用skiplist結構實現(xiàn));
3、寫入磁盤SST文件(sorted string table files),這步是數(shù)據(jù)歸檔的過程(永久化存儲);
注意:
log文件的作用是是用于系統(tǒng)崩潰恢復而不丟失數(shù)據(jù),假如沒有Log文件,因為寫入的記錄剛開始是保存在內存中的,此時如果系統(tǒng)崩潰,內存中的數(shù)據(jù)還沒有來得及Dump到磁盤,所以會丟失數(shù)據(jù);
在寫memtable時,如果其達到check point(滿員)的話,會將其改成immutable memtable(只讀),然后等待dump到磁盤SST文件中,此時也會生成新的memtable供寫入新數(shù)據(jù);
memtable和sst文件中的key都是有序的,log文件的key是無序的;
LevelDB刪除操作也是插入,只是標記Key為刪除狀態(tài),真正的刪除要到Compaction的時候才去做真正的操作;
LevelDB沒有更新接口,如果需要更新某個Key的值,只需要插入一條新紀錄即可;或者先刪除舊記錄,再插入也可;

發(fā)表評論(共0條評論)
請自覺遵守互聯(lián)網(wǎng)相關政策法規(guī),評論內容只代表網(wǎng)友觀點,發(fā)表審核后顯示!

版權聲明:

1 本站所有資源(含游戲)均是軟件作者、開發(fā)商投稿,任何涉及商業(yè)盈利目的均不得使用,否則產(chǎn)生的一切后果將由您自己承擔!

2 本站將不對任何資源負法律責任,所有資源請在下載后24小時內刪除。

3 若有關在線投稿、無法下載等問題,請與本站客服人員聯(lián)系。

4 如侵犯了您的版權、商標等,請立刻聯(lián)系我們并具體說明情況后,本站將盡快處理刪除,聯(lián)系QQ:2499894784

返回頂部