| 字段 | 类型 | 说明 |
|---|---|---|
| Arrow Schema — HNSW 子索引 | ||
| __vector_id | uint64 | 节点 ID |
| __neighbors | list<u32> | 邻居节点(多层) |
| _distance | list<f32> | 到邻居的距离 |
| Arrow Schema Metadata | ||
| lance:index | JSON | type, distance_type |
| lance:ivf | "1" | Global Buffer 引用 |
| Global Buffer — Protobuf | ||
| IVF.centroids_tensor | Tensor | [num_part, dim] 质心 |
| IVF.offsets | uint64[] | 各分区起始行号 |
| IVF.lengths | uint32[] | 各分区向量数量 |
| 量化方式 | 列结构 | 压缩 |
|---|---|---|
| FLAT | _rowid + flat[dim] | 1× 无损 |
| PQ | _rowid + __pq_code[m] | 8–32× 高压缩 |
| SQ | _rowid + __sq_code[dim] | 4× 中压缩 |
| RQ | _rowid + _rabit_codes[dim/8] + add_factors + scale_factors | 32× 极致 |
| Global Buffer | ||
| PQ 码本 | Tensor [256, m, d/m] | float32 |
| RQ 旋转矩阵 | Tensor [dim, dim] | 正交矩阵 |
_rowid 回溯原始数据,Fragment 物理位置信息被完全"打散"。full retrain
| 索引类型 | 搜索速度 | 召回率 | 内存占用 | 适用场景 |
|---|---|---|---|---|
| IVF_FLAT | 精度优先,中小数据集 | |||
| IVF_PQ | 大规模,内存受限 | |||
| IVF_SQ | 均衡型首选 | |||
| IVF_HNSW_SQ | 在线服务,低延迟 | |||
| IVF_RQ | 超大规模,极低内存 |