Lance 是一种专为大规模 AI 数据集设计的现代化列式数据格式。它类似于 Parquet,但针对多模态数据(如图像、视频、音频、点云及传统表格数据)的存储和访问进行了深度优化。Lance 支持与 POSIX 兼容的Linux文件系统以及主流云对象存储(火山引擎 TOS),使其成为构建统一 AI 数据湖的理想基础。
Lance 格式的核心在于其高效的文件结构,它由三层逻辑构成:
Apache Gravitino, the names of other Apache projects, and the ASF logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries.
Lance 的主要功能包括:
Apache Arrow, the names of other Apache projects, and the ASF logo are either registered trademarks or trademarks of the Apache Software Foundation in the United States and/or other countries.
传统的 AI/ML 工作流中,数据集的管理面临诸多挑战,例如:
Lance 通过提供一个统一的平台来解决这些问题,其核心能力包括:
一个 Lance 数据集在存储上表现为一个目录,其内部主要包含:
data/ 目录:存放真实的数据文件(.lance 文件)。_versions/ 目录:存放每个版本的元数据清单(manifest 文件),记录了该版本包含了哪些数据文件。_transactions/ 目录:用于保证写入操作的原子性。_deletions/ 目录:存放删除文件(deletion vectors),用于跟踪已删除的行而无需重写数据文件。_indices/ 目录:当对 Lance 数据创建了索引后,会将索引文件存放在此目录中,每个索引存储在独立的 UUID 子目录中。如何使用请查看快速入门。