ebson

[UDEMY] Section 13. Advanced Amazon S3 본문

AWS SAA

[UDEMY] Section 13. Advanced Amazon S3

ebson 2023. 8. 10. 08:09

아래는 Udemy의 Ultimate AWS Certified Solutions Architect Associate SAA-C03 강의내용 중 Section 13.

140 - 147강을 요약한 내용입니다.(Section 13. Advanced Amazon S3)

 

1. Amazon S3 - Moving between Storage Classes

저장소 클래스들 사이에서 오브젝트들을 옮길 수 있음.

빈번하지 않게 접근되는 오브젝트에 대해 Standard IA 으로 이동시킬 수 있음.

빠르게 접근할 필요 없는 아카이브 오브젝트에 대해 Grarier 또는 Gracier Deep Archive 으로 이동시킬 수 있음.

라이프사이클 룰들을 사용해 오브젝트 이동이 자동화될 수 있음.

 

2. Amazon S3 - Lifecycle Rules 

2.1. 시나리오1

Amazon S3으로 프로필 사진을 업로드한 후에 이미지 썸네일을 생성하는 EC2 상의 앱이 있음. 이 썸네일들은 재생성될 수 있고 60일까지만 유지되면 됨. 소스 이미지들은 60일 동안 즉시 검색 가능해야함. 그 이후에는 사용자는 6시간까지 기다릴 수 있음.

2.1.1. S3 소스 이미지들은 Standard 에 있을 수 있고 60일 이후에는 그것들을 Glacier 으로 옮기도록 라이브사이클 설정함.

2.1.2. S3 썸네일들은 One-Zone IA에 있을 수 있고 60일 이후에는 만료되도록 라이브사이클 설정함.

 

2.2. 시나리오2

회사 내의 룰은 30일 동안 삭제된 S3 오브젝트들을 즉시 복구 해야함. 드물게 일어나는 일일지라도 그 이후 365일까지는 삭제된 오브젝트들은 48시간 내에 복구 해야함.

2.2.1. S3 Versioning 을 가능하게 해서 삭제된 오브젝트들이 삭제 마커에 의해 숨겨지게 하고 복구될 수 있음.

2.2.2. 실행되지 않은 버전의 오브젝트를 Standard IA으로 이동시킴.

2.2.3. 나중에 실행되지 않은 버전들은 Glacier Deep Archive으로 이동시킴.

 

3. Amazon S3 Analytics - Storage Class Analysis

적합한 스토리지 클래스로 언제 오브젝트들을 옮겨야하는지 결정하도록 도움.

Standard 그리고 Standard IA 에 대한 추천들임. One-Zone IA 또는 Glacier에 대해서는 동작 안함.

보고서는 매일 업데이트됨.

데이터 분석을 보기 시작하기까지 24시간에서 48시간 소요됨.

 

4. S3 - Requester Pays

일반적으로 버킷 소유자들은 그들의 버킷과 관련된 모든 아마존 S3 스토리지와 데이터 운송 비용을 지불함.

Requester Pays buckets와 함께면, 버킷의 소유자 대신 그 요청자가 요청과 버킷으로부터 다운로드 받은 데이터에 대해 비용을 지불함.

다른 계정들과 큰 데이터셋을 공유하기 원할 때 도움이 됨.

그 요청자는 반드시 AWS에서 인증 받아야 함.

 

5. S3 Event Notifications

5.1. 개요

S3:ObjectCreated, S3:ObjectRemoves, S3:ObjectRestore, S3:Replication 등등에 가능함.

오브젝트 네임 필터링이 가능함. 예를 들어, *.jpg

S3에 업로드되는 이미지들의 썸네일을 생성하는 것에 사용함.

가능한 요구되는 대로 많은 S3 이벤트들을 생성할 수 있음.

S3 이벤트 알림들은 일반적으로 몇초 내에 이벤트들을 전달하지만, 가끔씩 몇분 혹은 더 오래 걸릴 수도 있음.

 

5.2. IAM Permissions

SNS Resourve (Access) Policy, SQS Resource (Access) Policy, Lambda Resource Policy 등을 설정할 수 있음.

 

5.3. with Amazon EventBridge

메타 데이터, 오브젝트 사이즈, 이름 등등 향상된 옵셜들의 필터링을 JSON rules들로 제공함.

스텝 펑션들, 키네시스 스트림들, 파이어호스 등등 다양한 목적지를 가질 수 있음.

아카이브, 리플레이 이벤트 등에서 사용 가능함.

 

6. S3 - Baseline Performance

아마존 S3는 자동으로 높은 요청률과 지연으로 스케일함.

어플리케이션은 하나의 버킷에서 적어도 3500의 PUT/COPY/POST/DELETE 또는 5500의 GET/HEAD 요청들을 매 초마다 매 프리픽스마다 아카이브 할 수 있음.

하나의 버킷에서 프리픽스들의 숫자는 제한이 없음. 프리픽스는 오브젝트 경로임.

만약 모든 4개의 프리픽스들에 균등하게 읽기를 분산하면, GET과 HEAD에 대해 매초마다 22,000 요청들을 아카이브 할 수 있음.

 

7. S3 Performance

7.1. 개요

멀티 파트 업로드는 100메가바이트 이상의 파일들에 대해 추천되고 5기가바이트 이상 파일들에 대해 반드시 사용되야 함. 그리고 운송들을 스피드업 하기 위해 업로드들을 병렬화하는 것을 도움.

S3 Transfer Acceleration은 타킷 리전 내의 S3 버킷으로 데이터를 향하도록 할 AWS 엣지 로케이션으로 파일들을 운송하는 속도를 향상함. 멀티 파트 업로드와 호환 가능함.

 

7.2. S3 Byte-Range Fetches

특정한 바이트 영역들에 요청함으로서 GET들을 병렬화함. 다운로드 속도를 높이는 것에 사용함. 부분적인 데이터만 검색하는 것에 사용함.

 

8. S3 Select & Glacier Select

서버 사이드 필터링을 수행함으로서 SQL을 사용하는 데이터를 덜 검색함.

로우들과 컬럼들로 필터링 할 수 있음.

네트워크 전송이 적고 클라이언트 사이드 CPU 비용이 적음.

 

9. S3 Batch Operations

단일 요청과 함께 존재하는 S3 오브젝트들에 대해 벌크 오퍼레이션들을 수행함. 예를 들어, 오브젝트 메타데이터와 프로퍼티 수정, S3 버킷들 사이의 오브젝트들 복제하기, 암호화되지 않은 오브젝트들을 암호화하기, ACL들과 태그들을 수정하기, S3 Glacier로부터 오브젝트들을 복구하기, 각각의 오브젝트에 대해 커스텀 액션을 수행하기 위해 람다 함수 부르기 등임.

하나의 잡은 오브젝트들의 목록, 수행하기 위한 액션, 선택적인 파라미터들로 구성됨.

S3 배치 오퍼레이션들은 리트라이들, 트랙 프로그레스 들을 관리하고 완료 알림을 보내고 보고서를 생성함.

오브젝트 목록들을 갖기 위해 S3 인벤토리를 사용할 수 있고 오브젝트들을 필터하기 위해 S3 Select를 사용할 수 있음.

Comments