leveldb介绍(一)
leveldb介绍
leveldb是google两位工程师开发的单机,轻量级,持久化,key-value 非关系型数据库库.
1.google leveldb project:
http://code.google.com/p/leveldb/
2.leveldb 实现原理
http://www.cnblogs.com/haippy/archive/2011/12/04/2276064.html
3. leveldb 实现解析
http://rdc.taobao.com/blog/cs/wp-content/plugins/leveldb%E5%AE%9E%E7%8E%B0%E8%A7%A3%E6%9E%90.pdf
————————————————————————————————————————————————————————————————
leveldb的整体架构:
1).静态角度: leveldb的文件
memtable->immutable->sstable
log, manifest, current
2).动态角度
memtable是内存中的数据结构,LevelDb的Memtable类只是一个接口类,真正的操作是通过背后的SkipList来做的,包括插入操作和读取操作等,所以Memtable的核心数据结构是一个SkipList。
写入和删除,更新,操作统一为一个逻辑---"插入".
leveldb 的读取数据。
memtable->immutable->leveldb
compaction 操作, 多路合并~~~
leveldb 中的cache~~