Skip to main content

Module memtable

Module memtable 

Source
Expand description

§chronix-memtable

High-performance concurrent memtable for the Chronix time-series database.

This crate provides the in-memory write buffer that sits between the WAL and on-disk segment files. Points are inserted into a lock-free concurrent skip list and can be scanned in sorted order. When the memtable reaches a configurable size threshold, it is frozen and flushed to a columnar segment file via crate::segment::SegmentWriter.

§Architecture

  • Memtable — Concurrent skip-list-backed write buffer
  • FlushController — Freeze-and-swap lifecycle management
  • ShardRouter — Time-shard routing for out-of-order writes

Re-exports§

pub use error::MemtableError;
pub use flush::FlushConfig;
pub use flush::FlushController;
pub use flush::FlushResult;
pub use interner::StringInterner;
pub use key::MemtableEntry;
pub use key::MemtableKey;
pub use memtable::Memtable;
pub use shard::ShardRouter;
pub use shard::ShardRouterConfig;

Modules§

error
Error types for the memtable crate.
flush
Memtable freeze-and-flush mechanism.
interner
Thread-safe string interner for memtable data deduplication.
key
Memtable key types for ordering entries in the skip list.
memtable
Concurrent memtable backed by a lock-free skip list.
shard
Time-shard routing for memtable writes.