AWS S3 복제 (선택 기준 & 비용)

AWS S3 버킷 간 복제를 수행하는 경우 단순한 aws s3 cp 명령어로 충분한 경우가 많습니다.

하지만, 수천~수백만 개의 객체를 복제하거나, 교차 계정/리전 간 복제가 필요할 경우엔

s3 cp 명령어 보단 S3 Batch Operations 사용이 더 적합한 경우가 많습니다.

NDS에서는 CLI vs S3 Batch 선택 기준을 다음과 같이 권장 드립니다.

항목AWS CLIS3 Batch Operations
적합한 상황단일 파일, 소량 복제, 일회성수천~수백만 개, 대규모 복제
실행 위치사용자 로컬/EC2 등AWS 내부에서 수행
자동화 방법스크립트 + cronBatch Job으로 정의
병렬 처리직접 병렬화 구현 필요자동 병렬 처리
작업 추적/로깅수동 구현 필요CloudWatch + 리포트 지원
권한 설정단순 (GetObjectPutObject)복잡한 IAM Role + Bucket 정책
비용S3 API 요금만 발생추가 Batch 비용 발생
보존정책/태그 포함불가가능 (ReplicateTags 등 포함)

사용 시나리오별 추천

사용 예시추천 도구이유
특정 파일 몇 개 복사aws s3 cp빠르고 간편
하루 1회 특정 Prefix 백업aws s3 sync + cron간단한 자동화
수백만 개 객체 교차 계정/리전 복제S3 Batch Operations병렬 처리 + 태그/소유권 전환 포함
객체 목록(csv/json) 기준 복제S3 Batch Operations매니페스트 기반 대규모 작업에 적합
실시간 이벤트 기반 복제❌ (추천 안됨)Replication Rule이나 EventBridge 사용 고려

S3 Batch Operations 비용 구조

(2025/05 기준이며, 정확한 계산은 – https://calculator.aws/#/ 참고 바랍니다.)

1. 작업 요청 요금 (Job 단위)

항목요금
Batch 작업 1건 생성$0.25 USD
  • 작업 요청이 생성되기만 해도 요금이 청구됩니다.

2. 객체 작업 요금(Per Object)

항목요금
객체 1,000개 복제$0.01 USD
객체 1개당$0.00001 USD

예시 계산

항목수치계산비용
Job 1건11 × $0.25$0.25
객체 복제 10,000개10,000 / 1,000 = 1010 × $0.01$0.10
총합$0.35

유의사항

  • 리전 간 복제시 Data Transfer 요금 별도 부과
  • S3 API 호출 (GetObjectPutObject) 비용도 추가로 발생 합니다.
  • 실패한 객체도 작업 수에 포함되므로 비용에 반영됩니다.
  • S3 Batch 작업은 CloudWatch + 리포트 버킷으로 추적 가능 합니다.

복제 대상 수나 작업 방식에 따라 효율성과 비용이 크게 달라질 수 있습니다.
일회성 vs 대규모수동 vs 자동화단순 복사 vs 정책 포함 복제 여부등을 고려해 적절한 방식을 선택하여야 하며,

관련하여 고민이 있으신 경우, NDS 클라우드 기술팀으로 문의 부탁드립니다.

SA 오승우