arXiv:2602.22434cs.DCcs.AI2026-02

提出GetBatch,用批量请求替代单个文件获取,显著提升机器学习数据加载速度。

GetBatch: Distributed Multi-Object Retrieval for ML Data Loading

  • 设计新API,将多个文件获取合并为一次批量操作,减少请求开销。
  • 小文件场景下吞吐提升最高达15倍,生产负载中95%延迟减半。
  • 适合大规模分布式训练的数据加载场景,尤其关注低延迟需求。

机器学习训练流程以批为单位读取数据,单次训练步骤可能需要从存储集群中多个分片获取数千个样本。若对每个样本单独发起GET请求,请求开销常成为数据传输时间的主要瓶颈。为此,我们提出GetBatch——一种新的对象存储API,将批量获取提升为第一类存储操作,用一次确定性、容错的流式执行取代独立的GET操作。GetBatch在小文件场景下实现最高15倍的吞吐提升;在真实训练负载中,相比独立GET请求,批次检索的P95延迟降低2倍,每对象尾部延迟(P99)降低3.7倍。

原文摘要 · Abstract (English)

Machine learning training pipelines consume data in batches. A single training step may require thousands of samples drawn from shards distributed across a storage cluster. Issuing thousands of individual GET requests incurs per-request overhead that often dominates data transfer time. To solve this problem, we introduce GetBatch - a new object store API that elevates batch retrieval to a first-class storage operation, replacing independent GET operations with a single deterministic, fault-tolerant streaming execution. GetBatch achieves up to 15x throughput improvement for small objects and, in a production training workload, reduces P95 batch retrieval latency by 2x and P99 per-object tail latency by 3.7x compared to individual GET requests.

数据加载分布式系统批量请求ML训练

Thank you to arXiv for use of its open access interoperability. PaperDance 不是 arXiv 官方产品;中文卡片由大模型生成,请以原文为准。