更新时间:2026-07-09 GMT+08:00
分享

Lance表Schema演进介绍

Schema描述了Lance表的结构,包含所有字段、数据类型及元数据。它采用逻辑类型系统,将数据类型表示为映射到Apache Arrow的字符串。每个字段拥有唯一标识符(字段 ID),支持在不破坏引用的情况下重命名或重新排序字段,从而实现强大的Schema演进与版本跟踪。字段ID确保了即使Schema随时间变化,数据文件也能被正确解释。在创建表时,字段ID会按照深度优先的顺序,从0开始,为所有字段分配。

  • 添加列:分配新的字段ID并添加到Schema。
  • 删除列:从Schema中移除字段,其ID在某些系统中可以重用。
  • 重命名列:更改字段名称,ID保持不变。
  • 重新排序列:更改 Schema 中的字段顺序,ID 保持不变。
  • 类型演进:可以更改数据类型。根据类型更改方式,这可能需要重写数据中的列。

相关文档