Leveldb源码笔记之写入操作

插入一条K/V记录

持有Writer的线程进入Writers队列,细节如下:

MakeRoomForWrite的流程图:

记录会首先写入磁盘上的binlog,避免程序crash时内存数据丢失:

此处我们做了一个极度夸张的假设来做演示:两条记录的大小超出一个block的大小, 以至于被一切为三

K/V记录插入内存中的Memtable:

Comments