摘要:
class IteratorWrapper [功能] 对一个Iterator进行封装, 增加一个私有的Update方法将key值缓存到key_字段, 每次进行切换节点的操作都会提前Update, 这样每次调用key方法都不需要调用iterator的key方法. 如果需要频繁查看同一个节点的key值, 阅读全文
posted @ 2021-08-20 17:47
懒懒&
阅读(38)
评论(0)
推荐(0)
摘要:
class FilterBlockBuilder [功能] class FilterBlockBuilder使用FilterPolicy生成对应的过滤算法块. filter block为table的所有数据块提供一个基于FilterPolicy的过滤器集filters, 数据块的偏移量offset决 阅读全文
posted @ 2021-08-20 17:46
懒懒&
阅读(43)
评论(0)
推荐(0)
摘要:
class BlockHandle [功能] 表示一个内部指针, 保存着一个block的偏移量和大小. class Footer [功能] 表示脚注, 保存着数据索引块和元数据索引块的BlockHandle. class BlockContents [功能] 封装一个数据块, 并且使用cachabl 阅读全文
posted @ 2021-08-20 17:46
懒懒&
阅读(36)
评论(0)
推荐(0)
摘要:
leveldb 文件格式 <文件开头> [数据块 1] [数据块 2] ... [数据块 N] [元数据块 1] ... [元数据块 K] [元数据索引块] [数据索引块] [脚注] (固定大小; 偏移量为文件大小减去脚注大小) <文件结束> 文件包含内部的指针. 每个指针可以用BlockHandl 阅读全文
posted @ 2021-08-20 16:18
懒懒&
阅读(50)
评论(0)
推荐(0)
摘要:
class Block [功能] class Block提供对BlockBuilder生成的数据块的读取操作. 设计模式为典型的迭代器模式, 通过内部的class Block::Iter来访问Block class Block::Iter : public Iterator [功能] 实现通用的It 阅读全文
posted @ 2021-08-20 15:31
懒懒&
阅读(38)
评论(0)
推荐(0)
摘要:
class BlockBuilder [功能] class BlockBuilder生成prefix-compressed key的数据块, 输出为一个 Slice 每个key-value块的存储格式为: form data type shared_bytes of key: varint32 un 阅读全文
posted @ 2021-08-20 11:37
懒懒&
阅读(95)
评论(0)
推荐(0)
摘要:
专栏不会有详细的源码解析,只会有源码的详细功能介绍与设计分析,源码的话还是要自己看比较好。 阅读全文
posted @ 2021-08-20 11:30
懒懒&
阅读(25)
评论(0)
推荐(0)

浙公网安备 33010602011771号