Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

RocksDB optimization #209

Closed
ShooterIT opened this issue Mar 23, 2021 · 2 comments · Fixed by #395
Closed

RocksDB optimization #209

ShooterIT opened this issue Mar 23, 2021 · 2 comments · Fixed by #395
Assignees

Comments

@ShooterIT
Copy link
Member

ShooterIT commented Mar 23, 2021

Compression type

  • Support multiple compression types

Parameters

  • enable enable_pipelined_write if having more CPUs
  • use index_type: kTwoLevelIndexSearch to make index and filter blocks smaller
  • enable pin_top_level_index_and_filter, pin_l0_filter_and_index_blocks_in_cache
  • for cache_index_and_filter_blocks_with_high_priority, to avoid too high
  • NewBloomFilterPolicy(bits_per_key, false) i.e. BloomFilterPolicy::kAutoBloom
  • data_block_index_type: BlockBasedTableOptions::kDataBlockBinaryAndHash
  • Set BlockBasedTableOptions::optimize_filters_for_memory to true, jemalloc_usable_size is safe if no bugs, redis adopts it
  • memtable_prefix_bloom_size_ratio and memtable_whole_key_filtering, to enable memtable filter.
  • CompressionOptions::max_dict_bytes for lz4 and zstd

Data partition by ColumnFamily

  • One type one ColumnFamily
@ShooterIT ShooterIT self-assigned this Mar 23, 2021
@dongdongwcpp
Copy link
Contributor

memtable_prefix_bloom_size_ratio seems need a prefix_extractor, can it work for redis like system?

@ShooterIT
Copy link
Member Author

@dongdongwcpp you mean we should set prefix_extractor if we want to enable memtable_prefix_bloom_size_ratio?
i think in redis system, there are many lookup reads, so i want to enable this feature, make sense? WDYT?

@ShooterIT ShooterIT linked a pull request Nov 19, 2021 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants