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§

Modules§

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

Structs§

  • The result type for individual gets.
  • Fixed options to configure a RocksDBInstance. These are not tuning parameters, see the config modules for tuning. These are generally fixed within the binary.
  • The result type for multi_get.
  • The result type for multi_update.
  • An async wrapper around RocksDB.
  • Worker metrics about an instances usage of RocksDB. User-provided so the user can choose the labels.
  • Shared metrics about an instances usage of RocksDB. User-provided so the user can choose the labels.
  • 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.
  • 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§

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

Type Aliases§

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