피드로 돌아가기
Hugging Face BlogInfrastructure
원문 읽기
Hugging Face가 콘텐츠 주소 저장소(CAS)를 도입해 업로드 대역폭 12% 감소 및 바이트 수준의 중복제거 최적화 지원
Rearchitecting Hugging Face Uploads and Downloads
AI 요약
Context
Hugging Face Hub은 일일 8.2백만 개의 업로드 요청과 130.8TB의 데이터를 처리하고 있으나, 현재 S3 기반 아키텍처는 파일 수준의 불투명한 처리로 인해 50GB 파일 크기 제한이 있고 대용량 모델(예: Meta-Llama-3-70B 131GB)의 분산 저장을 강제하고 있다. AWS CloudFront CDN이 웹 콘텐츠 최적화로 설계되어 있어 고급 중복제거 및 압축 기법 적용이 어렵다.
Technical Solution
- 콘텐츠 주소 저장소(CAS) 도입: 읽기 경로는 단순성 우선, 쓰기 경로는 최적화 우선이라는 "dumb reads, smart writes" 철학으로 설계
- 읽기 경로 구조 변경: 파일 요청을 CAS 서버로 라우팅하여 재구성 정보 조회, S3 백엔드 유지, CloudFront CDN 계속 활용
- 쓰기 경로 구조 변경: 파일 단위 대신 청크 단위로 업로드 요청 처리, CAS 서버가 신규 청크만 클라이언트에 전송 지시, 검증 후 S3 업로드
- 바이트 수준 분석 도입: Parquet 파일 중복제거 개선 및 Safetensors 같은 텐서 파일 10~25% 압축 가능성 확보
- 다중 지역 배포 계획: us-east-1(4노드), eu-west-3(4노드), ap-southeast-1(2노드)에 CAS 배치하여 상위 7개 국가의 80% 업로드 트래픽 커버
Impact
- 전체 업로드 누적 대역폭 48.5 Mbps에서 42.5 Mbps로 감소(12% 감소)
Key Takeaway
대용량 파일 저장소 시스템에서 파일 단위 처리 대신 바이트 단위로 내용을 분석하고 지역별 트래픽 패턴을 기반으로 최소한의 리소스로 전역 배포하면, 인프라 비용 증가를 최소화하면서도 데이터 검증, 감시, 최적화 기회를 확보할 수 있다.
실천 포인트
대용량 파일(>50GB) 배포를 다루는 서비스에서 단일 원본 저장소 + CDN 구조 대신 콘텐츠 주소 저장소 계층을 중간에 삽입하면, 청크 단위 중복제거로 대역폭 사용량을 10% 이상 절감하고 형식별 맞춤 압축으로 전송 시간을 추가로 단축할 수 있다.