Post

[AWS] S3

[AWS] S3

AWS에 존재하는 파일을 관리하는 시스템이다.\

만일 모든 파일에 대한 접근을 EBS를 통해 한다면 과도한 트래픽이 발생할 수 있다.\

파일에만 접근을 할 때 S3를 이용하면 트래픽도 낮아지고 속도도 빨라진다!

  • AWS에서 제공하는 온라인 웹 서비스의 일종인 Amazon S3(Simple Storaeg Service)는 파일 서버의 역할을 한다.
  • 파일 접근 권한을 지정할 수도 있어 서비스를 호스팅 용도로 사용하는 것도 방지할 수 있다.

용어

객체

  • S3에 저장된 데이터 하나 하나를 객체라고 명명한다.
    • 파일이라고 생각하면 된다.

Bucket(버킷)

  • 연관된 객체들을 그룹핑한 최상위 디렉터리.
  • Bucket 단위로 region을 설정할 수 있고, Bucket 단위로 객체의 인증과 접속 제한을 걸 수 있다.
  • 더 자세한 것은 아래에서 설명하겠다.

버전 관리

  • S3에 저장된 객체들의 변화를 저장한다.
    • 백업과 비슷하다.
  • 객체의 삭제, 변경 등 모든 변화를 기록하므로 실수를 해도 되돌릴 수 있다.

RSS

  • Reduced Redundancy Storage.
  • S3 객체에 비해 데이터가 손실될 확률이 높으나 비교적 저렴하다.
    • 쉽게 복원할 수 있거나 잃어버려도 큰 문제가 없는 데이터를 저장할 때 쓰인다.

Glacier

  • 매우 저렴한 가격으로 데이터를 저장할 수 있는 storage service.

객체 스토리지 서비스

  • 객체를 다루는 서비스이다.

파일만 가능

  • 파일을 설치하는 것은 불가능하며 업로드(Put), 삭제(Delete), 업데이트(Update)만 가능하다.

파일 용량 제한

  • 하나의 객체(파일)는 0byte에서 5TB 용량을 가질 수 있다.
    • 하지만, 단일 PUT(새로 생성) 요청으로 업로드 가능한 객체의 최대 크기는 5GB라고 한다.
    • 객체의 크기가 100MB를 넘긴다면 멀티파트 업로드 기능을 사용하는 것을 고려하는 것이 좋다.
  • 하지만, 업로드 할 수 있는 객체의 수는 무제한이다!

Bucket

  • S3에 저장된 객체의 컨테이너이다.
  • 거의 모든 데이터(객체)를 저장할 수 있으며, 숫자는 무제한이다.
  • Bucket의 이름은 Global Unique하다.
    • 중복된 이름이 존재할 수 없다!
    • Web Hosting시 도메인과 Bucket 이름이 같아야 한다.
  • 범용 Bucket과 디렉터리 Bucket이 있다.

범용 Bucket

  • 원래 S3 Bucket 유형이다.
  • 단일 범용 Bucket에는 S3 Express One Zone을 제외한 모든 스토리지 클래스에 저장된 객체를 포함할 수 있다.
  • 대부분 이걸 사용하면 된다.

디렉터리 Bucket

  • S3 Express One Zone 스토리지 클래스에 객체만 저장할 수 있다.
    • S3 Express One Zone 스토리지 클래스는 단일 가용 영역 내 더 빠른 데이터 처리를 제공한다.
  • 즉, 지연 시간이 짧은 경우 사용하면 좋다.

내구성과 가용성

  • 99.999999999%의 내구성과 99.9% SLA 가용성을 가진다.
    • 0.000000001% 확률로 파일을 잃어버릴 수 있다.
    • SLA는 실제 성능이 이것 보다 떨어진다면 돈을 돌려준다는 약속이다.
      • 티어에 따라 다르다고 한다.
This post is licensed under CC BY 4.0 by the author.