博客专栏  >  数据库   >  levelDB源码解析

levelDB源码解析

对levelDB进行源码级的剖析

关注
0 已关注
15篇博文
  • Block-levelDB源码解析

    类介绍 Block主要负责解析sstable文件中的block; 数据成员介绍 30 const char* data_; //对应整个block块数据 31 ...

    2014-01-06 06:55
    866
  • BlockBuilder-levelDB源码解析

    对象介绍 BlockBuilder主要负责构造sstable文件中的block; 首先看下block的数据结构:

    2013-12-29 17:48
    888
  • WriteBatch-levelDB源码解析

    【数据成员介绍】 rep_:格式如下图所示, 【方法成员介绍】

    2013-12-22 13:26
    1358
  • log format-levelDB源码解析

    基本概念: 逻辑记录:用户输入的key value,进行包装后,可以形成一条记录,我们把它称为逻辑记录; 物理记录:一条或多条物理记录组成一个逻辑记录。 block:一条逻辑记录,包含了一个或...

    2013-12-15 14:53
    934
  • log::Reader-levelDB源码解析

    要想理解reader,需要理解两个概念,即逻辑记录,物理记录,这个log format有讲 【数据成员介绍】 blocking_store_:read以block为单位去从磁盘取数据,取完数据就是...

    2013-12-15 14:52
    962
  • log::Writer-levelDB源码解析

    writer的工作就是将上层拼装好的数据,按照log format的格式,进行二次拼装,然后写进文件里面。 【数据成员介绍】 block_offset_:当前block的偏移位,通过它就能知道目...

    2013-12-15 14:50
    828
  • memtable-levelDB源码解析

    当写数据的时候,写完log,再写内存,内存指的就是这里的MemTable,整个MemTable是一个skip list结构; 【数据成员介绍】 arena_:一个管理内存的对象; compara...

    2013-12-15 14:49
    1034
  • VersionEdit-levelDB源码解析

    VersionEdit记录的是版本变化的增量。 【数据成员介绍】 compact_pointers_:这是一个vector,里面的每项是一个由level,internalkey组成的pair,也就...

    2013-12-15 14:44
    934
  • Version-levelDB源码解析

    【数据成员介绍】 compaction_level_:下一个需要做compact的层级; compaction_score_:比分,如果比分小于1,就代表没有那么紧急去需要做compact; 那...

    2013-12-15 14:44
    924
  • VersionSet-levelDB源码解析

    VersionSet的作用是记录各个版本,这些版本的组织形式是一个环形的双向链表。 【数据成员介绍】 compact_pointer_:记录每层下次做compact的开始的key;string型数...

    2013-12-15 14:43
    1330
  • varint-levelDB源码解析

    【什么是变长整型?】 大家知道,int整型一般是4个字节,那变长整型所需要的空间在1-5个字节之间,因为长度是不固定的,所以称之为变长整型。其特点就是只要数值小于2^21,那么就会节省空间。 【编...

    2013-12-13 11:54
    839
  • Status-levelDB源码解析

    //status封装了操作结果,当出错的时候,可以用来指明一个错误,还有对应的错误信息 //多线程下const方法可以在非外部同步的情况下调用,但是非const方法,一定要在外部同步的情况下调用...

    2013-12-13 11:53
    813
  • Slice-levelDB源码解析

    //slice是level中很基础的一个类型,是对key , value的封装,里面的数据成员很简单,只有两个,一个是const char* data_,size_t size_,所以它其实是key或...

    2013-12-13 11:52
    769
  • option-levelDB源码解析

    //控制数据库的行为 struct Options {     //比较器     //默认:lexicographic byte-wise ordering     c...

    2013-12-13 11:51
    812
  • undefined reference to `snappy::MaxCompressedLength(unsigned long)'

    ../pkg/leveldb-1.13.0/libleveldb.a(table_builder.o): In function `leveldb::TableBuilder::WriteBlock(...

    2013-12-13 11:48
    2614

img博客搬家
img撰写博客
img专家申请
img意见反馈
img返回顶部