20년 전 오늘, 2006년 3월 14일에 Amazon Simple Storage Service(Amazon S3)는 새로운 소식 페이지에 게시된 한 단락의 간단한 발표와 함께 조용히 출범했습니다. Amazon S3는 개발자가 웹 스케일 컴퓨팅을 쉽게 구현할 수 있도록 설계된 인터넷용 스토리지입니다. Amazon S3는 언제 어디서든, 웹에 원하는 양의 데이터를 저장하고 검색하는 데 사용할 수 있는 간단한 웹 서비스 인터페이스를 제공합니다. 이를 […] ||
20년 전 오늘, 2006년 3월 14일에 Amazon Simple Storage Service(Amazon S3)는 새로운 소식 페이지에 게시된 한 단락의 간단한 발표와 함께 조용히 출범했습니다.
Amazon S3는 개발자가 웹 스케일 컴퓨팅을 쉽게 구현할 수 있도록 설계된 인터넷용 스토리지입니다. Amazon S3는 언제 어디서든, 웹에 원하는 양의 데이터를 저장하고 검색하는 데 사용할 수 있는 간단한 웹 서비스 인터페이스를 제공합니다. 이를 통해 개발자는 Amazon이 자체 글로벌 웹 사이트 네트워크를 운영하는 데 사용하는 것과 같은 수준의 확장성과 신뢰성을 갖춘 빠르고 저렴한 데이터 스토리지 인프라에 액세스할 수 있습니다.
Jeff Barr의 블로그 게시물도 캘리포니아에서 열린 개발자 이벤트로 향하는 비행기를 타기 전 몇 단락 급하게 작성한 글이었습니다. 코드 예도 없고 데모도 없었습니다. 매우 조용한 시작이었습니다. 이 출시가 전체 산업을 바꾸어놓을 것이라는 사실을 당시에는 아무도 몰랐습니다.
초창기: 제대로 작동하는 빌딩 블록
핵심적으로, S3에는 두 가지 간단한 프리미티브가 도입되었습니다. 객체를 저장하는 PUT과 후에 객체를 가져오는 GET입니다. 하지만 진정한 혁신은 그 이면에 숨겨진 철학이었습니다. 바로 개발자들이 더 높은 수준의 작업에 집중할 수 있도록 획일적이고 번거로운 작업을 처리하는 빌딩 블록을 만드는 것이었습니다.
S3는 처음부터 지금까지 변함없는 다섯 가지 기본 원칙에 따라 발전해왔습니다.
기본적으로 데이터를 보호하는 보안이 적용됩니다. 99.999999999%의 내구성을 보장하도록 설계되었으며, S3는 무손실로 운영됩니다. 장애가 항상 존재하며 반드시 처리되어야 한다는 가정 하에 모든 계층에 가용성이 설계되었습니다. 성능 저하 없이 거의 모든 양의 데이터를 저장할 수 있도록 성능이 최적화되었습니다. 데이터를 추가하고 제거할 때 수동 개입 없이 시스템이 자동으로 확장 및 축소되는 탄력성을 제공합니다.
이러한 요소를 제대로 구현하면 서비스가 매우 단순해져서 대부분의 사용자는 이러한 개념이 얼마나 복잡한지 전혀 신경 쓸 필요가 없게 됩니다.
오늘날의 S3: 상상을 초월하는 확장성
20년 동안 S3는 상상하기 어려울 정도의 규모로 성장했음에도 불구하고 핵심 기본 원칙을 계속 지켜 왔습니다.
S3는 처음 출시되었을 때 3개의 데이터 센터에 설치된 15개 랙의 약 400개 스토리지 노드에 걸쳐 총 15Gbps의 대역폭으로 약 1페타바이트의 총 스토리지 용량을 제공했습니다. 최대 객체 크기가 5GB인 수백억 개의 객체를 저장할 수 있도록 시스템을 설계했습니다. 초기 가격은 기가바이트당 15센트였습니다.
현재 S3는 500조 개 이상의 객체를 저장하고, 전 세계적으로 수백만 고객이 39개 AWS 리전의 123개 가용 영역에 있는 수백 엑사바이트 규모의 데이터에 대해 전송하는 초당 2억 건 이상의 요청을 처리합니다. 최대 객체 크기가 5GB에서 50TB로, 1만 배 증가했습니다. 수천만 개의 S3 하드 드라이브를 모두 겹쳐 놓으면 국제 우주 정거장에 도착했다가 거의 돌아올 수 있는 거리가 됩니다.
S3가 이 놀라운 규모를 지원할 수 있도록 성장했음에도 불구하고 고객이 지불하는 가격은 오히려 떨어졌습니다. 현재 AWS의 요금은 기가바이트당 2센트가 약간 넘습니다. 이는 2006년 출시된 이래 약 85%의 인하된 가격입니다. 그와 동시에, 스토리지 티어를 활용해 스토리지 지출을 더욱 최적화할 수 있는 방법을 지속적으로 도입해