Expand description
§DBX — High-Performance Embedded Database
DBX is a high-performance embedded database built on a 5-Tier Hybrid Storage architecture. Written in pure Rust, it leverages Apache Arrow and Parquet for columnar storage.
§Key Features
- 5-Tier Hybrid Storage: Delta → Cache → WOS → Index → ROS
- Apache Arrow-based: Columnar storage and vectorized operations
- SQL Support: SELECT, WHERE, JOIN, GROUP BY, ORDER BY
- ACID Transactions: Type-safe transactions using the Typestate pattern
- Performance Optimized: LRU Cache, Bloom Filter, SIMD vectorization
§Quick Start
§Basic Usage (CRUD)
use dbx_core::Database;
// Open database
let db = Database::open_in_memory()?;
// Insert data
db.insert("users", b"user:1", b"Alice")?;
// Get data
let value = db.get("users", b"user:1")?;
assert_eq!(value, Some(b"Alice".to_vec()));
// Delete data
db.delete("users", b"user:1")?;§Transactions
use dbx_core::Database;
let db = Database::open_in_memory()?;
// Begin transaction
let _tx = db.begin()?;
// Basic CRUD uses Database directly
db.insert("users", b"user:2", b"Bob")?;
// Transactions are used with Query Builder (Phase 6)§Architecture
§5-Tier Hybrid Storage
- Delta Store (DashMap) — In-memory write buffer, lock-free concurrency
- Cache (LRU) — Read cache for frequently accessed data
- WOS (sled) — Write-Optimized Store, persistent storage
- Index (Bloom Filter) — Fast existence checks
- ROS (Parquet) — Read-Optimized Store, columnar compression
§SQL Execution Pipeline
SQL String → Parser → AST → Planner → LogicalPlan
→ Optimizer → PhysicalPlan → Executor → RecordBatch§Module Structure
Re-exports§
pub use engine::Database;pub use engine::DurabilityLevel;pub use engine::SchemaBuilder;pub use error::DbxError;pub use error::DbxResult;
Modules§
- api
- API 모듈 — Fluent 스타일 API
- automation
- Automation & Extensibility Framework
- engine
- Database Engine Module
- error
- Error types for the DBX database engine.
- index
- Hash Index for fast key lookups
- logging
- Logging utilities for DBX
- sql
- storage
- Storage module — 5-Tier Hybrid Storage architecture.
- traits
- Database Traits — 기능별 역할 분리
- transaction
- wal
- Write-Ahead Logging (WAL) module for crash recovery.