홈으로 돌아가기

AWS S3: 느린 HDD에서 1 PB/s

AWS S3는 이레이저 코딩 5/9, 대규모 병렬 처리 및 LSM 구조 덕분에 HDD에서 1+ PB/s를 제공합니다. 물리적 디스크 제한, 샤딩 메커니즘 및 핫스팟 완화 분석. 기술 전문가를 위한 자료.

S3: 하드 드라이브에서 초당 페타바이트
Advertisement 728x90

AWS S3 아키텍처: 하드디스크로 구현하는 페타바이트 속도 성능

AWS S3는 초당 400조 개 이상의 객체를 처리하고, 초당 150만 건 이상의 요청을 수용하며, 최대 트래픽은 초당 1페타바이트를 넘어서는 엄청난 규모를 자랑합니다. 이 모든 것을 가능하게 하는 핵심은 하드디스크 드라이브(HDD)입니다. 비록 IOPS가 약 120에 불과하고, 0.5MB 랜덤 읽기 시 지연 시간이 최대 16ms까지 발생할 수 있지만, HDD의 경제성 덕분에 에크사바이트 단위의 데이터를 가장 낮은 비용으로 저장할 수 있습니다. 수십 년 동안 용량은 720만 배 증가했고, 바이트당 비용은 무려 60억 배 감소했습니다.

HDD의 물리적 특성상 트랙 탐색 시간은 평균 8~9ms, 회전 지연은 4ms, 전송 시간은 2.5ms입니다. 순차 접근은 효율적이며 최대 300MB/s까지 가능하지만, 랜덤 접근은 기계적 헤드 이동으로 인해 드라이브당 최대 32MB/s로 제한됩니다.

병렬 처리를 통한 오류 복구 기술 적용

S3는 대규모 병렬 처리를 통해 HDD의 한계를 극복합니다. 데이터는 5개의 데이터 샤드와 4개의 패리티 샤드로 구성된 '5중 9중' 오류 복구(에러 코딩, EC) 방식으로 분할됩니다. 이는 복제 방식의 3배 대비 1.8배의 오버헤드만을 요구하며, 최대 4개의 장애에도 견딜 수 있고, 읽기 성능을 높이기 위해 최대 5개의 읽기 소스를 제공합니다.

Google AdInline article slot

EC의 장점:

  • 9개의 샤드에 걸쳐 부하를 균형 있게 분산시켜 핫스팟을 줄입니다.
  • 5개의 샤드에서 동시에 읽기로 접근 속도를 가속화합니다.
  • 샤딩을 통해 지연을 피하는 헤지 쿼리(예측적 읽기)가 가능해집니다.

단일 HDD에 1TB 파일을 저장하면 300MB/s의 속도를 달성하지만, 2만 개의 드라이브를 활용하면 전체 대역폭을 합산해 테라바이트/초 수준의 성능을 실현합니다.

모든 계층에서의 병렬 처리

병렬 처리는 세 가지 계층에서 구현됩니다:

Google AdInline article slot
  • 클라이언트 프론트엔드: HTTP 연결 풀을 사용해 요청을 여러 엔드포인트에 분산시키며, 프록시 및 캐시 과부하를 방지합니다.
  • 프론트엔드 백엔드: EC 샤드는 ShardStore(로그 구조 저장 기반의 LSM-트리)에 수천 개의 디스크에 걸쳐 분산 저장됩니다.
  • PUT/GET 연산: 쓰기 작업은 멀티파트 업로드로, 읽기 작업은 바이트 범위 GET으로 처리되며, 100개 이상의 스트림으로 나누어 각각 10MB/s씩 처리합니다. 단일 기가비트 스트림보다 훨씬 효율적입니다.

쓰기는 순차적(로그 형태), 읽기는 샤딩을 통한 무작위화를 통해 큐 정체를 방지합니다.

핫스팟 방지 전략

수천만 개의 디스크와 초당 수백만 개의 샤드를 다루는 환경에서는 균형 잡힌 부하 분산이 필수적입니다. 단일 디스크의 제한 속도 32MB/s는 심각한 버퍼링 요인이 되며, 리밸런싱 오버헤드와 함께 문제를 악화시킵니다.

S3의 대응 전략:

Google AdInline article slot
  • 무작위화: 샤딩 해싱을 통해 자원 사용을 균등하게 유지합니다.
  • 리밸런싱: 중단 없이 지속적인 데이터 이동을 수행합니다.
  • 수평 확장: 가용성에 영향 없이 디스크를 추가할 수 있습니다.

LSM 기반의 ShardStore 구조는 추가 전용 로그에 최적화되어 있으며, PUT은 매우 빠르고, GET은 병렬 인덱스 검색을 통해 효율적으로 처리됩니다.

핵심 요약

  • 5/9 EC와 100개 이상의 스트림 병렬 처리를 통해 HDD 기반으로 1PB/s 이상 성능 달성.
  • 평균 랜덤 I/O 지연: 0.5MB당 16ms, 5개의 읽기 소스로 완화.
  • 경제성: 1.8배 EC 오버헤드 vs 3배 복제 → 에크사바이트 단위의 저장 비용 절감.
  • 무작위화 + 리밸런싱으로 핫스팟으로 인한 연쇄 실패 방지.
  • 백엔드 LSM-트리 구조가 HDD의 순차 처리 성능을 극대화합니다.

— Editorial Team

Advertisement 728x90

다음 읽기