![](https://img-blog.csdnimg.cn/20190927151124774.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
LevelDB & RocksDB
文章平均质量分 95
彻底吃透rocksdb源码
蓬莱道人
半路出家的研究僧
展开
-
LevelDb(四):LevelDb的Compaction操作
1. compaction介绍2. minor compaction3. major compaction1. compaction介绍 对于LevelDb来说,写入记录操作很简单,删除记录仅仅写入一个删除标记就算完事,但是读取记录比较复杂,需要在内存以及各个层级文件中依照新鲜程度依次查找,代价很高。为了加快读取速度,levelDb采取了compaction的方式来对已有的记录进行整理压缩,通过这种方式,来删除掉一些不再有效的KV数据,减小数据规模,减少文件数量等。levelDb的co..原创 2021-05-23 16:26:08 · 1456 阅读 · 0 评论 -
LevelDb(三):LevelDb各操作的实现
1. 打开数据库2. 写入一条数据3. 删除一条数据4. 读取一条数据 在LevelDb简介这篇博客中我们知道使用levelDB时,主要涉及到打开数据库、写入一条数据、删除一条数据、读取一条数据等操作,下面我们分别介绍各个操作的流程。1. 打开数据库 leveldb::DB* db; leveldb::Options opts; opts.create_if_missing = true; leveldb::Status status = lev..原创 2021-05-22 16:26:23 · 2305 阅读 · 0 评论 -
LevelDb(二):LevelDb整体架构
1. LevelDb组成2. Log文件3.MemTable和Immutable Memtable4.SSTable文件5.Manifest文件6.Current文件7. Others 7.1 Version 7.2VersionEdit 7.3VersionSet 7.4 Builder 7.5TableCache1. LevelDb组成 LevelDb作为存储系统,数据记录的存储介质包括内存以及磁盘文...原创 2021-05-22 12:30:18 · 5997 阅读 · 0 评论 -
LevelDb(一):LevelDb简介
1. leveldb简介2. hello world 2.1 leveldb源码下载和编译 2.2 hello world程序1. leveldb简介 LevelDb是google的工程师Jeff Dean和Sanjay Ghemawat这两位大神级别的工程师发起的开源项目,这两位是Google重量级的工程师,为数甚少的Google Fellow之二。Jeff Dean其人是Google大规模分布式平台Bigtable和MapReduce主要设计和实现者,Sanjay ...原创 2021-05-16 12:04:18 · 5698 阅读 · 2 评论