S3 (Simple Storage Service)
S3는 안전하고 가변적인 Object 저장공간을 제공
외부에서 접근 불가능하게 설정해 안전하고, 가변적인 크기라서 저장공간을 따로 관리할 필요 없이 자동으로 확장하거나 축소할 수 있음
- 안전하고 가변적인 Object 저장공간 제공
- AWS에서 외부에서 접근 불가능하게 만들어놓고, 가변적으로 따로 저장공간의 크기를 직접 만지지 않아도 몸집을 키웠다 줄였다 가능
- Object 이미지, 동영상, 파일같은것들마 올릴 수 있고 운영체제 같은걸 사용할 순 없음
- 편리한 UI 인터페이스를 통해 어디서나 쉽게 데이터 저장& 불러올 수 있음
- 파일 크기: 0KB부터 5TB까지 지원
- 저장공간: 무제한
- 직접 파티션 크기 변경하거나 디스크 크기 할당할 필요 없이 파일을 무작위로 올려도 괜찮음
- 실제 하드디스크와 달리 방대한 양의 하드디스크 보관 가능
- Bucket: 디렉토리와 유사한 개념 `보편적인 namespace`를 사용함
- 지역은 글로벌로 되어있어서 region과 상관없이 버켓 이름은 고유해야함
S3 Object 구성요소
- Key: 파일명
- Value: 파일에 대한 데이터
- Version ID: 같은 파일이 다른 버전으로 업로드될 수 있으며, 이전 버전으로 돌아갈 수 있음
- Metadata: 파일 업로드 날짜, 소유 팀 등의 정보를 담고 있으며, 수정 가능
- CORS (Cross-Origin Resource Sharing): 한 버킷의 파일을 다른 버킷에서 접근 가능하게 설정
S3 Data Consistency Model
1. Read after Wirte Consistency (PUT)
- 파일이 S3 버킷에 올라간 후 바로 사용 가능
- 딜레이 없이 즉시 접근 가능
2. Eventual Consistency (UPDATE, DELETE)
- 파일 업데이트나 삭제 후 즉시 반영되지 않을 수 있음
- 내부적으로는 일관성 유지 (이를 Eventual Consistency라 함
S3 스토리지
S3는 다양한 스토리지 유형을 제공하며, 용도에 맞는 스토리지를 선택해야함
1. 일반 S3
- 가장 보편적으로 사용되는 스토리지 타입
- 높은 `내구성` (Durability) `가용성` (Availiability)
- 내구성: 얼마나 데이터 손실 없이 잘 복완되어 지는지
- 가용성: 얼마나 데이터 접근이 용이한지에 대한 의미
- 모든면에서 다 훌륭함
2. S3 - IA (Infrequest Access)
- 자주 접근하지 않지만 필요할 때 빠르게 접근해야 하는 데이터에 적합
- 일반 S3에 비해 비용은 저렴하나 접근시 추가 비용 발생
- `멀티 AZ`를 통한 데이터 저장 -> `가용성 높음`
3. S3 - One Zone IA
- `단일 AZ`를 통한 데이터 저장
- 단일 AZ에 의한 데이터 접근 제한 (조금 높은 가용성)
- 서버 문제 발생 시 접근 불가할 수 있음
- S3 - IA보다 20% 비용 저렴
4. Glacier
- 거의 접근하지 않을 데이터 저장에 적합
- 매우 저렴한 비용
- 데이터 접근시 대략 4-5시간 소요
5. Intelligetn Tiering
- 데이터 접근 주기가 불규칙할때 매우 유용
- 2가지 티어 존재
- Frequent Tier
- Infrequent Tier
- 데이터 접근주기에 따라 두가지 티어 중 하나로 선택됨
- Frequent Tier가 비용이 약간 더 비쌈
- 비용 절감에 최적화
예를들어 데이터 접근이 한달 이상 없을 경우 Infrequent Tier로 분류하고 그러다 몇번 데이터 접근이 발생할시 Frequent 티어로 자기가 알아서 분류함
대부분 종종 접근할 필요 없는 데이터를 보관해뒀다 유사시 저렴한 비용을 통하여 데이터 접근을 했다가 다시 인프리콘트 티어를 옮기고 따라서 효율적인 측면에서는 최고
S3 요금
- GB당 요금: 약 $0.023
- 요청 횟수: PUT, GET, COPY 요청 횟수에 따라 비용 부과
- 데이터 다운로드 및 전송 비용: 사용 스토리지에 따라 다름
- Metadata 비용: 메타데이터 태그 사용 시 추가 비용 발생
참고강의
https://www.inflearn.com/course/aws-%EC%9E%85%EB%AC%B8
'백엔드 공부일지 > AWS 공부일지' 카테고리의 다른 글
[AWS] DynamoDB 기초부터 Index, Query, Scan 활용까지 (1) | 2024.11.04 |
---|---|
[AWS] S3 사용 용례 & 암호화 (1) | 2024.10.06 |
[AWS] RDS 읽기 전용 복제본 & AZ 가용영역 (1) | 2024.09.29 |
[AWS] RDS 관계형 데이터베이스 서비스 (1) | 2024.09.29 |
[AWS] EC2, EBS, ELB (1) | 2024.09.23 |