Module Rocksdb.Options

module Filter_policy : sig ... end
module Cache : sig ... end
module Tables : sig ... end
module Write_options : sig ... end

Write options

module Flush_options : sig ... end

Flush options

module Read_options : sig ... end

Read options

type config = {
parallelism_level : int option;

Number of background processes used by RocksDB

base_compression : [ `Bz2 | `Lz4 | `Lz4hc | `No_compression | `Snappy | `Zlib ];

Compression algorithm used to compact data at base level

compression_by_level : [ `Bz2 | `Lz4 | `Lz4hc | `No_compression | `Snappy | `Zlib ] list;

Compression algorithm used to compact data in order for each level

optimize_filters_for_hits : bool option;
disable_compaction : bool;

Disable compaction: data will not be compressed, but manual compaction can still be issued

max_flush_processes : int option;

Number of background workers dedicated to flush

compaction_trigger : int option;

Maximum size for a file in level0 to wait for initiating compaction

slowdown_writes_trigger : int option;

TODO

stop_writes_trigger : int option;

TODO

memtable_representation : [ `Vector ] option;
num_levels : int option;
write_buffer_size : int option;
max_write_buffer_number : int option;
min_write_buffer_number_to_merge : int option;
target_base_file_size : int option;
max_bytes_for_level_base : int option;
max_bytes_for_level_multiplier : float option;
table_format : Tables.format option;
max_open_files : int option;
create_if_missing : bool;
filter_policy : Filter_policy.t option;
cache_index_and_filter_blocks : bool;
block_cache : Cache.t option;
trace_perf : bool;
bulk_load : bool;
}

RocksDB main configuration record

val default : config

default configuration, only compression is set to `Snappy, everything else is None (RocksDB defaults will apply)