metadata管理?parquet、arrow?大规模数据集的metadata管理?parquet、arrow?
海量样本(图像、文本、多模态)需要索引、过滤、分片与采样,不能只靠「列目录」;Metadata 存样本路径、标签、长度、分组等,便于按条件过滤、按 rank shard、做 bucket 与负采样等。格式要可扩展、可并行读、支持列式过滤。
Parquet:列存格式,schema 清晰、支持按列读取与谓词下推(只读需要的列、按条件过滤),压缩友好;适合存「样本路径 + 标签 + 长度」等表格型 metadata,训练时按 shard 或按条件读 Parquet 得到本 rank 的样本列表,再按 path 或 key 拉数据。Arrow:内存列式格式与 IPC/文件格式,零拷贝、多语言、与 Pandas/Spark 等互通;可做「内存中的 metadata 表」、或 Arrow 文件做 metadata 存储,训练时用 Arrow 读入过滤与 shard,再驱动 DataLoader。二者常一起用:Parquet 做持久化、Arrow 做内存表示与处理;或直接用 Arrow 的 Parquet 读写。
Metadata 与数据分离:大文件或对象存数据,Parquet/Arrow 存索引与属性;DataLoader 先读 metadata(或按需读列)、再按 path/key 取数据。大规模时 metadata 也分片(多 Parquet 文件),按 rank 或按 key 范围读对应分片。
| 返回模块 | 返回总览 |