0bb8ea56be
Summary: Introduce TableOptions section and support BlockBasedTable in RocksDB options file. A TableOptions section has the following format: [TableOptions/<FactoryClassName> "<ColumnFamily Name>"] which includes information about its TableFactory class and belonging column family. Below is an example TableOptions section of a BlockBasedTableOptions that belongs to the default column family: [TableOptions/BlockBasedTable "default"] format_version=0 whole_key_filtering=true block_size_deviation=10 block_size=4096 block_restart_interval=16 filter_policy=nullptr no_block_cache=false checksum=kCRC32c cache_index_and_filter_blocks=false index_type=kBinarySearch hash_index_allow_collision=true flush_block_policy_factory=FlushBlockBySizePolicyFactory Currently, Cache-type options (i.e., block_cache and block_cache_compressed) are not supported. Test Plan: options_test Reviewers: igor, anthony, IslamAbdelRahman, sdong Reviewed By: sdong Subscribers: dhruba, leveldb Differential Revision: https://reviews.facebook.net/D48435
196 lines
6.1 KiB
INI
196 lines
6.1 KiB
INI
# This is a RocksDB option file.
|
|
#
|
|
# A typical RocksDB options file has three sections, which are
|
|
# Version, DBOptions, and more than one CFOptions. The RocksDB
|
|
# options file in general follows the basic INI file format
|
|
# with the following extensions / modifications:
|
|
#
|
|
# * Escaped characters
|
|
# We escaped the following characters:
|
|
# - \n -- line feed - new line
|
|
# - \r -- carriage return
|
|
# - \\ -- backslash \
|
|
# - \: -- colon symbol :
|
|
# - \# -- hash tag #
|
|
# * Comments
|
|
# We support # style comments. Comments can appear at the ending
|
|
# part of a line.
|
|
# * Statements
|
|
# A statement is of the form option_name = value.
|
|
# Each statement contains a '=', where extra white-spaces
|
|
# are supported. However, we don't support multi-lined statement.
|
|
# Furthermore, each line can only contain at most one statement.
|
|
# * Section
|
|
# Sections are of the form [SecitonTitle "SectionArgument"],
|
|
# where section argument is optional.
|
|
# * List
|
|
# We use colon-separated string to represent a list.
|
|
# For instance, n1:n2:n3:n4 is a list containing four values.
|
|
#
|
|
# Below is an example of a RocksDB options file:
|
|
[Version]
|
|
rocksdb_version=4.0.0
|
|
options_file_version=1.1
|
|
|
|
[DBOptions]
|
|
stats_dump_period_sec=600
|
|
max_manifest_file_size=18446744073709551615
|
|
bytes_per_sync=0
|
|
delayed_write_rate=1048576
|
|
WAL_ttl_seconds=0
|
|
WAL_size_limit_MB=0
|
|
max_subcompactions=1
|
|
wal_dir=
|
|
wal_bytes_per_sync=0
|
|
db_write_buffer_size=0
|
|
max_total_wal_size=0
|
|
skip_stats_update_on_db_open=false
|
|
max_open_files=5000
|
|
max_file_opening_threads=1
|
|
use_fsync=false
|
|
max_background_compactions=1
|
|
manifest_preallocation_size=4194304
|
|
max_background_flushes=1
|
|
is_fd_close_on_exec=true
|
|
create_if_missing=false
|
|
use_adaptive_mutex=false
|
|
enable_thread_tracking=false
|
|
disableDataSync=false
|
|
max_log_file_size=0
|
|
advise_random_on_open=true
|
|
create_missing_column_families=false
|
|
keep_log_file_num=1000
|
|
table_cache_numshardbits=4
|
|
error_if_exists=false
|
|
skip_log_error_on_recovery=false
|
|
allow_os_buffer=true
|
|
allow_mmap_reads=false
|
|
paranoid_checks=true
|
|
delete_obsolete_files_period_micros=21600000000
|
|
disable_data_sync=false
|
|
log_file_time_to_roll=0
|
|
compaction_readahead_size=0
|
|
db_log_dir=
|
|
new_table_reader_for_compaction_inputs=false
|
|
allow_mmap_writes=false
|
|
|
|
[CFOptions "default"]
|
|
compaction_style=kCompactionStyleLevel
|
|
compaction_filter=nullptr
|
|
num_levels=7
|
|
table_factory=BlockBasedTable
|
|
comparator=leveldb.BytewiseComparator
|
|
max_sequential_skip_in_iterations=8
|
|
soft_rate_limit=0.000000
|
|
max_bytes_for_level_base=536870912
|
|
memtable_prefix_bloom_probes=6
|
|
memtable_prefix_bloom_bits=0
|
|
memtable_prefix_bloom_huge_page_tlb_size=0
|
|
max_successive_merges=0
|
|
arena_block_size=0
|
|
min_write_buffer_number_to_merge=2
|
|
target_file_size_multiplier=1
|
|
source_compaction_factor=1
|
|
max_bytes_for_level_multiplier=10
|
|
compaction_filter_factory=nullptr
|
|
max_write_buffer_number=6
|
|
level0_stop_writes_trigger=24
|
|
compression=kSnappyCompression
|
|
level0_file_num_compaction_trigger=2
|
|
purge_redundant_kvs_while_flush=true
|
|
max_write_buffer_number_to_maintain=0
|
|
memtable_factory=SkipListFactory
|
|
max_grandparent_overlap_factor=10
|
|
expanded_compaction_factor=25
|
|
hard_pending_compaction_bytes_limit=0
|
|
inplace_update_num_locks=10000
|
|
level_compaction_dynamic_level_bytes=false
|
|
level0_slowdown_writes_trigger=20
|
|
filter_deletes=false
|
|
verify_checksums_in_compaction=true
|
|
min_partial_merge_operands=2
|
|
paranoid_file_checks=false
|
|
target_file_size_base=67108864
|
|
optimize_filters_for_hits=false
|
|
merge_operator=nullptr
|
|
compression_per_level=kNoCompression:kNoCompression:kSnappyCompression:kSnappyCompression:kSnappyCompression:kSnappyCompression:kSnappyCompression
|
|
compaction_measure_io_stats=false
|
|
prefix_extractor=nullptr
|
|
bloom_locality=0
|
|
write_buffer_size=134217728
|
|
disable_auto_compactions=false
|
|
inplace_update_support=false
|
|
[TableOptions/BlockBasedTable "default"]
|
|
format_version=0
|
|
whole_key_filtering=true
|
|
block_size_deviation=10
|
|
block_size=4096
|
|
block_restart_interval=16
|
|
filter_policy=nullptr
|
|
no_block_cache=false
|
|
checksum=kCRC32c
|
|
cache_index_and_filter_blocks=false
|
|
index_type=kBinarySearch
|
|
hash_index_allow_collision=true
|
|
flush_block_policy_factory=FlushBlockBySizePolicyFactory
|
|
|
|
[CFOptions "universal"]
|
|
compaction_style=kCompactionStyleUniversal
|
|
compaction_filter=nullptr
|
|
num_levels=7
|
|
table_factory=BlockBasedTable
|
|
comparator=leveldb.BytewiseComparator
|
|
max_sequential_skip_in_iterations=8
|
|
soft_rate_limit=0.000000
|
|
max_bytes_for_level_base=10485760
|
|
memtable_prefix_bloom_probes=6
|
|
memtable_prefix_bloom_bits=0
|
|
memtable_prefix_bloom_huge_page_tlb_size=0
|
|
max_successive_merges=0
|
|
arena_block_size=0
|
|
min_write_buffer_number_to_merge=2
|
|
target_file_size_multiplier=1
|
|
source_compaction_factor=1
|
|
max_bytes_for_level_multiplier=10
|
|
compaction_filter_factory=nullptr
|
|
max_write_buffer_number=6
|
|
level0_stop_writes_trigger=24
|
|
compression=kSnappyCompression
|
|
level0_file_num_compaction_trigger=4
|
|
purge_redundant_kvs_while_flush=true
|
|
max_write_buffer_number_to_maintain=0
|
|
memtable_factory=SkipListFactory
|
|
max_grandparent_overlap_factor=10
|
|
expanded_compaction_factor=25
|
|
hard_pending_compaction_bytes_limit=0
|
|
inplace_update_num_locks=10000
|
|
level_compaction_dynamic_level_bytes=false
|
|
level0_slowdown_writes_trigger=20
|
|
filter_deletes=false
|
|
verify_checksums_in_compaction=true
|
|
min_partial_merge_operands=2
|
|
paranoid_file_checks=false
|
|
target_file_size_base=2097152
|
|
optimize_filters_for_hits=false
|
|
merge_operator=nullptr
|
|
compression_per_level=
|
|
compaction_measure_io_stats=false
|
|
prefix_extractor=nullptr
|
|
bloom_locality=0
|
|
write_buffer_size=134217728
|
|
disable_auto_compactions=false
|
|
inplace_update_support=false
|
|
[TableOptions/BlockBasedTable "universal"]
|
|
format_version=0
|
|
whole_key_filtering=true
|
|
block_size_deviation=10
|
|
block_size=4096
|
|
block_restart_interval=16
|
|
filter_policy=nullptr
|
|
no_block_cache=false
|
|
checksum=kCRC32c
|
|
cache_index_and_filter_blocks=false
|
|
index_type=kBinarySearch
|
|
hash_index_allow_collision=true
|
|
flush_block_policy_factory=FlushBlockBySizePolicyFactory
|