Skip to main content

Crate ember_core

Crate ember_core 

Source
Expand description

ember-core: the storage engine.

Owns the keyspace, data types, expiration, and memory management. Designed around a thread-per-core, shared-nothing architecture where each shard independently manages a partition of keys.

Re-exports§

pub use concurrent::ConcurrentFloatError;
pub use concurrent::ConcurrentKeyspace;
pub use concurrent::ConcurrentOpError;
pub use engine::Engine;
pub use engine::EngineConfig;
pub use error::ShardError;
pub use keyspace::EvictionPolicy;
pub use keyspace::IncrError;
pub use keyspace::IncrFloatError;
pub use keyspace::Keyspace;
pub use keyspace::KeyspaceStats;
pub use keyspace::RenameError;
pub use keyspace::ShardConfig;
pub use keyspace::TtlResult;
pub use keyspace::WriteError;
pub use keyspace::WrongType;
pub use keyspace::ZAddResult;
pub use shard::run_prepared;
pub use shard::PreparedShard;
pub use shard::ReplicationEvent;
pub use shard::ShardHandle;
pub use shard::ShardPersistenceConfig;
pub use shard::ShardRequest;
pub use shard::ShardResponse;
pub use types::Value;

Modules§

concurrent
Concurrent keyspace using DashMap for lock-free multi-threaded access.
dropper
Background value dropper for lazy free.
engine
The engine: coordinator for the sharded keyspace.
error
Error types for the core engine.
expiry
Active expiration via random sampling.
keyspace
The keyspace: Ember’s core key-value store.
memory
Memory tracking for the keyspace.
shard
Shard: an independent partition of the keyspace.
time
Compact monotonic time utilities.
types
Data type representations for stored values.