SECTION 13. Advanced S3

‎김연수·2024년 5월 29일

SAA 자격증 공부

목록 보기
10/16

Storage Classes 사이 이동

  • 스토리지 클래스 간에 객체를 이동시킬 수 있다.

Lifecycle Rules

  • 시나리오 1
  • 시나리오 2

Requester Pays

  • 일반적으로, 버킷 소유주들이 S3 저장소 비용과 데이터 전송 비용을 부담.
  • Requester Pays Bucket 이용시, 버킷 대신 요청자가 지불: 소유자는 여전히 개체 저장소 비용을 내지만, 요청자는 개체 다운로드와 관련된 네트워킹 비용을 지불.

Event Notifications

  • 이벤트 알림 생성: s3 객체로 이벤트(객체 생성, 이동, 복원, 복제)가 들어오면, 이러한 이벤트를 이벤트 알림 타겟인 sns, sqs, lambda function으로 보냄.

IAM permission

  • 이벤트 알림을 위해 IAM 승인 필요.
  • S3이 데이터를 전송하도록 승인: SNS/SQS 리소스(액세스) 정책 첨부.
  • S3이 함수를 호출하도록 승인: 람다 리소스 정책

Amazon EventBridge

  • 거의 실시간으로 이벤트를 자동으로 전송하는 서비스
  • JSON 룰에 따른 필터링 옵션(메타 데이터, 객체 크기, 이름)
  • 동시에 여러 곳으로 전송 가능
  • 저장하고 다시 재생하면 더 신뢰할 수 있는 전달 가능.

S3 Performance

Multi-Part upload

  • 파일 업로드 방식: 100MB 이상 파일에 권장됨. 5GB 이상일 땐 필수.
  • 바이트 파일을 작은 파트로 나누어서 각각의 파일은 s3으로 병렬 업로드 됨.

S3 Transfer Acceleration

  • 파일을 AWS edge location 으로 전송해 속도를 높임. 목표 지역에 있는 s3 버킷으로 데이터 전송.
  • Multi-Part upload와 호환 가능.
  • 예를 들어, USA에 있는 파일을 호주의 S3 버킷에 올리고 싶다면, 파일을 공용 인터넷을 사용해 USA 엣지 로케이션으로 업로드함. 그리고 엣지 로케이션에서 프라이빗 AWS 네트워크를 사용해 호주의 S3버킷으로 보냄.
    -> 공용 인터넷의 양을 최소화, 프라이빗 AWS 네트워크 양을 최대화해 전송 속도를 높임.

S3 Byte-Range Fetches

  • 파일을 위한 특정 바이트 범위를 가져와서 GET 요청을 병렬화함.
  • 다운로드 속도 높이기: S3 파의 특정 바이트 범위를 페치해달라고 요청. 요청이 병렬적으로 일어나고, 다운로드 수를 늘려 속도가 높아짐.
  • 파일 일부분만 검색: 바이트 범위에 대한 헤더 요청을 발급.

0개의 댓글