在leveldb中,为什么要有immutable memtable?

目的是:为了防止写入kv时被阻塞。 设想,如果没有immutable memtable,当memtable满了之后后台线程需要将memtable 立即flush到新建的sst中,在flush的过程中,新的KV记录是无法写入的,只能等待,就会造成新写入的KV记录被阻塞。 盗一个其他人的图如下: 延伸:在leveldb中只有两个memtable:memtable和immutable memtable;
相关文章
相关标签/搜索