系统介绍 Lance table 的设计和实现原理,重点关注 table layout、版本管理、数据演化、读写路径和索引机制。
这个仓库会尽量用普通工程师能理解的方式解释 Lance:先建立用户心智,再逐步深入到格式、事务、源码实现和性能取舍。
- 01. Table Layout:从磁盘布局理解 Lance 的增删改查
- 02. Lance Table 是什么:为什么 ML/AI 数据需要新的表格式
- 03. Read Path:一次 scan 如何从 manifest 走到 RecordBatch
- 04. Transaction 和 Versioning:每次写入如何生成新版本
- 05. Fragment、Row Address 和 Row ID 的关系
- 06. Schema Evolution / Data Evolution:加列为什么高效
- 07. Delete 和 Update:删除标记、行重写和点更新代价
- 08. Compaction / Optimize:为什么表需要维护
- 09. Index 体系:标量索引和向量索引如何挂到 table 上
- 10. Lance File Format:单个
.lance文件内部如何组织数据