Crate oxifaster

Crate oxifaster 

Source
Expand description

oxifaster - A high-performance concurrent key-value store and log engine

This is a Rust port of Microsoft’s FASTER project, providing:

  • FASTER KV: A concurrent key-value store supporting data larger than memory
  • FASTER Log: A high-performance persistent recoverable log

§Features

  • High-performance concurrent operations with epoch-based memory reclamation
  • Hybrid log architecture (in-memory + disk)
  • Non-blocking checkpointing and recovery
  • Async I/O with Tokio runtime

§Quick Start

use oxifaster::{FasterKv, Status};

// Create a new store
let store = FasterKv::new(config)?;

// Start a session
let session = store.start_session();

// Perform operations
session.upsert(key, value).await?;
let result = session.read(key).await?;

Re-exports§

pub use address::Address;
pub use address::AtomicAddress;
pub use record::Record;
pub use record::RecordInfo;
pub use status::OperationStatus;
pub use status::Status;

Modules§

address
Address types for FASTER’s hybrid log
allocator
Memory allocators for FASTER
checkpoint
Checkpoint and recovery for FASTER
constants
Constants used throughout the library
device
Storage device abstraction for FASTER
epoch
Epoch-based memory reclamation for FASTER
index
Hash index for FASTER
log
FASTER Log implementation
prelude
Prelude module for common imports
record
Record structures for FASTER’s hybrid log
size
Utility for size literals (e.g., 1_GiB)
status
Status codes and operation results for FASTER operations
store
FasterKV key-value store implementation