S3 비용 계산: 스토리지 클래스·작은 파일·최소 보관 기간 비교
AI Editter
S3의 저장 단가가 낮은 클래스로 옮겼는데 기대만큼 비용이 줄지 않을 수 있습니다. 작은 객체의 최소 과금 크기, 최소 보관 기간, 전환 요청, 조회와 복원 비용이 함께 작용하기 때문입니다.
클래스를 선택하기 전에 “얼마나 오래 둘 것인가”와 “언제 얼마나 빨리 다시 읽어야 하는가”를 정합니다. 백업처럼 보이는 데이터라도 복원 요구가 몇 분인지 몇 시간인지에 따라 선택이 달라집니다.
S3 비용 비교에 필요한 입력값
파일 총용량만 적으면 계산이 부족합니다. 객체 개수와 평균 크기, 한 달 읽기·쓰기 횟수, 전환 예정일과 삭제 예정일을 함께 적습니다. 예를 들어 총 100GB라도 작은 객체가 매우 많은 경우와 큰 파일 몇 개로 구성된 경우는 요청·전환 비용의 비중이 다릅니다. 가격은 사용하는 리전의 현재 가격표를 적용하며, 본문의 예시 단가를 계정 청구액으로 간주하지 않습니다.
객체 크기 분포부터 확인
총용량 1TB라는 정보만으로 비용을 판단하기 어렵습니다. 큰 객체 수천 개와 작은 객체 수천만 개는 요청 수와 메타데이터 비용이 다릅니다. 객체 개수, 크기 구간, 최근 접근, 예정 보관 기간을 Inventory 등으로 조사합니다.
| 확인할 값 | 선택에 미치는 영향 |
|---|---|
| 객체 크기·개수 | 최소 크기 과금·요청 비용 |
| 삭제·덮어쓰기 주기 | 최소 보관 기간 비용 |
| 조회 빈도·조회량 | 검색·조회·전송 비용 |
| 복원 허용 시간 | 아카이브 계층 적합성 |
| 버전 관리 | 비현재 버전 보관 비용 |
Inventory와 분석 기능에도 비용과 준비 시간이 있을 수 있으므로 필요한 범위로 사용합니다. 전체 버킷을 반복 LIST해 분석하는 방식도 요청 비용을 고려합니다.
20KB 객체를 IA로 옮길 때의 계산
S3 Standard-IA와 One Zone-IA는 객체당 최소 과금 크기 128KB를 적용합니다. 따라서 가상의 20KB 객체 100만 개를 보관하면 실제 데이터는 단순 계산으로 약 20GB지만, 해당 크기 기준 과금량은 약 128GB에 해당할 수 있습니다. 이 예시는 십진 단위를 사용한 크기 비교이며 실제 청구 단위와 메타데이터 등은 별도 확인합니다.
저장 단가가 낮아도 과금 대상 크기가 커지면 예상 절감이 사라질 수 있습니다. 작은 파일을 묶는 방식도 후보지만, 일부 파일만 조회할 때의 비용과 처리 복잡도가 늘어나는지 확인해야 합니다.
AWS의 S3 요금 페이지는 클래스별 최소 크기, 최소 기간, 아카이브 메타데이터와 복원 비용을 설명합니다. 실제 금액 계산에는 선택한 리전의 현재 단가를 사용합니다.
최소 보관 기간은 삭제를 막는 설정과 다르다
Standard-IA·One Zone-IA는 최소 30일, Glacier Instant Retrieval·Flexible Retrieval은 90일, Deep Archive는 180일의 최소 저장 기간 과금 조건이 있습니다. 이 기간 전에 삭제·덮어쓰기·전환하면 남은 기간에 대한 요금이 발생할 수 있습니다.
이는 Object Lock처럼 삭제 자체를 제한하는 기능과 다릅니다. 지울 수 있다고 해서 남은 기간의 비용이 없다는 뜻은 아닙니다.
예를 들어 매주 교체하는 임시 산출물을 장기 보관 계층으로 옮기는 정책은 저장 단가만 보면 저렴해 보일 수 있지만, 짧은 수명과 전환 비용을 함께 계산해야 합니다.
조회 요구를 기준으로 후보를 좁힌다
| 자료 특성 | 검토 방향 |
|---|---|
| 자주 읽고 자주 바뀜 | 즉시 접근 계층과 요청 비용 중심 |
| 접근 빈도 예측 어려움 | Intelligent-Tiering의 대상 크기·모니터링 조건 |
| 드물게 읽지만 즉시 필요 | 즉시 조회 가능한 클래스와 조회 비용 |
| 몇 시간 복원 대기 가능 | 아카이브 계층의 복원 절차·비용 |
| 재생성 가능한 단일 AZ 자료 | 장애 범위와 One Zone 조건 검토 |
Intelligent-Tiering도 모든 작은 객체를 자동으로 저렴한 계층으로 옮기는 것은 아닙니다. 128KB 미만 객체의 계층화 조건 등을 공식 요금표에서 확인합니다.
아카이브 복원은 요청을 보냈다는 사실과 실제 파일을 읽을 수 있는 시점을 구분합니다. 복원한 임시 사본의 보관 기간과 비용도 계획에 포함합니다.
Lifecycle 적용 전 비용표
월 비용 예상 =
저장 용량별 비용
+ 객체 전환 요청 비용
+ 읽기·검색·복원 요청 비용
+ 복원 데이터·임시 사본 비용
+ 관련 전송 비용
+ 최소 보관 기간에 따른 잔여 비용
현재 비용과 변경 후 비용을 같은 데이터 집합과 같은 보관 기간으로 비교합니다. 한 달 저장료만 낮아지고 분기 복원 비용이 커지는 경우도 있으므로 대표 조회·복원 시나리오를 포함합니다.
버전 관리 버킷은 현재 버전과 비현재 버전의 정책을 구분합니다. 현재 객체만 전환했다고 이전 버전의 비용까지 줄어드는 것은 아닙니다. 삭제 마커와 실제 데이터 버전도 다른 항목입니다.
소규모 접두사에서 정책과 복원을 시험
업무 자료 전체에 적용하기 전에 제한된 접두사나 태그로 시험합니다. 규칙이 어떤 객체에 적용되는지, 작은 객체 전환 제한과 기존 규칙의 동작이 무엇인지 확인합니다. Lifecycle 관련 조건은 전환 제약 문서를 기준으로 점검합니다.
시험에는 객체 업로드, 예상 클래스 변경, 조회, 필요 시 복원, 삭제 시 비용 해석까지 포함합니다. 복원 목표 시간이 맞지 않으면 저장료가 저렴해도 해당 업무에는 맞지 않는 선택입니다.
정책 적용 후에는 객체 수와 클래스별 용량, 요청·검색 비용을 다시 확인합니다. 클래스 이름을 바꾼 결과보다 같은 복원 요구를 만족하면서 총비용이 줄었는지가 판단 기준입니다.