개요
AWS Glue의 Zero-ETL(Self-Managed Database Sources) 기능은 온프레미스 또는 EC2에서 운영되는 자체 관리 데이터베이스(MySQL, PostgreSQL, SQL Server, Oracle)를 대상으로 별도의 ETL 파이프라인 없이 Amazon Redshift로 지속적인 데이터 복제를 구성할 수 있도록 지원합니다. 이 기능을 통해 복잡한 CDC 파이프라인과 ETL 스크립트를 직접 작성하지 않고도 Near-real-time 데이터 분석 환경을 빠르게 활성화할 수 있습니다.
1. 사전 준비
Zero-ETL 통합을 구성하기 위해서는 아래 요소들이 준비되어야 합니다.
1) 네트워크 설정
- 소스 데이터베이스(온프레미스/EC2)와 Glue가 통신 가능한 VPC, 서브넷, 보안 그룹을 구성합니다.
- Redshift 클러스터/Serverless가 같은 VPC에 접근 가능해야 합니다.
2) IAM 권한
- Glue 서비스가 소스·타겟에 접근할 수 있도록 IAM Role을 생성합니다.
- 권한에는 Glue의 glue:GetConnection, Redshift 접근 권한, S3 로그 접근 등이 포함되어야 합니다.
3) AWS Secrets Manager
- DB 접속 정보(사용자명, 비밀번호 등)는 Secrets Manager에 저장하고 IAM Role이 읽을 수 있도록 권한을 부여합니다.
4) Redshift 준비
- Redshift 클러스터 또는 Serverless workgroup 생성
- enable_case_sensitive_identifier 파라미터 활성화 (통합 구성시 필요)
2. 소스 데이터베이스 연결 구성
Zero-ETL 통합은 Glue 콘솔을 통해 생성한 연결(Connection)을 기반으로 실행됩니다.
1) Glue Connection 생성
- AWS Glue 콘솔 → Data connections
- Create connection 선택
- JDBC 유형으로 소스 DB 정보 입력
- 엔드포인트, 포트, DB명, Secrets Manager ARN 등을 입력
- 생성 완료
2) 연결 확인
- 생성된 연결이 정상적으로 테스트되었는지 확인합니다.
- 네트워크 오류 또는 IAM 오류가 발생하면 Glue에서 접근할 수 없습니다.
3. 제로-ETL 통합 생성
1) Glue 콘솔에서 Zero-ETL Integration 생성
- AWS Glue 콘솔 → Zero-ETL integrations
- Create zero-ETL integration 클릭
- Source 선택
- Oracle / SQL Server / MySQL / PostgreSQL 중 하나 선택
- Target 선택
- Amazon Redshift 선택
- 스키마/테이블 필터 및 동기화 옵션 구성
- Create 클릭하여 통합 생성
이 과정에서 Glue가 백그라운드에서 DMS 리소스 구성과 CDC 구성을 자동으로 수행합니다.
2) CDC & 초기 적재
- Zero-ETL 통합은 **초기 스냅샷 적재 후 지속적인 Change Data Capture(CDC)**를 자동으로 활성화합니다.
- 수동 스크립트나 Lambda를 추가할 필요가 없습니다.
4. Redshift 측 설정
1) 대상 데이터베이스 생성
- Redshift 내부에서 복제된 데이터를 저장할 스키마/테이블을 자동 생성 또는 수동 생성할 수 있습니다.
2) Redshift 접근
- 복제된 테이블에 대해 SQL 기반 쿼리, materialized view, 분석 작업 수행 가능
- BI 도구 또는 Redshift Spectrum/Athena 연동으로 분석 환경 확장 가능
5. 모니터링 및 운영
1) 통합 상태 확인
- Glue 콘솔의 Zero-ETL integrations 목록에서 상태를 바로 확인합니다.
- 메트릭 및 로깅을 활성화하여 오류 모니터링이 가능합니다.
2) 오류 알림
- AWS EventBridge / SNS 등을 활용하면 통합 장애 발생 시 알림을 받을 수 있습니다.
3) 삭제 및 정리
- 불필요해진 통합은 콘솔에서 삭제합니다.
- 삭제해도 원본 데이터베이스나 Redshift 데이터는 보존되며, 단지 동기화만 중단됩니다.
6. 주요 팁
- 테스트 네트워크부터 먼저 구성 후 운영으로 확장하세요.
- Glue 연결 및 Secrets Manager 권한 오류가 가장 빈번한 문제입니다.
- 스키마 변경이 잦은 경우 스키마 필터링과 매핑 전략을 먼저 설계하세요.
7. 지원 리전 및 특징
- AWS Glue Zero-ETL Self-Managed 기능은 주요 리전을 지원합니다 (예: Seoul, Ohio 등).
- Redshift와의 통합은 추가 비용 없이 기존 Glue/Redshift 과금 모델로 작동합니다.
결론
제로-ETL 통합 기능을 기반으로 소스 DB → Redshift 복제를 실질적으로 구성할 수 있는 단계를 정리했습니다.
Glue Zero-ETL은 기존 ETL 개발 부담을 제거하고, 분석 데이터 파이프라인 구축 시간을 크게 단축시키는 효과가 있습니다.
'AWS' 카테고리의 다른 글
| [AWS] Amazon EMR Spark 업그레이드 (0) | 2025.12.28 |
|---|---|
| [AWS] Amazon S3 Tables 자동 복제(Replication) 설정 방법 (0) | 2025.12.27 |
| [AWS] AWS Backup으로 Amazon EKS 클러스터 백업하기 (0) | 2025.12.27 |
| [AWS] ECS 롤링 배포 서비스 가용성 향상 방법 (0) | 2025.12.24 |
| [AWS] EKS 네트워크 observability dashboard 구성 (0) | 2025.12.23 |