
廖环宇 张仕华
本书详细剖析LevelDB从使用到设计实现的方方面面,读后可了解谷歌Bigtable数据库的设计精髓,逻辑上可分为两部分。第一部分着重讲解LevelDB的基础知识,主要内容如下。1)基本数据结构,这是理解后续内容的基础,也可以加深对比较器、迭代器等常见数据结构的理解。2)基本使用,如数据库打开、关闭以及基本的读写操作。3)总体架构与设计思想,读后可掌握LevelDB的整体情况与设计思路。4)公用基础类,读后可了解LevelDB中如何实现数值编码、内存管理以及文件读取等。第二部分着重讲解LevelDB各模块的实现细节,主要内容如下。1)Log模块的实现细节,以及如何通过Log进行崩溃恢复,并生成一个MemTable文件。2)MemTable模块的实现细节,以及MemTable超过内存阈值时如何生成一个SSTable文件。3)SSTable模块的实现细节。4)Compaction原理与多版本管理。
对着代码看效果应该更好,从整本书来看,合并部分讲到有点简单,但是还是推荐想深入了解leveldb的同学看看
没有任何深度,新手入门还行,跟博客一样简单易懂~
感觉像是网上的文章收集器,介绍的知识点倒是不少,挺全面的,但是每个点都不深入。只是简单罗列代码,然后机械的分析,设计背后的思考涉及太少了
快速浏览了一下,包含了一些基本介绍,但是不够深入,仅作为入门吧。
从源码上介绍了leveldb,各个模块讲解还是很清晰的。值得多读几遍
大的框架没有,关键设计/决策也没有,细枝末节的代码解读还是很多的
关键的系统架构和模块都提到了。 作为LevelDB的了解和源码入门读物还是不错的,更像是一个入门博客,不过写作的水平还是很高的。 提几个待改进点: - 开始的几个章节缺少了和其他数据系统在系统架构上的区别。 - 某些关键模块的设计思想写的较少 - 源码解析部分太少,基本上只有大概的流程。
适合快速了解,配合源码食用。需要自己再加入思考才能发挥价值
书中原文提到的读者受众,请大家自行甄别。 读者对象 数据库从业人员 应用开发人员 计算机相关专业学生 对数据库技术感兴趣的人员
这本书讲的挺好的,但是版本管理和compaction部分感觉有点简陋