Expand description
sst stands for sorted-string-table.
This crate provides an implementation of an SST and most common cursoring patterns necessary to create something like a log-structured merge tree out of SSTs.
Re-exports§
pub use log::LogBuilder;
pub use log::LogIterator;
pub use log::LogOptions;
pub use setsum::Setsum;
Modules§
- A block is the base unit of an SST. This module provides implementations of cursors and builders for blocks.
- Bounds cursor restricts a general cursor to be between some pair of keys.
- Management of open files. Intended to re-use open files and fail when too many files are open.
- This module implements a garbage-collecting cursor that compacts according to a garbage-collection policy.
- Tools for ingesting data into a directory.
- Lazy cursoring, so we can limit the number of files open at once.
- A log is an unordered table.
- A MergingCursor merges several cursors together.
- The primary point of the pruning cursor is to turn an in-memory skip-list into something that looks like a consistent cut of the data. Consequently, there nees to be more logic than just working on a static sst. Other cursors will assume a pruning cursor gets applied beneath them to create a cursor over an immutable data set.
- Reference types for comparing sst and block behavior.
- This file implements the split-block bloom-filter used by parquet: https://github.com/apache/parquet-format/blob/master/BloomFilter.md
- A Setsum type that’s more ergonomic for working with key-value pairs.
Structs§
- A memory-owning Key.
- A shallow, easy-to-copy reference to a key.
- A KeyValuePair is an owned version of a key-value pair.
- A KeyValueRef is an easy-to-copy version of a key-value pair.
- An Sst represents an immutable sorted string table.
- Build Ssts by providing keys in-order.
- A cursor over an Sst.
- Metadata about an Sst.
- Create an SstBuilder that will create numbered files of similar prefix and suffix.
- Options for working with Ssts.
Enums§
- An enum matching the types of compression supported.
- The sst Error type.
Constants§
- The maximum minimum file size.
- The maximum target block size.
- The maximum target file size.
- The minimum minimum file size.
- The minimum target block size.
- The minimum target file size.
- The default key is the zero key.
- The default timestamp is 0.
- The maximum size of a write batch, in bytes.
- The maximum key. This is eleven
0xff
bytes. - The maximum length of a key.
- The maximum length of a value.
- The zero key. This is the empty byte string.
- The recommended size of a table.
Traits§
- A Builder is a generic way of building a sorted (sst) or unsorted (log) string table.
- A Cursor allows for iterating through data.
- IO to Z.
Functions§
- Check that the key is of valid length, or return a descriptive error.
- Check that the table size is allowable, or return a descriptive error.
- Check that the value is of valid length, or return a descriptive error.
- Register this crate’s biometrics.
- Register this crate’s monitors.