文件大小:
軟件介紹
LevelDB數(shù)據(jù)庫(kù)是Google編寫的一個(gè)快速鍵值存儲(chǔ)庫(kù),LevelDB應(yīng)用了LSM (Log Structured Merge) 策略,lsm_tree對(duì)索引變更進(jìn)行延遲及批量處理,它提供了從字符串鍵到字符串值的有序映射,調(diào)用者可以提供一個(gè)自定義比較函數(shù)來(lái)覆蓋排序順序。
功能介紹
鍵和值是任意的字節(jié)數(shù)組。
數(shù)據(jù)是按鍵排序存儲(chǔ)的。
調(diào)用者可以提供一個(gè)自定義比較函數(shù)來(lái)覆蓋排序順序。
基本的操作是Put(key,value)、Get(key)、Delete(key)。
在一個(gè)原子批中可以進(jìn)行多次修改。
用戶可以創(chuàng)建瞬時(shí)快照,以獲得數(shù)據(jù)的一致視圖。
在數(shù)據(jù)上支持向前和向后迭代。
使用Snappy壓縮庫(kù)對(duì)數(shù)據(jù)進(jìn)行自動(dòng)壓縮。
外部活動(dòng)(文件系統(tǒng)操作等)通過(guò)虛擬接口中轉(zhuǎn),因此用戶可以自定義操作系統(tǒng)的交互。
LevelDB的特點(diǎn)和限制如下:
特點(diǎn):
1、key和value都是任意長(zhǎng)度的字節(jié)數(shù)組;
2、entry(即一條K-V記錄)默認(rèn)是按照key的字典順序存儲(chǔ)的,當(dāng)然開發(fā)者也可以重載這個(gè)排序函數(shù);
3、提供的基本操作接口:Put()、Delete()、Get()、Batch();
4、支持批量操作以原子操作進(jìn)行;
5、可以創(chuàng)建數(shù)據(jù)全景的snapshot(快照),并允許在快照中查找數(shù)據(jù);
6、可以通過(guò)前向(或后向)迭代器遍歷數(shù)據(jù)(迭代器會(huì)隱含的創(chuàng)建一個(gè)snapshot);
7、自動(dòng)使用Snappy壓縮數(shù)據(jù);
8、可移植性;
限制:
1、非關(guān)系型數(shù)據(jù)模型(NoSQL),不支持sql語(yǔ)句,也不支持索引;
2、一次只允許一個(gè)進(jìn)程訪問一個(gè)特定的數(shù)據(jù)庫(kù);
3、沒有內(nèi)置的C/S架構(gòu),但開發(fā)者可以使用LevelDB庫(kù)自己封裝一個(gè)server;
更新日志
修正了格式,使其符合Google C++ Style Guide的要求。
特別導(dǎo)出Windows鏈接的WriteBatch::Handler內(nèi)部類。
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 構(gòu)建恢復(fù) soname 版本。
其他雜項(xiàng)清理、修復(fù)和改進(jìn)。
寫操作流程:
1、順序?qū)懭氪疟Plog文件;
2、寫入內(nèi)存memtable(采用skiplist結(jié)構(gòu)實(shí)現(xiàn));
3、寫入磁盤SST文件(sorted string table files),這步是數(shù)據(jù)歸檔的過(guò)程(永久化存儲(chǔ));
注意:
log文件的作用是是用于系統(tǒng)崩潰恢復(fù)而不丟失數(shù)據(jù),假如沒有Log文件,因?yàn)閷懭氲挠涗泟傞_始是保存在內(nèi)存中的,此時(shí)如果系統(tǒng)崩潰,內(nèi)存中的數(shù)據(jù)還沒有來(lái)得及Dump到磁盤,所以會(huì)丟失數(shù)據(jù);
在寫memtable時(shí),如果其達(dá)到check point(滿員)的話,會(huì)將其改成immutable memtable(只讀),然后等待dump到磁盤SST文件中,此時(shí)也會(huì)生成新的memtable供寫入新數(shù)據(jù);
memtable和sst文件中的key都是有序的,log文件的key是無(wú)序的;
LevelDB刪除操作也是插入,只是標(biāo)記Key為刪除狀態(tài),真正的刪除要到Compaction的時(shí)候才去做真正的操作;
LevelDB沒有更新接口,如果需要更新某個(gè)Key的值,只需要插入一條新紀(jì)錄即可;或者先刪除舊記錄,再插入也可;
版權(quán)聲明:
1 本站所有資源(含游戲)均是軟件作者、開發(fā)商投稿,任何涉及商業(yè)盈利目的均不得使用,否則產(chǎn)生的一切后果將由您自己承擔(dān)!
2 本站將不對(duì)任何資源負(fù)法律責(zé)任,所有資源請(qǐng)?jiān)谙螺d后24小時(shí)內(nèi)刪除。
3 若有關(guān)在線投稿、無(wú)法下載等問題,請(qǐng)與本站客服人員聯(lián)系。
4 如侵犯了您的版權(quán)、商標(biāo)等,請(qǐng)立刻聯(lián)系我們并具體說(shuō)明情況后,本站將盡快處理刪除,聯(lián)系QQ:2499894784
- 千億體育手機(jī)版本v2.0.1 安卓版
- tplink物聯(lián)電腦版(原tplink安防) v2.12.17.
- Sandboxie Plus v1.9.8 / v5.64.8 開源電腦
- 字魂100號(hào)方方先鋒體字體包免費(fèi)版
- 奧維互動(dòng)地圖奧維地圖PC破解版VIP V9.0.6
- 蘭博對(duì)戰(zhàn)平臺(tái) V1.38.6 官方最新版 / 蘭博玩
- reWASD(Xbox One手柄映射工具) V6.0.1.5190
- mtool修改器 V2023.11 官方最新版 / mtool
- 115轉(zhuǎn)存助手ui優(yōu)化版腳本 V3.9.1 綠色免費(fèi)
- iSecure Center電腦客戶端 V1.5.0 官方版
- IE11瀏覽器(Internet Explorer 11) 11.0.9
- 谷歌地球(Google Earth) v7.3.6.9345
- rogabet notepad 2023-3-03
- 培訓(xùn)收費(fèi)打印專家 2.5.5
- 數(shù)據(jù)庫(kù)維護(hù)工具DBTOOL v1.0.0.1綠色中文版
- 超級(jí)Access密碼查看器 V1.50免費(fèi)破解版
- SQLite Expert Professional可視化SQL數(shù)據(jù)
- 貴鶴學(xué)生報(bào)名收費(fèi)管理系統(tǒng)數(shù)據(jù)庫(kù)自動(dòng)創(chuàng)建及
- Access database engine 2007 免費(fèi)中文版
- AccessDatabaseEngine_X64.exe 14.0.6119
點(diǎn)擊加載更多評(píng)論>>