Amazon S3
Moving between Storage Classes
- 객체에 자주 액세스하지 않는다면 Standard IA로 이동
- 객체를 아카이브할 예정임을 알고 있다면 Glacier 계층이나 Deep Archive 계층으로 이동
Lifecycle Rules
: 스토리지 클래스의 이동을 자동화할 수 있다.
- 객체를 구성해 다른 스토리지 클래스로 전환하기 위한 전환 작업을 구성
- 만료 작업을 설정해 일정 기간이 지나면 객체가 삭제되어 만료되도록 구성
- 특정 접두사에 규칙을 지정하여 전체 버킷이나 버킷 내의 특정 경로에 적용되도록 구성
- 특정 객체 태그에 지정하도록 구성
Storage Class Analysis
: 객체의 클래스를 전환하는 데 가장 적합한 일 수를 분석한다.
- One-Zone IA, Glacier에서는 사용할 수 없다.
Event Notifications
: 객체가 생성되고, 제거되고, 복원되고, 반복되는 것과 같은 것 들을 이벤트 알림
Amazon EventBridge
Multi-Part upload
: 업로드를 병렬화하여 대역폭을 극대화할 수 있도록 전송 속도를 높이는 데 도움을 준다.
- 100MB보다 큰 파일 권장, 5GB보타 큰 파일의 경우 필수
S3 Transfer Acceleration
: AWS 엣지 위치로 파일을 전송하고 엣지 위치에서는 대상 지역의 S3 버킷으로 데이터를 전달하여 전송 속도를 높인다.
- 업로드와 다운로드에 사용
- Multi-Part upload와 호환 가능
S3 Byte-Rande Fetches
: 다운로드 속도를 높인다.
- 파일의 특정 바이트 범위를 받아 get 작업을 병렬화
- 파일의 일부분만 검색
S3 Select & Glacier Select
: 간단한 SQL 명령문으로 행이나 열을 기준으로 필터링하여 네트워크 전송과, 실제로 데이터를 거치고 필터링하는 클라이언트 측의 CPU 코스트를 줄일 수 있다.
: 객체를 검색할 때 검색할 수 있으며 객체 자체에 대한 정보를 제공한다.
: 태그를 사용해 권한 등을 세분화하거나 AWS 내의 특정 태그가 있는 특정 객체에 액세스를 부여할 수 있다.
Amazon S3에서 메타데이터와 태그를 검색할 수 없다는 점으로 메타데이터로 필터링하거나 태그로 필터링할 수 없다.
S3 버킷에서 검색을 사용하려면 DynamoDB와 같은 데이터베이스에 외부 인덱스를 구축해야 한다.