S3 비용 최적화 시뮬레이션
S3 Cost Optimizer · RFP 3-1 정조준
S3 비용 최적화 시뮬레이션
대용량 CAD 스토리지 운영 비용을 Lifecycle 정책별로 시뮬레이션 — 본사관리자가 임계값 직접 컨트롤
Amazon S3가 뭔가요? — 30초 가이드
처음 보시는 분도 아래 시뮬레이션을 이해할 수 있도록 핵심 개념을 짧게 정리합니다.
Amazon S3 = AWS의 객체 스토리지 서비스
본 사업의 모든 CAD 파일·심사 결과물·감사 로그가 여기에 보관됩니다. 글로벌 99.999999999% (11-나인) 내구성으로 데이터 손실 위험 거의 0.
같은 데이터 · 4개 티어 · 다른 가격 — 핵심 거래(Trade-off): 저렴한 대신 느림
AWS S3는 "저장 비용 vs 접근 속도 vs 검색 비용" 3가지 균형을 다르게 잡은 4개 옵션을 제공합니다. 자주 읽는 데이터는 비싸도 빨라야 하고, 거의 안 읽는 데이터는 느려도 저렴한 곳에 보관하는 거래입니다. 본 시스템은 운영 단계에 맞춰 데이터를 자동 이동시켜 비용을 최적화합니다.
| 티어 | 저장 단가 | 접근 속도 | 검색 비용 | 본질 |
|---|---|---|---|---|
| S3 Standard | $0.025/GB | 밀리초 (실시간) | 무료 | 지금 자주 읽는 데이터 |
| S3 IA (Infrequent Access · 저빈도 접근) | $0.0138/GB | 밀리초 (실시간) | GB당 $0.01 | 가끔 읽지만 읽을 땐 빨라야 함 |
| S3 Glacier Flexible Retrieval | $0.0045/GB | 1분 ~ 12시간 | GB당 $0.01 | 거의 안 읽는 장기 보관 |
| S3 Glacier · 분쟁 365일 강제 보존 | $0.0045/GB | 1분 ~ 12시간 | GB당 $0.01 | 법적 증빙용 — 평생 안 읽을 수도 있음 |
본 사업 사용 케이스 매핑
- ▪S3 Standard — Day 1~30 — 진행 중 작업·심사 단계 (디자이너·치기공소가 매일 다운로드·재업로드)
- ▪S3 IA (Infrequent Access · 저빈도 접근) — Day 30~90 — 심사 완료 후 분쟁 대응·회차 검토 (가끔만 다운로드, 월 1~2회)
- ▪S3 Glacier Flexible Retrieval — Day 90+ — 장기 아카이브 (거의 안 읽음, 분쟁 시에만 1~12시간 대기)
- ▪S3 Glacier · 분쟁 365일 강제 보존 — 분쟁 케이스 — 한국 전자상거래법 365일 강제 보존 (법적 증빙용)
Lifecycle 정책 = 시간이 지나면 자동 이동
예시: 새로 등록된 CAD → 30일간 Standard 보관 → 30일 후 자동 IA 이동 → 90일 후 자동 Glacier 이동. 본사관리자가 이 임계값(30일/90일)을 직접 컨트롤하여 운영 정책 자율성 확보.
분쟁 케이스 = 별도 정책 365일 강제 보존
분쟁 발생 시 CloudTrail 감사 로그 + 작업 데이터를 365일 강제 보존 (한국 전자상거래법·법적 증빙 자료). 일반 작업 Lifecycle과 분리되어 일반 작업 비용에 영향 0.
→ 아래 시뮬레이션에서 본사관리자가 임계값을 슬라이더로 변경하면 KPI·차트가 즉시 재계산됩니다. 본 사업 운영 시 본사가 어떻게 비용을 컨트롤할 수 있는지 직접 시연 가능.
시나리오 — 5개 파일이 시간 흐름에 따라 어떻게 이동하는가
같은 폴더 안의 모든 파일이 동일한 정책일 필요는 없습니다. AWS S3는 객체(파일) 단위로 스토리지 클래스를 가지며, 분쟁 케이스만 별도 정책으로 운영할 수 있습니다.
시나리오 설정
치기공소가 2026-05-10에 작업 A-001 ~ A-005 (5건)을 등록한 상황을 가정합니다. 이 중 A-003은 Day 5에 분쟁이 발생하여 dispute=true 태그가 자동 부여됩니다. 나머지 4건은 일반 Lifecycle 정책을 따릅니다.
객체 × 시간 매트릭스 — 5개 파일의 전체 흐름
가로축은 시간 흐름, 세로축은 객체(파일). 셀 색상은 해당 시점의 스토리지 클래스를 의미합니다.
| 객체 | Day 1 등록 직후 | Day 30 IA 전환 | Day 90 Glacier 전환 | Day 180 반년 경과 | Day 365 분쟁 보존 |
|---|---|---|---|---|---|
| A-001 | Standard | IA (저빈도) | Glacier | Glacier | Glacier |
| A-002 | Standard | IA (저빈도) | Glacier | Glacier | Glacier |
| A-003 | Standard | Glacier (분쟁) | Glacier (분쟁) | Glacier (분쟁) | Glacier (분쟁) |
| A-004 | Standard | IA (저빈도) | Glacier | Glacier | Glacier |
| A-005 | Standard | IA (저빈도) | Glacier | Glacier | Glacier |
범례
본 시스템 ↔ AWS S3 — 객체 단위 API 호출 흐름
AWS는 인프라이고, 운영 정책은 본 시스템이 직접 컨트롤합니다.
본 사업 백엔드 (Spring Boot)
분쟁 발생 감지 (반려 5회 누적 자동 트리거)
AWS SDK API 호출
- ▪s3:PutObjectTagging — 객체에 dispute=true 태그 부여
- ▪s3:CopyObject (storage-class: GLACIER) — 즉시 Glacier 강제 이동
- ▪s3:PutBucketLifecycleConfiguration — 분쟁 정책 룰 보장
AWS S3 (한국 리전 · ap-northeast-2)
A-003 객체에 dispute=true 태그 + Glacier 클래스 적용 완료
AWS의 공식 SDK API를 호출하여 본 시스템이 객체별로 정책을 직접 컨트롤합니다. 본사관리자가 운영 정책을 본 시스템에서 박으면, 본 시스템이 AWS API로 자동 반영합니다.
정책 분기 요약 — 일반 4건 vs 분쟁 1건
일반 4건 (A-001 ~ A-005, A-003 제외)
Lifecycle 룰 #1 — 일반 정책
- 1Day 1 ~ 30: S3 Standard ($0.025/GB)
- 2Day 30 ~ 90: S3 IA로 자동 이동 ($0.0138/GB)
- 3Day 90 이후: Glacier로 자동 이동 ($0.0045/GB)
- 4Day 90 이후 스토리지 비용 약 82% 절감
분쟁 1건 (A-003)
Lifecycle 룰 #2 — 분쟁 정책 (격리 보존)
- 1Day 5: 시스템이 dispute=true 태그를 자동 부여
- 2즉시 Glacier로 강제 이동 ($0.0045/GB)
- 3365일 강제 보존 (한국 전자상거래법 정합)
- 4CloudTrail 감사 로그 + 작업 데이터 함께 보존
분쟁 해결 시 처리 — Lifecycle 정책 복귀
Lifecycle 룰 #1 재적용 (단, 365일 감사 보존은 만료까지 유지)
- 1관리자 중재 완료 → 시스템이 dispute=resolved 태그 자동 갈음
- 2Lifecycle 룰 #2 매칭 해제 → 룰 #1 재적용
- 3작업 등록일 기준 일반 Lifecycle 정책 복귀 (Day 30 IA · Day 90 Glacier)
- 4AWS API: PutObjectTagging + CopyObject (등록 경과일 기준 클래스 갈음)
- 5365일 감사 보존 기간은 만료까지 유지 — 법적 증빙 안전장치
분쟁 처리 완료 후에도 365일 감사 보존은 유지됩니다. 본사 운영 자율성과 법적 증빙 안전장치가 양립하는 구조입니다.
기술 근거 — 객체 단위 정책 분리가 가능한 이유
- ▪AWS S3는 버킷·폴더 단위가 아닌 객체(파일) 단위로 스토리지 클래스를 가집니다
- ▪Lifecycle 룰은 태그·prefix·파일 크기 등 필터로 특정 객체만 매칭합니다
- ▪한 버킷 안에 여러 Lifecycle 룰을 동시 운영하여 일반 vs 분쟁 정책을 분리할 수 있습니다
- ▪본 시스템 백엔드가 AWS SDK로 객체별 태그·클래스를 직접 컨트롤합니다
본 시뮬은 일반 작업 비용과 분쟁 케이스 비용을 별도 시리즈로 분리 시각화합니다. 분쟁 발생률 슬라이더를 조정해도 일반 작업 비용에 영향이 없는 이유는 위 객체 단위 정책 분리 때문입니다.
최적화 전
41,861원
Standard 단일 정책
본 시스템
16,841원
IA · Glacier Lifecycle
절감액
25,020원
60% 절감
월 평균 비용
1,403원
본 시스템 기준
월별 누적 스토리지 비용 — 분쟁 케이스 분리 시각화
Standard 단일 vs 본 시스템 (일반 + 분쟁 분리)
현재 Lifecycle 정책 — 본사관리자 설정 반영
0~30일
S3 Standard
실시간 접근 가능 — 진행 중 작업·심사 단계
$0.025/GB
30~90일
S3 IA (Infrequent Access)
저빈도 접근 — 분쟁 대응 / 회차 검토
$0.0138/GB
90일+ (일반)
Glacier Flexible
장기 보관 — 분쟁 시 1~12시간 복구
$0.0045/GB
90일+ (분쟁)
Glacier · 365일 강제 보존
CloudTrail 정합 — 법적 증빙 자료
$0.0045/GB
본사관리자가 임계값을 변경하면 KPI·차트가 즉시 재계산됩니다. 분쟁 케이스는 별도 정책으로 격리 보존되어 일반 작업 비용에 영향 0.