| Crates.io | sochdb-storage |
| lib.rs | sochdb-storage |
| version | 0.4.3 |
| created_at | 2026-01-12 17:08:13.492983+00 |
| updated_at | 2026-01-23 20:32:46.703092+00 |
| description | SochDB storage engine (WAL, block store, compaction, sync-first I/O) |
| homepage | https://sochdb.dev |
| repository | https://github.com/sochdb/sochdb |
| max_upload_size | |
| id | 2038215 |
| size | 2,708,750 |
High-performance storage engine for SochDB with ACID transactions and crash recovery.
sochdb-storage provides the persistence layer for SochDB, featuring:
[dependencies]
sochdb-storage = "0.2.5"
Most users should use the high-level sochdb crate:
use sochdb::Database;
let db = Database::open("./my_data")?;
// Transactional writes
let txn = db.transaction()?;
txn.put("users/1", b"Alice")?;
txn.commit()?;
┌─────────────────────────────────────────┐
│ sochdb-storage │
├─────────────────────────────────────────┤
│ Transaction Layer (MVCC, Isolation) │
├─────────────────────────────────────────┤
│ WAL (Write-Ahead Log, Durability) │
├─────────────────────────────────────────┤
│ Page Cache (Buffer Pool, LRU) │
├─────────────────────────────────────────┤
│ Storage Engine (LSM-tree, Compaction) │
└─────────────────────────────────────────┘
| Operation | Throughput |
|---|---|
| Point reads | ~500K ops/sec |
| Sequential writes | ~200K ops/sec |
| Batch writes (1000) | ~2M ops/sec |
| Recovery time | <100ms for 1GB WAL |
| Crate | Purpose |
|---|---|
sochdb |
High-level client API (start here) |
sochdb-core |
Core types and traits |
sochdb-storage |
Storage engine (this crate) |
sochdb-index |
HNSW vector indexing |
sochdb-query |
Query planning and execution |
Apache-2.0 - see LICENSE for details.