rocksdb配置参数

折月煮酒 提交于 2020-01-27 12:13:11
配置参数: 参数含义 附加说明
[DBOptions]
new_table_reader_for_compaction_inputs=false
recycle_log_file_num=0
avoid_flush_during_shutdown=false
skip_stats_update_on_db_open=false
use_direct_io_for_flush_and_compaction=false
access_hint_on_compaction_start=NORMAL
allow_fallocate=true
fail_if_options_file_error=false
create_if_missing=false
max_manifest_file_size=18446744073709551615
write_thread_slow_yield_usec=3
delayed_write_rate=16777216
create_missing_column_families=false
error_if_exists=false
allow_concurrent_memtable_write=true
db_log_dir=
paranoid_checks=true
skip_log_error_on_recovery=false
compaction_readahead_size=0
allow_2pc=false
writable_file_max_buffer_size=1048576
enable_thread_tracking=false
delete_obsolete_files_period_micros=21600000000
random_access_max_buffer_size=1048576
allow_mmap_reads=false
allow_mmap_writes=false
use_adaptive_mutex=false
use_fsync=false
base_background_compactions=1
max_background_flushes=1
max_background_compactions=1
enable_write_thread_adaptive_yield=true
max_file_opening_threads=16
max_open_files=-1
table_cache_numshardbits=6
db_write_buffer_size=0
wal_bytes_per_sync=0
keep_log_file_num=1000
max_total_wal_size=0
log_file_time_to_roll=0
manifest_preallocation_size=4194304
is_fd_close_on_exec=true
max_log_file_size=0
write_thread_max_yield_usec=100
wal_dir=/var/lib/ceph/mon/ceph-node3/store.db
use_direct_reads=false
WAL_size_limit_MB=0
max_subcompactions=1
WAL_ttl_seconds=0
stats_dump_period_sec=600
wal_recovery_mode=kPointInTimeRecovery
advise_random_on_open=true
hik_compaction_delay_ms=0
info_log_level=INFO_LEVEL
bytes_per_sync=0
dump_malloc_stats=false
avoid_flush_during_recovery=false
[CFOptions “default”]
compaction_pri=kByCompensatedSize
compaction_filter_factory=nullptr
memtable_factory=SkipListFactory
bottommost_compression=kDisableCompressionOption
compression=kNoCompression
max_sequential_skip_in_iterations=8
max_bytes_for_level_multiplier_additional=1:1:1:1:1:1:1
compression_per_level= 使用这个选项来设置不同层的压缩风格 通常我们不压缩level 0 和level 1,值在更高的层压缩数据。你甚至可以再最高层设置最慢的压缩算法,在最底层设置更快的压缩算法(最高层为Lmax)。
max_bytes_for_level_multiplier=10.000000 从level1往后,每个level容量是前一个的多少倍
max_bytes_for_level_base=1384120320 level1的大小 建议和level0的大小接近
table_factory=BlockBasedTable
max_successive_merges=0
arena_block_size=4194304
merge_operator=
target_file_size_multiplier=1 每下一层的文件大小会是target_file_size_multiplier倍大于前一层 默认target_file_size_multiplier为1,所以每一层文件的大小都一样大
num_levels=7 level的层级,一般默认为7 这个值一般不进行修改,除非像层数大于7
min_write_buffer_number_to_merge=11 在 flush 到 level 0 之前,最少需要被 merge 的 memtable 个数 如果这个值是 2,那么当至少有两个 immutable 的 memtable 的时候,RocksDB 会将这两个 immutable memtable 先 merge, 在 flush 到 level 0。预先 merge 能减小需要写入的 key 的数据,譬如一个 key 在不同的 memtable 里面都有修改,那么我们可以 merge 成一次修改。但这个值太大了会影响读取性能, 因为 Get 会遍历所有的 memtable 来看这个 key 是否存在。
prefix_extractor=nullptr
bloom_locality=0
max_write_buffer_number=20 最大 memtable 的个数 如果 active memtable full 了,并且 active memtable 加上 immutable memtable 的个数已经到了这个阀值,RocksDB 就会停止后续的写入。通常这都是写入太快但是 flush 不及时造成的。
level0_stop_writes_trigger=36
level0_slowdown_writes_trigger=20
level0_file_num_compaction_trigger=4 当 level 0 的文件数据达到这个值的时候,就开始进行 level 0 到 level 1 的 compaction 通常 level 0 的大小就是 write_buffer_size(memtable的最大尺寸) * min_write_buffer_number_to_merge(最少需要被 merge 的 memtable个数) * level0_file_num_compaction_trigger
write_buffer_size=33554432 memtable 的最大 size 如果超过了这个值,RocksDB 就会将其变成 immutable memtable,并在使用另一个新的 memtable
memtable_huge_page_size=0
max_compaction_bytes=16777216000
hard_pending_compaction_bytes_limit=274877906944
target_file_size_base=671088640 level 1 SST 文件的 size
soft_pending_compaction_bytes_limit=68719476736
comparator=leveldb.BytewiseComparator
memtable_insert_with_hint_prefix_extractor=nullptr
force_consistency_checks=false
max_write_buffer_number_to_maintain=0
paranoid_file_checks=false
optimize_filters_for_hits=false
level_compaction_dynamic_level_bytes=false
purge_redundant_kvs_while_flush=true
inplace_update_support=false
compaction_style=kCompactionStyleLevel
compaction_filter=nullptr
disable_auto_compactions=false
inplace_update_num_locks=10000
memtable_prefix_bloom_size_ratio=0.000000
report_bg_io_stats=false
[TableOptions/BlockBasedTable “default”]
read_amp_bytes_per_bit=8589934592
format_version=2
whole_key_filtering=true
filter_policy=rocksdb.BuiltinBloomFilter
verify_compression=false
block_size_deviation=10
block_size=4096
partition_filters=false
checksum=kCRC32c
hash_index_allow_collision=true
index_block_restart_interval=1
block_restart_interval=16
no_block_cache=false
pin_l0_filter_and_index_blocks_in_cache=true
cache_index_and_filter_blocks_with_high_priority=true
metadata_block_size=4096
cache_index_and_filter_blocks=true
index_type=kBinarySearch
flush_block_policy_factory=FlushBlockBySizePolicyFactory
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!