Lance 格式参考
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_15292d5a/yjkj-lance-format。
技能介绍
要解决的问题
Lance 并不只是一个列式文件,而是由文件格式、表格式、索引格式、Catalog 与 Namespace Client 组成的一套规范。工程师查 schema、参数、proto 或约束时,容易把 lance、pylance、LanceDB 混在一起,也可能追错 beta 版本,导致编码、对象存储或 schema 行为不一致。这个技能用于把问题落到 lance-format/lance 的 v7 参考上。
技能如何工作
- 先区分 Lance 与 LanceDB:前者是格式与引擎,后者是构建在其上的数据库产品。
- 锁定
v7.2.0-beta.5,按 git tag 读取规范,而不是追main。 - 用
references/lance-reference.md定位具体章节:Crate 工作区、文件版本、表格式、Schema 演进、MemWAL、索引、对象存储、v7 变更等。 - 对 24 个 Rust crate 的职责做导航,例如
lance、lance-table、lance-file、lance-index、lance-namespace。 - 解释关键版本差异:
2.1是当前默认,2.2承载实验特性,2.3是 next 目标。
适用边界
- 本技能关注格式本身,不覆盖
LanceDB的 Cloud、SDK 或企业特性。 2.2与2.3均不稳定,编码可能随 beta 标签变化。- 参考资料中的
path:line会漂移,需要按对应 tag 重新核对。
使用场景
- 在 Rust 或 Python 工程中接入 `lance` 或 `pylance` 前,确认文件格式、数据版本与 crate 职责。
- 排查 `Dataset` 的嵌套类型、`FixedSizeList` 随机访问或 JSON 字段行为时,按 v7 章节定位规范。
- 设计向量、标量或全文索引前,比较 IVF、HNSW、BTree、BM25 等索引能力与限制。
- 升级 `lance` beta 标签时,核对 v7 变更、`MemWAL`、事务操作与 `path:line` 引用是否漂移。
适合人员
- 构建多模态数据管道的 Rust/Python 工程师,想确认 `Lance` 格式版本、数据类型与 schema 演进约束。
- 维护 DuckDB、Polars、DataFusion 或 Ray 读取 `Lance` 的数据平台工程师,想核对对象存储、事务与并发行为。
- 设计向量检索或全文检索索引的算法工程师,想比较 IVF、HNSW、BM25 与标量索引的能力边界。
- 编写 `Lance` 文档或排查升级问题的数据库内核工程师,想查 crate 职责、v7 变更与 source map。