Amazon S3 Still Uses Hard Drives… and It’s Faster Than Ever?!
- AWS S3는 SSD 대신 하드 드라이브(HDD)를 사용하여 400조 개 이상의 객체 저장, 초당 1억 5천만 건의 요청 처리, 초당 1페타바이트 이상의 속도를 달성합니다. 💾
- HDD는 SSD보다 두 배 저렴하여, AWS와 같이 수백만 대의 스토리지를 구매하는 경우 비용 효율성이 핵심적인 선택 이유입니다. 💰
- HDD는 기계적 작동(탐색 및 회전)으로 인해 IOPS가 낮고 지연 시간이 길며, 지난 30년간 초당 약 32MB의 읽기 속도에 머물러 있었습니다. ⚙️
- HDD는 데이터가 디스크에 연속적으로 배치될 때 읽기/쓰기가 빠른 순차적 접근 패턴에 최적화되어 있어, S3는 쓰기 작업을 효율적으로 처리합니다. ➡️
- S3는 대용량 파일을 수만 개의 HDD에 분산 저장하여, 각 드라이브의 처리량을 합산한 속도로 병렬 읽기를 가능하게 합니다. 🚀
- 삭제 코딩(Erasure Coding) 기술을 통해 데이터를 K개의 샤드와 M개의 패리티 샤드(예: 5+4)로 분할하여 분산 저장하고, K개의 샤드만으로 데이터를 재구성하여 로드 분산과 복원력을 높입니다. 🧩
- 핫 파티션 문제 해결을 위해 '두 개의 무작위 선택의 힘' 원리를 사용하여 두 개의 무작위 디스크 중 여유 공간이 더 많은 곳에 데이터를 배치하여 초기 로드 분산을 최적화합니다. 🎲
- 새로운 데이터가 더 자주 접근된다는 점을 활용하여 오래된 데이터를 주기적으로 재조정하고, 새로운 서버 랙에도 데이터를 분산하여 로드 불균형을 방지합니다. 🔄
- 시스템 규모가 커질수록 개별 워크로드의 버스트가 서로 상쇄되어 전체 시스템의 안정성이 높아지는 워크로드 비상관화 현상을 활용하여 핫 파티션 문제를 해결합니다. (대규모 시스템에서만 가능) 📈
데브허브 | DEVHUB | Amazon S3 Still Uses Hard Drives… and It’s Faster Than Ever?!