pub struct Params {
pub db_path: PathBuf,
pub max_memtable_size: usize,
pub num_levels: usize,
pub max_open_files: usize,
pub max_key_block_size: usize,
pub block_restart_interval: u32,
pub log_level_stats: Option<String>,
pub compaction_concurrency: usize,
pub seek_based_compaction: Option<u32>,
}
Expand description
Parameters to customize the creation of the database
Fields§
§db_path: PathBuf
Where in the filesystem should the database be stored?
max_memtable_size: usize
Maximum size of a memtable (keys+values), This indirectly also defines how large a value block can be
num_levels: usize
How many levels does this store have (default: 5)
max_open_files: usize
How many open files should be held in memory?
max_key_block_size: usize
Maximum number of entries in a key block
block_restart_interval: u32
How often should the full key be stored in a data block? Larger numbers result in smaller on-disk files, but seeks will be slower
log_level_stats: Option<String>
Write the size of each level to a csv file
compaction_concurrency: usize
How many concurrent compaction tasks should there be
seek_based_compaction: Option<u32>
How many seeks (per kb) before compaction is triggered?
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Params
impl RefUnwindSafe for Params
impl Send for Params
impl Sync for Params
impl Unpin for Params
impl UnwindSafe for Params
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more