[reinvent 2025] [신규 출시] Amazon S3 Tables 복제 기능을 활용한 멀티 리전 데이터 레이크 구축
Summary
데이터 레이크 글로벌 운영에 대한 수요가 많아지면서, 멀티 리전 구조를 구성하는 것은 꽤 복잡한 일이었습니다. S3 Tables에 새로 추가된 복제 기능이 어떤 문제를 해결해주는지, 그리고 실제 운영에서 어떤 장점이 있을지 중심으로 정리해보았습니다.
리인벤트 2025 테크 블로그의 더 많은 글이 보고 싶다면?
Overview
들어가며
멀티 리전 데이터 레이크의 필요성
1. 성능
멀티 리전 데이터 레이크는 사용자나 분석가가 위치한 지역 근처에 데이터를 배치함으로써 쿼리 속도를 높이고, 리전 간 데이터 전송 비용을 줄여줍니다. 예를 들어, 싱가포르, 런던, 뉴욕의 데이터 과학자가 미국 동부 리전의 데이터를 조회할 경우, 싱가포르에서는 쿼리가 느려지고 추가 비용이 발생할 수 있습니다.
2. 규제
의료, 금융 등 규제가 엄격한 산업에서는 데이터 복제본을 주 데이터와 별도로 격리하여 보관해야 합니다. 이는 재해 복구, 규제 준수, 시스템 복원 등 다양한 목적을 위해 필요하며, 일부 규제에서는 최소 500마일 이상 떨어진 위치에 별도의 암호화된 복제본을 두도록 요구하기도 합니다.
3. 데이터 보호
Iceberg의 시간여행 기능은 이전 버전의 데이터를 복원할 수 있지만, 테이블 삭제, 데이터베이스 전체 삭제, 랜섬웨어 등 예상치 못한 상황에서는 충분하지 않을 수 있습니다. 따라서 데이터의 가용성과 안전성을 높이기 위해 리전 간 복제는 필수 요소가 되고 있습니다.
Iceberg 복제의 기술적 과제

1. S3 Replication
소스 버킷을 대상 버킷으로 복제하는 방법입니다. 이 방식은 비동기적이므로 스냅샷 순서 관리가 필요하며, 메타데이터 파일에는 절대 경로가 포함되어 있어 대상 버킷으로 변환하는 커스텀 로직이 필요합니다. 또한, 스토리지 계층에서만 복제가 이루어지므로 카탈로그와 애플리케이션과의 동기화가 필요합니다.
2. 사용자 지정 ETL/Spark 작업
소스 테이블의 논리적 스냅샷을 사용자 지정 ETL이나 Spark 작업을 통해 대상에 복제하는 방식입니다. 이를 위해서는 소스에서 복제된 스냅샷의 마지막 상태 추적, 오류 처리, 스키마 변경, 파일 압축 적용 등과 같은 사항들을 고려해야 합니다.
3. 이중 쓰기
애플리케이션이 두 리전에 동시에 데이터를 쓰는 방식입니다. 복제 인프라가 애플리케이션의 핵심 경로에 들어가므로 성능, 지연, 쓰기 성공 확인 등 다양한 설계 고려가 필요합니다.
위 방법들을 통해 멀티 리전을 구축할 수 있지만, 많은 고객들은 보다 간단하고 쉬운 방법을 원합니다.
S3 Tables에 대한 복제 기능 발표

Read-only replicas

S3 Tables는 Iceberg 기반 데이터레이크를 쉽게 멀티 리전으로 확장할 수 있도록 읽기 전용 복제본(Read-Only Replica)을 제공합니다.
– Same Identity
복제를 설정하면 동일한 네임스페이스와 테이블 이름을 가진 복제본이 자동 생성됩니다.
덕분에 애플리케이션이나 쿼리 구성을 복잡하게 수정하지 않고도 동일한 테이블 명칭을 그대로 사용할 수 있습니다.
– Fully replicated
복제를 활성화하면 현재 테이블의 모든 스냅샷을 자동 백필(backfill)하고, 이후 발생하는 모든 쓰기/업데이트도 지속적으로 반영하여 원본과 동일한 상태를 유지합니다.
– Iceberg-native
Iceberg의 스키마 변경, 메타데이터 업데이트 등 구조적 변화가 있을 때 이를 정확하고 일관되게 복제본에 반영합니다.
– Application ready
읽기 전용 복제본은 Amazon Athena, Apache Spark, DuckDB 등 Iceberg 호환 쿼리 엔진에서 즉시 활용 가능하도록 최적화되어 있습니다.
이러한 복제 방식은 다음과 같은 특징을 갖습니다.

1. 운영 단순화
복제 과정에서 필요한 수동 작업을 제거하여 운영 부담을 크게 줄일 수 있습니다.
몇 번의 클릭과 간단한 설정만으로 특정 테이블 또는 전체 데이터 레이크를 복제할 수 있으며, 감사 및 모니터링 기능도 기본 제공됩니다. 또한 AWS Glue Data Catalog, Lake Formation과도 기본 통합되어 다른 리전에서도 동일한 데이터 레이크 환경을 빠르게 구성할 수 있습니다.
2. 확장성과 유연성
사용자는 리전별 특성에 맞게 복제본을 자유롭게 구성할 수 있습니다.
- 스토리지 클래스(Standard / Intelligent-Tiering) 선택
- 리전별 별도 보존 주기 설정
- 원본과 독립적인 암호화 키 적용
이러한 유연성은 비용 최적화, 규제 대응, 백업 전략 등 다양한 목적에 맞게 복제본을 맞춤화할 수 있게 해줍니다.
3. Apache Iceberg 최적화된 설계 방식
소스의 커밋, 스냅샷 순서를 그대로 보존해 순서 기반으로 복제를 수행하고 메타데이터 내부의 절대 경로를 복제본 버킷 구조에 맞게 자동 변환하여 Iceberg의 변경 기록을 정확히 파악하고 안전하게 병합(Merge)함으로써, 장기간 보존되는 리전 복제본도 정합성 문제없이 안정적으로 관리할 수 있습니다.


