BadgerDb 快速儲存的,固化的資料庫

2021-09-14 07:59:02 字數 1314 閱讀 7128

badgerdb是以key value形式存放在硬碟上,官網拿自己跟facebook的rocksdb 做對比,說自己支援ssd,rocksdb不支援。

對於儲存固然少不了 add,delete, update , search

從badgerdb程式設計來說

1. 開啟資料庫, 需要設在資料存放路徑

2. 操作 --  add, delete, update, search

}

db, err := badger.open(opts)
注意: open之後,目錄/tmp/badger會被鎖住,即其他程序open時會報錯.

2.操作: add,我們開乙個事物來處理

update := db.newtransaction(true) #讀寫事物

defer update.discard()

if err := update.set(byte("key"), byte("value"));err == nil

3.操作; delete 

txn := db.newtransaction(true)

defer txn.discard()

if err:=txn.delete(byte("key"));err == nil

4. 操作:get

gtxn := db.newtransaction(false) #唯讀事物

defer gtxn.discard()

if item, err := gtxn.get(byte("key"));err == nil

}

5.操作:遍歷整個資料

txn := db.newtransaction(false)

defer txn.discard()

iter := badger.defaultiteratoroptions

it := txn.newiterator(iter)

for it.rewind();it.valid(); it.next()

badger 還有其他的關於stream(需要使用openmanage), prefix(iterator: seek) 

跳出固化的認知

2015年4月6日早上,提高班舉辦家長座談會,家長自願參加 前一天也舉行了 但要求同學們都去參加,此時,出現了一種情況,很多學生由於家長要走,所以,紛紛向紀委請假送家長,結果,2個小時過去後,存在有很多請假人,沒有續請假,也沒有到會場。紀委條例規定,請假最長時間為2個小時。此現象出現後,公尺老師非常...

Android AnyPref快速儲存

1.首先在根目錄 allprojects 2.引入依賴 implementation com.github.nashlegend anypref 1.2.6 3.新建bean類 anypref要儲存的字段一定要宣告成public prefmodel usermessage public class ...

Linux基礎 固化命令的方式grep

配置檔案目錄 etc profile etc bashrc root bashrc root bash profile bin bash root使用者一登陸,給他提供什麼命令直譯器 grep 縮寫來自globally search a regular expression and print 是一...