leveldb使用及源码分析
对java版leveldb存储引擎进行基本操作和深层次的源码分析
叶长风
会scala和python的程序员
展开
-
Leveldb数据Compaction源码分析(1)
Leveldb数据Compaction源码分析(1)这一节来讲Leveldb的数据压缩过程,上一节讲了Leveldb的数据寻找过程,文章地址为:但是最后在讲Leveldb中的Leveln的层级寻找时,我想应该是有没有看懂的,直接二分法找到sstable,然后加载缓存就能找到文件,看源码或许有些疑惑,但是这个是和Leveldb的数据压缩过程是有关的,这节就来讲Leveldb的数据压缩过程。...原创 2018-07-31 10:06:52 · 942 阅读 · 2 评论 -
Leveldb读取数据源码分析
Leveldb读取数据源码分析上一篇文章讲了Snapshot源码,在这一篇文章中原本是要讲version、versionSet这些,但是想想还是从Leveldb的读取和存储开始讲起,Leveldb的存储比较简单,主要麻烦的还是读取这一块,需要判断从memTable、memTable、level0、level层级中分开寻找,如果从上一级中找到了数据,那么下一级就不再继续寻找了,因此寻找要麻烦许多...原创 2018-07-30 07:53:43 · 1086 阅读 · 0 评论 -
level Snapshot源码分析
# level Snapshot源码分析上一篇文章中讲了WriteBatch,这一篇文章中开始讲快照Snapshot,Snapshot在文章中 leveldb中WriteBatch、Snapshot使用中讲过使用方法,这里面就不再继续讲用法了,这一节结合着之前写的Demo来讲源码。Snapshot源码之前写的demo为:private final File data...原创 2018-07-25 07:29:49 · 495 阅读 · 0 评论 -
levelDB WriteBatch源码解析
levelDB WriteBatch源码解析上一篇文章中讲了leveldb中WriteBatch、Snapshot使用,但是leveldb毕竟只是一个基础的存储引擎,没有太多的特性或者api使用可以讲,因此便直接从源码上开始,我这就从WriteBatch开始吧。有一些遗漏的以后补充进来,以后再慢慢进行整理。WriteBatch源码我们先看下WriteBatch,Writebat...原创 2018-07-23 08:04:20 · 732 阅读 · 0 评论 -
leveldb中WriteBatch、Snapshot使用
leveldb中WriteBatch、Snapshot使用上一节中仅仅做了一个leveldb的介绍,以及简单的put、get、del的使用,没有对leveldb的一些深入的特性进行讲解,算得上只是一个入门罢了,知道什么是leveldb,而作为一个基础的存储引擎,本身没有太多的特性其实也是正常的,如果想要在生产环境使用一个类似的存储,其实还是更推荐使用mapdb,有着相当丰富的特性供以使用,我有...原创 2018-04-08 07:56:28 · 2826 阅读 · 2 评论 -
leveldb入门
leveldb入门leveldb简介以前在大学的时候偶尔了解过leveldb,当时只是知道leveldb是一个存取性能极强的存储引擎,非常适合于顺序存储,当时时间不多,有很多其他的需要去学习,另外也没没有用到,因此一直没有了解过,最近有一些功夫突然再次看到了leveldb,想接触一下,然后发现这个是C++编写的,原生不支持java,但是有一个开发者照着C++的源码编写了一个java版,...原创 2018-04-03 08:02:10 · 2976 阅读 · 0 评论