本书详细剖析LevelDB从使用到设计实现的方方面面,读后可了解谷歌Bigtable数据库的设计精髓,逻辑上可分为两部分。 第一部分着重讲解LevelDB的基础知识,主要内容如下。 1)基本数据结构,这是理解后续内容的基础,也可以加深对比较器、迭代器等常见数据结构的理解。 2)基本使用,如数据库打开、关闭以及基本的读写操作。 3)总体架构与设计思想,读后可掌握LevelDB的整体情况与设计思路。 4)公用基础类,读后可了解LevelDB中如何实现数值编码、内存管理以及文件读取等。 第二部分着重讲解LevelDB各模块的实现细节,主要内容如下。 1)Log模块的实现细节,以及如何通过Log进行崩溃恢复,并生成一个MemTable文件。 2)MemTable模块的实现细节,以及MemTable超过内存阈值时如何生成一个SSTable文件。 3)SSTable模块的实现细节。 4)Compaction原理与多版本管理。