[논문 리뷰] Understanding and Co-designing the Data Ingestion Pipeline for Industry-Scale RecSys Training.
이 논문은 산업 규모 추천 시스템 학습을 위한 분리형 데이터 인gest 풀라인을 제안하며, 분산 데이터 웨어하우스와 확장 가능한 데이터 전처리 서비스(DPP)를 사용해 전처리를 트레이너에서 분리한다. 이 솔루션은 저장소 처리량을 1.9배, 전처리 처리량을 2.3배 향상시켜 데이터 정지로 인한 학습 처리량 손실을 최대 56% 감소시킨다.
The data ingestion pipeline, responsible for storing and preprocessing training data, is an important component of any machine learning training job. At Facebook, we use recommendation models extensively across our services. The data ingestion requirements to train these models are substantial. In this paper, we present an extensive characterization of the data ingestion challenges for industry-scale recommendation model training. First, dataset storage requirements are massive and variable; exceeding local storage capacities. Secondly, reading and preprocessing data is computationally expensive, requiring substantially more compute, memory, and network resources than are available on trainers themselves. These demands result in drastically reduced training throughput, and thus wasted GPU resources, when current on-trainer preprocessing solutions are used. To address these challenges, we present a disaggregated data ingestion pipeline. It includes a central data warehouse built on distributed storage nodes. We introduce Data PreProcessing Service (DPP), a fully disaggregated preprocessing service that scales to hundreds of nodes, eliminating data stalls that can reduce training throughput by 56%. We implement important optimizations across storage and DPP, increasing storage and preprocessing throughput by 1.9x and 2.3x, respectively, addressing the substantial power requirements of data ingestion. We close with lessons learned and cover the important remaining challenges and opportunities surrounding data ingestion at scale.
연구 동기 및 목표
- 산업 규모 추천 시스템 학습에서 막대하고 변동성이 큰 데이터셋 저장 및 계산 비용이 큰 전처리 작업으로 인한 심각한 성능 저하 문제를 해결하기 위해.
- 현재 트레이너에서 전처리를 수행함으로써 GPU 자원이 낭비되는 데이터 인그레션 지연으로 인한 학습 처리량 저하를 줄이기 위해.
- 전처리를 학습에서 분리하여 자원 활용도와 시스템 효율성을 향상시키기 위해 확장 가능하고 분산된 데이터 인그레션 풀라인을 설계하기 위해.
- 대규모 추천 학습의 높은 전력 소모와 처리량 요구사항을 충족시키기 위해 저장소 및 전처리 워크로드를 최적화하기 위해.
제안 방법
- 지역 트레이너의 용량을 초월하는 막대하고 변동성이 큰 데이터셋을 처리하기 위해 분산 스토리지 노드 기반의 중앙 데이터 웨어하우스를 설계 및 구현한다.
- 데이터 전처리 서비스(DPP)를 도입하여 수백 개의 노드에 걸쳐 확장 가능한 완전히 분리된 전처리 시스템을 구현해 데이터 정지를 제거한다.
- 저장소 및 DPP 전반에 걸쳐 워크로드 인식 최적화를 구현하여 트레이너로의 데이터 전달 처리량을 향상시키고 지연을 줄인다.
- 전처리를 전용 인프라로 이관하여 트레이너의 계산 부담을 줄이고 전처리를 학습에서 분리한다.
- 분산 처리 및 데이터 샤딩을 활용해 전처리를 병렬화하고 추가 노드에 따라 처리량을 선형으로 확장한다.
- 네트워크 및 메모리 병목 현상을 최소화하기 위해 데이터 레이아웃과 I/O 패턴을 최적화한다.
실험 결과
연구 질문
- RQ1막대하고 변동성이 큰 데이터셋을 가진 산업 규모 추천 학습에서 데이터 인그레션 병목 현상을 어떻게 최소화할 수 있는가?
- RQ2GPU 트레이너를 과부하시키지 않으면서도 확장 가능하고 고처리량 전처리를 가능하게 하는 아키텍처 패턴은 무엇인가?
- RQ3학습에서 전처리를 분리함으로써 학습 처리량과 GPU 활용도는 얼마나 향상될 수 있는가?
- RQ4저장소 및 전처리 워크로드를 최적화해 전력 소모를 줄이고 시스템 효율성을 높일 수 있는가?
- RQ5대규모에서 분산된 분리형 데이터 인그레션 풀라인의 핵심 성능 트레이드오프와 제약 조건은 무엇인가?
주요 결과
- 분리형 데이터 인그레션 풀라인은 트레이너에서 전처리를 수행하는 것과 비교해 데이터 정지로 인한 학습 처리량 손실을 최대 56% 감소시킨다.
- 최적화된 데이터 레이아웃과 분산 스토리지 액세스 패턴 덕분에 저장소 처리량이 1.9배 향상된다.
- 수백 개의 노드에 걸쳐 수평 확장된 데이터 전처리 서비스(DPP) 덕분에 전처리 처리량이 2.3배 증가한다.
- 이 솔루션은 전처리를 학습에서 효과적으로 분리하여 GPU 자원을 해방시키고 더 효율적인 학습 워크로드를 가능하게 한다.
- 전용 인프라에 컴퓨팅 및 I/O를 분산시킴으로써 데이터 인그레션의 상당한 전력 요구량을 해결한다.
- 논문은 향후 연구를 위해 데이터 일관성, 장애 내성, 동적 워크로드 적응과 같은 잔여 과제를 규명한다.
더 나은 연구,지금 바로 시작하세요
논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.