源碼分析質的飛躍之MemTable
源碼版本【1.23】
代碼位置【db/memtable】【db/memtable.cc】
0.導語
在前面已經分析過很多重要的源碼,例如:跳表、切片等等,在跳表中最小元素是Node,存儲單個元素,而leveldb是一個單機的{key, value}資料庫,那麼這種kv資料如何通過Node存儲到跳表中呢?如果通過比較資料來實作查找功能?跳表上層是誰來傳遞呢?
這一節下來,讓大家對前面所有的源碼分析有個質的飛躍,因為這一節是對前面所有源碼的綜合使用。
看完之後大家會覺得簡直碉堡了的感覺~
1.MemTable
使用leveldb寫入的資料,在處理時為了加快查找性能,部分資料會在記憶體中也存儲一份,該部分存儲的結構便是MemTable。