Rocksdb读流程裁剪
PrefixesMayMatch 或者 KeysMayMatch BlockBasedTable::Get( 或BlockBasedTable::FullFilterKeyMayMatch 或者 rocksdb_filterpolicy_create_bloom_format
KeyMayMatch
FullFilterBlockReader::MayMatch
GetFilterBitsReader
FullFilterBitsReader
/Users/yaojingyi/Documents/workspace_kengine/k-engine-0.1-singleThread02/table/block_based/block_based_filter_block.cc
RocksDB Get 流程 - Iggie Wang's Cyberspace
------------------------------------------------------------------------------------
读流程 cache部分
DBIter::Seek
=>mergingiterator::Seek
=>LevelIterator::Seek
=>BlockBaseTableIteror::SeekImpl
=>BlockBaseTableIteror::InitDataBlock IndexBlockIter::Seek
=>BlockBaseTable::NewDataBlockIterator
=>BlockBasedTable:RetrieveBlock
=>BlockBasedTable::MaybeReadBlockAndLoadToCache
=>BlockBasedTable::GetDataBlockFromCache
=>BlockBasedTable::GetEntryFromCache
=>LRUCacheShard::Lookup
------------------------------------------------------------------------------------
读文件:
BlockBasedTable:RetrieveBlock前面和走cache一样
=>ReadBlockFromFile
=>BlockFetcher::ReadBlockContents
=>RandomAccessfileReader::Read | UncompressBlockContents