Skip to main content

Crate mz_rocksdb

Crate mz_rocksdb 

Source
Expand description

An async wrapper around RocksDB, that does IO on a separate thread.

This crate offers a limited API to communicate with RocksDB, to get the best performance possible (most importantly, by batching operations). Currently this API is only upsert, which replaces (or deletes) values for a set of keys, and returns the previous values.

Re-exports§

pub use config::RocksDBConfig;

Modules§

config
This module handles converting mz_rocksdb_types into rocksdb types.
defaults
The following are defaults (and default strings for LD parameters) for RocksDBTuningParameters.

Structs§

GetResult
The result type for individual gets.
InstanceOptions
Fixed options to configure a RocksDBInstance. These are not tuning parameters, see the config modules for tuning. These are generally fixed within the binary.
MultiGetResult
The result type for multi_get.
MultiUpdateResult
The result type for multi_update.
RocksDBInstance
An async wrapper around RocksDB.
RocksDBInstanceMetrics
Worker metrics about an instances usage of RocksDB. User-provided so the user can choose the labels.
RocksDBSharedMetrics
Shared metrics about an instances usage of RocksDB. User-provided so the user can choose the labels.
RocksDBTuningParameters
A set of parameters to tune RocksDB. This struct is plain-old-data, and is used to update RocksDBConfig, which contains some dynamic value for some parameters.
ValueIterator
An iterator over operand values to merge for a key in RocksDB. By convention the first value will be the existing value if it was present.

Enums§

Error
An error using this RocksDB wrapper.
KeyUpdate
The type of update to perform on a key.

Type Aliases§

StubMergeOperator
Helper type stub to satisfy generic bounds when initializing a InstanceOptions without a defined merge operator.