• F
    Improve point-lookup performance using a data block hash index (#4174) · 19ec44fd
    Fenggang Wu 提交于
    Summary:
    Add hash index support to data blocks, which helps to reduce the CPU utilization of point-lookup operations. This feature is backward compatible with the data block created without the hash index. It is disabled by default unless `BlockBasedTableOptions::data_block_index_type` is set to `data_block_index_type = kDataBlockBinaryAndHash.`
    
    The DB size would be bigger with the hash index option as a hash table is added at the end of each data block. If the hash utilization ratio is 1:1, the space overhead is one byte per key. The hash table utilization ratio is adjustable using `BlockBasedTableOptions::data_block_hash_table_util_ratio`. A lower utilization ratio will improve more on the point-lookup efficiency, but take more space too.
    Pull Request resolved: https://github.com/facebook/rocksdb/pull/4174
    
    Differential Revision: D8965914
    
    Pulled By: fgwu
    
    fbshipit-source-id: 1c6bae5d1fc39c80282d8890a72e9e67bc247198
    19ec44fd
TARGETS 27.0 KB