Crate velocidb

Crate velocidb 

Source
Expand description

§VelociDB

VelociDB is a high-performance, embedded database engine written in Rust. It features a modern architecture designed for NVMe storage and multi-core systems.

§Key Features

  • MVCC: Multi-Version Concurrency Control for non-blocking reads.
  • Async I/O: Built on tokio and io_uring (on Linux) for high throughput.
  • SIMD Acceleration: Vectorized execution for query processing.
  • Persistent Memory: Direct Access (DAX) support for PMEM.

§Quick Start

use velocidb::Database;

// Open a database (creates it if it doesn't exist)
let db = Database::open("my_database.db")?;

// Create a table
db.execute("CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)")?;

// Insert data
db.execute("INSERT INTO users VALUES (1, 'Alice', 30)")?;
db.execute("INSERT INTO users VALUES (2, 'Bob', 25)")?;

// Query data
let results = db.query("SELECT * FROM users WHERE age > 25")?;

for row in results.rows {
    println!("Found user: {:?}", row.values);
}

Re-exports§

pub use storage::Database;
pub use types::QueryResult;
pub use types::Value;
pub use types::Row;
pub use types::Column;
pub use mvcc::MvccManager;
pub use mvcc::Snapshot;
pub use mvcc::VersionedRecord;
pub use async_io::AsyncPager;
pub use async_io::AsyncVfs;
pub use async_io::TokioVfs;
pub use async_io::BatchIoExecutor;
pub use lockfree::LockFreePageCache;
pub use lockfree::LockFreeIoQueue;
pub use lockfree::LockFreeCounter;
pub use simd::VectorBatch;
pub use simd::VectorizedFilter;
pub use simd::VectorizedAggregation;
pub use btree_optimized::CacheOptimizedNode;
pub use btree_optimized::CachePrefetcher;
pub use crdt::CrdtStore;
pub use crdt::CrdtOperation;
pub use crdt::SyncProtocol;
pub use cloud_vfs::CloudVfs;
pub use cloud_vfs::CloudVfsConfig;
pub use hybrid_storage::HybridTable;
pub use hybrid_storage::StorageLayout;
pub use hybrid_storage::ColumnStorage;
pub use pmem::DaxVfs;
pub use pmem::PmemTransactionLog;

Modules§

async_io
btree
btree_optimized
cloud_vfs
crdt
executor
hybrid_storage
lockfree
mvcc
parser
pmem
simd
storage
transaction
types