apiary-core
Core types, traits, and configuration for the Apiary distributed data processing framework.
Overview
apiary-core provides the foundational building blocks shared across all Apiary crates:
- Configuration —
NodeConfigwith automatic hardware detection (CPU cores, memory, disk) - Error handling — Unified
ApiaryErrortype andResult<T>alias - Registry types —
Hive,Box, andFrametypes representing the namespace hierarchy (database → schema → table) - Ledger types —
LedgerEntry,LedgerAction,WriteResult, andCellMetadatafor ACID transactions - Storage trait —
StorageBackendtrait defining the interface for all storage implementations - Typed identifiers —
HiveId,BoxId,FrameId,NodeId,TaskId, and other strongly-typed IDs
Usage
use ;
use ;
// Auto-detect node hardware
let config = detect;
println!;
The Beekeeping Metaphor
| Apiary Term | Database Equivalent | Description |
|---|---|---|
| Hive | Database | Top-level logical grouping |
| Box | Schema | Namespace within a hive |
| Frame | Table | Queryable dataset |
| Cell | Parquet file | Physical storage unit |
License
Apache License 2.0 — see LICENSE for details.
Part of the Apiary project.