GuriLogs.

[AWS] Amazon S3 본문

Data Engineering/AWS

[AWS] Amazon S3

guri-sh 2022. 9. 11. 15:16

1. Amazon S3 개요

Amazon S3(Amazon Simple Storage Service)는 업계 최고의 확장성, 데이터 가용성, 보안 및 성능을 제공하는 객체 스토리지 서비스.

데이터 레이크, 웹 사이트, 빅데이터 분석 등 다양한 사용 사례에서 원하는 양의 데이터를 저장하고 보호할 수 있다.

1-1. 특징

  • 많은 사용자가 접속을 해도 이를 감당하기 위해서 시스템적인 작업을 하지 않아도 된다.
  • 저장할 수 있는 파일 수의 제한이 없다.
  • 최소 1바이트에서 최대 5TB의 데이터를 저장하고 서비스할 수 있다.
  • 파일에 인증을 붙여서 무단으로 엑세스 하지 못하도록 할 수 있다.
  • 데이터를 여러 시설에서 중복으로 저장해 데이터의 손실이 발생할 경우, 자동으로 복원한다.
  • 버전관리 기능을 통해 사용자에 의한 실수도 복원이 가능하다.
  • 스토리지 보호 수준을 차등할 수 있고, 이에 따라 비용을 절감할 수 있다. (RSS)

1-2. 용어 정리

  • 객체
    • AWS는 S3에 저장된 데이터 하나를 객체라고 한다. 하나의 파일을 의미.
    • 객체는 파일과 해당 파일을 설명하는 메타데이터(옵션)로 구성된다.
  • 버킷(bucket)
    • 객체가 파일이라면 버킷은 연관된 객체들을 그룹핑한 최상위 디렉토리라고 할 수 있다.
    • 버킷 단위로 지역(region)을 지정할 수 있고, 버킷에 포함된 모든 객체에 대해서 일괄적으로 인증과 접속 제한을 걸 수 있다.
  • 버전관리
    • S3에 저장된 객체들의 변화를 저장.
    • 어떤 객체를 사용자가 삭제하거나 변경해도 각각의 변화를 모두 기록하기 때문에 실수를 만회할 수 있음.
  • RSS(Reduced Redundancy Storage)
    • 일반 S3 객체에 비해서 데이터 손실 확률이 높은 형태의 저장 방식.
      • 그러나 물리적인 하드디스크 대비 400배 가량 안전함.
    • 가격이 저렴하여 복원이 가능한 데이터(썸네일 이미지 등)를 저장하는 데 적합
  • Glacier
    • 매우 저렴한 가격으로 데이터를 저장할 수 있는 스토리지 서비스

2. Amazon S3 기능

2-1. 스토리지 클래스

여러 사용 사례에 맞춰 설계된 다양한 스토리지 클래스를 제공.

ex) 자주 엑세스하기 위해 S3 Standard에 저장, 엑세스 빈도가 낮은 데이터를 S3 Standard-IA or S3 One Zone-IA에 저장하여 비용을 절감. S3 Glacier Flexible Retrieval / S3 Glacier Deep Archive에 가장 낮은 비용으로 데이터를 보관할 수 있다.

2-2. 스토리지 관리

  • 수명주기
    • 수명 주기 정책으로 객체를 관리하고 수명 주기동안 객체를 비용 효율적으로 저장할 수 있다.
    • 객체를 다른 S3 스토리지 클래스로 전환하거나 수명이 다한 객체를 만료시킬 수 있다.
  • 객체 잠금
    • 고정 시간동안 또는 무기한으로 객체의 삭제 또는 덮어쓰기를 방지할 수 있다.
  • 복제
    • 대기시간 단축, 규정 준수, 보안 및 기타 사례를 위해 객체, 객체의 각 메타데이터, 객체 태그를 동일하거나 다른 AWS 리전에 있는 하나 이상의 대상 버킷에 복제
  • 배치 작업
    • 수백만 또는 수십억 개의 객체에 대해 복사, AWS Lambda 함수 호출 및 복원 등의 작업을 수행

3. Amazon S3 실전

현재는 S3에 직접 파일 업로드

버킷 : 최상위 디렉토리, 객체 : 각 파일을 의미

3-1. S3 Data Lake

Amazon S3는 데이터 레이크 구축에 이상적인 객체 스토리지 서비스이다.

거의 무제한에 가까운 확장성을 갖춘 Amazon S3 Data Lake를 통해 스토리지를 기가바이트부터 페타바이트 규모의 콘텐츠로 원활하게 확장하고 사용한 만큼만 비용을 지불한다.

  • Amazon Athena, Amazon Redshift Spectrum, Amazon Glue와 같은 다른 AWS와 쉽게 통합된다.
  • 스토리지를 컴퓨팅 및 데이터 처리에서 분리하여 비용과 데이터 처리 워크플로를 최적화할 수 있다.
  • 모든 유형의 정형/반정형/비정형 데이터를 기본 형식으로 비용 효율적으로 저장할 수 있다.

참고자료

Amazon S3란 무엇인가요?

초보자도 이해할 수 있는 S3(Simple Storage Service) | DevelopersIO

'Data Engineering > AWS' 카테고리의 다른 글

[AWS] What is AWS Glue ?  (0) 2022.09.09