Skip to main content

Crate engramdb_io

Crate engramdb_io 

Source
Expand description

engramdb-io:分层读取、批量 badge gather、预取计划。

M1 范围:Warm+冷路径(OS 页缓存 + 分片文件 pread),带排序去重的批式 badge 读取, 多线程池化;T3 NVMe 专用 io_uring 后端留 M1.5(Linux)替换 pread 后端,接口不变。

Re-exports§

pub use backend::default_backend;
pub use backend::IoBackend;
pub use backend::PreadvBackend;
pub use batch::BadgeGather;
pub use batch::PrefetchPlan;
pub use planner::StreamingPlanner;
pub use tiers::TierManager;
pub use view::build_view;
pub use view::build_view_from_keys;
pub use view::build_view_from_keys_file;
pub use view::verify_view;
pub use view::ViewBuilder;
pub use view::ViewReader;

Modules§

backend
IO 后端抽象:同一 badge 读路径可插拔为「同步 preadv(mac/通用)」或 「io_uring(Linux,M1.5)」。上层(BadgeGather)只依赖 IoBackend
batch
批式 badge 读取:排序去重 + 预取计划 + 多线程 gather。
planner
流式预取规划器(M1.5 首交付):连续的 token rowid 流 → 增量 badge 读取计划。
tiers
分层管理(M1 简单版):频率驱动热集 + 预算;T1=RAM 显式驻留,T2=OS 页缓存,T3=显式 IO。
view
Store-P 物化视图(P4):构建器 + 视图读写/基准/延迟原语。