반응형
AWS 데이터 아키텍처 플로우차트 — 6가지 케이스
AWS Data Engineer Associate 시험에 나오는 핵심 아키텍처 패턴을 케이스별로 정리한 플로우차트이다. 배치 ETL 파이프라인, 실시간 스트리밍 파이프라인, 레이크하우스 Bronze Silver Gold, ML 모델 학습 서빙, 데이터 거버넌스 보안 아키텍처, CDC DB에서 DW 마이그레이션 6가지 아키텍처를 박스와 화살표 흐름으로 도식화했다.
포함된 AWS 서비스
Kinesis Data Streams, Kinesis Firehose, Kinesis Data Analytics, AWS Glue, AWS Glue Crawler, AWS Glue Data Catalog, Amazon EMR, Amazon Athena, Amazon Redshift, Amazon S3, AWS DMS, Amazon RDS, AWS Lambda, Amazon DynamoDB, Amazon OpenSearch, Amazon SageMaker, Amazon QuickSight, AWS Lake Formation, AWS IAM, Amazon Cognito, AWS KMS, AWS CloudTrail, Amazon Macie, Amazon CloudWatch, AWS Step Functions, Amazon MWAA
AWS Architecture Reference
AWS 데이터 아키텍처
케이스별 플로우차트
시험에 나오는 6가지 핵심 패턴 — 박스와 화살표로 한눈에
CASE 01
배치 ETL 파이프라인
정기 스케줄로 데이터를 수집 → 변환 → 적재하는 가장 기본적인 패턴
소스
RDS / Aurora
운영 DB (MySQL, PostgreSQL)
→
S3 Raw Upload
파일 드롭존 (CSV, JSON)
→
External API
공공데이터, SaaS
↓
오케
Amazon MWAA
DAG 스케줄러
(Airflow 그대로)
(Airflow 그대로)
→
트리거
Step Functions
AWS 서비스 연결
State Machine
State Machine
↓
수집
Glue Crawler
스키마 자동 감지
메타데이터 카탈로깅
메타데이터 카탈로깅
→
Glue Data Catalog
중앙 메타데이터
Hive Metastore 역할
Hive Metastore 역할
→
S3 Raw Zone
원본 그대로 보존
Bronze Layer
Bronze Layer
↓
ETL
AWS Glue ETL Job
서버리스 Spark
스키마 변환, 클렌징
스키마 변환, 클렌징
→
Amazon EMR
대규모 Spark 처리
복잡한 집계/조인
복잡한 집계/조인
→
S3 Cleansed Zone
Parquet / ORC
파티셔닝 적용
파티셔닝 적용
↓
적재
Amazon Redshift
DW 적재
COPY 명령으로 S3→DW
COPY 명령으로 S3→DW
→
S3 Curated Zone
Gold Layer
Athena 직쿼리용
Athena 직쿼리용
↓
분석
Amazon Athena
S3 직접 SQL 쿼리
스캔량만큼 과금
스캔량만큼 과금
→
Amazon QuickSight
BI 대시보드
SPICE 인메모리 캐시
SPICE 인메모리 캐시
시험 포인트: Glue vs EMR 선택 기준 — 서버리스·빠른 시작이면 Glue, 클러스터 직접 튜닝·대용량이면 EMR. Redshift로 적재할 때는 S3 COPY 명령이 가장 빠름.
MWAA = 관리형 Airflow Glue Crawler = 자동 스키마 감지 S3 Raw→Cleansed→Curated Athena = 스캔량 과금
CASE 02
실시간 스트리밍 파이프라인
이벤트/로그를 실시간 수집해 즉시 처리하거나 분기해 저장하는 패턴
소스
App / Mobile
클릭스트림, 사용자 이벤트
→
IoT Sensor
실시간 센서 데이터
→
Application Log
서버 로그, 에러 로그
↓
수집
Kinesis Data Streams
샤드 기반 파티셔닝
최대 365일 보존
소비자가 직접 처리
최대 365일 보존
소비자가 직접 처리
vs Kafka → MSK
↓ 분기(Fan-out)
처리
경로 A — 실시간 분석
Kinesis Data Analytics
Apache Flink 기반
SQL 스트림 처리
SQL 스트림 처리
↓
Amazon DynamoDB
집계 결과 실시간 서빙
ms 레이턴시
ms 레이턴시
경로 B — 저장·배치 분석
Kinesis Firehose
자동 버퍼링 → 전달
변환 없이 적재
변환 없이 적재
↓
S3 (Parquet 변환)
Firehose 내장 변환
파티셔닝 자동 적용
파티셔닝 자동 적용
경로 C — 검색·모니터링
AWS Lambda
이벤트 트리거
가벼운 변환 처리
가벼운 변환 처리
↓
Amazon OpenSearch
로그 검색 & 시각화
Kibana 대시보드
Kibana 대시보드
↓ (배치 분석 경로)
분석
Amazon Athena
S3 데이터 SQL 분석
임시 쿼리
임시 쿼리
→
Amazon QuickSight
실시간 대시보드
이상 탐지 시각화
이상 탐지 시각화
핵심 구분: Kinesis Data Streams = 소비자가 직접 처리, 보존·재처리 가능. Kinesis Firehose = 전달 자동화, 소비자 코드 불필요. Kinesis Data Analytics = Streams에서 읽어 실시간 SQL/Flink 처리.
Streams ≠ Firehose (구분 필수) Flink = Data Analytics Firehose → S3 자동 전달 DynamoDB = 실시간 서빙 DB
CASE 03
레이크하우스 — Bronze → Silver → Gold
내가 직접 Iceberg로 짰던 그 구조, AWS로 치환한 버전
소스
공공 API
배치 수집
→
계열사 DB
DMS or JDBC
→
파일 업로드
CSV, Excel
→
실시간 이벤트
Kinesis → Firehose
↓ 원본 그대로 적재
🥉 BRONZE
S3 Raw Zone
원본 무결성 보존
절대 수정 금지
절대 수정 금지
→
Glue Data Catalog
메타데이터 등록
Crawler 자동 실행
Crawler 자동 실행
→
Lake Formation
테이블 등록
접근 권한 부여
접근 권한 부여
↓ 정제·변환 (Glue ETL / EMR)
🥈 SILVER
AWS Glue ETL
스키마 변환
NULL 처리, 중복 제거
NULL 처리, 중복 제거
→
Amazon EMR
대규모 Spark
복잡한 조인·집계
복잡한 조인·집계
→
S3 Cleansed Zone
Parquet + Partitioning
Iceberg 테이블 포맷
Iceberg 테이블 포맷
→
Glue Catalog
업데이트
업데이트
새 스키마 반영
계보 추적
계보 추적
↓ 비즈니스 로직 적용 (집계·지표)
🥇 GOLD
S3 Curated Zone
집계·지표 완료
Athena 서빙용
Athena 서빙용
→
Amazon Redshift
DW 적재
복잡한 BI 쿼리
복잡한 BI 쿼리
↓ 소비
서빙
Amazon Athena
S3 임시 분석
데이터 과학자
데이터 과학자
→
Amazon QuickSight
경영진 대시보드
Self-Service BI
Self-Service BI
→
SageMaker Studio
ML 피처 엔지니어링
모델 학습 데이터
모델 학습 데이터
내 Iceberg 스택 → AWS 치환: Iceberg 테이블 포맷 = S3 + Glue Catalog + Lake Formation 조합. Trino = Athena, Doris = Redshift, DataHub = Glue Catalog. Bronze는 절대 수정하지 않고, Silver에서 품질 보증, Gold에서 비즈니스 로직 완성.
Iceberg = S3+Glue+LakeFormation Lake Formation = 행/열 단위 권한 Bronze 원본불변 원칙 Trino 자리 = Athena
CASE 04
ML 모델 학습 · 서빙 파이프라인
데이터 준비부터 프로덕션 배포까지 — SageMaker 중심 MLOps
데이터
S3 Gold Zone
Feature 엔지니어링 완료
학습 데이터셋
학습 데이터셋
→
SageMaker Feature Store
피처 재사용
온라인/오프라인 저장
온라인/오프라인 저장
↓
개발
SageMaker Studio
JupyterLab IDE
내 JupyterHub 자리
내 JupyterHub 자리
→
SageMaker Experiments
실험 추적
내 MLflow 자리
내 MLflow 자리
↓ 학습 Job 제출
학습
SageMaker Training Job
분산 GPU 클러스터
자동 스케일 후 종료
자동 스케일 후 종료
→
SageMaker Pipelines
MLOps 워크플로우
자동화 재학습
자동화 재학습
→
S3 모델 아티팩트
model.tar.gz 저장
버전별 보관
버전별 보관
↓ 모델 등록
등록
SageMaker Model Registry
버전 관리, 승인 워크플로우
A/B 비교
A/B 비교
→
승인(Approve)
프로덕션 배포 승인
Staging → Prod
Staging → Prod
↓ 배포 (분기)
서빙
실시간 추론
SageMaker Real-time Endpoint
내 Kserve/Triton 자리
ms 레이턴시
ms 레이턴시
↓
API Gateway + Lambda
외부 서비스 연동
인증·라우팅
인증·라우팅
배치 추론
SageMaker Batch Transform
대량 데이터 일괄 추론
비동기 처리
비동기 처리
↓
S3 결과 저장
추론 결과 파일 출력
Athena로 분석
Athena로 분석
벡터 검색
임베딩 생성
텍스트/이미지 벡터화
SageMaker Endpoint
SageMaker Endpoint
↓
OpenSearch k-NN
내 Milvus 자리
유사도 검색
유사도 검색
내 스택 치환 요약: MLflow → SageMaker Experiments, JupyterHub → Studio, Kserve/Triton → Real-time Endpoint, Milvus → OpenSearch k-NN. SageMaker 하나가 MLflow + Jupyter + Kserve 역할을 모두 통합.
MLflow = SageMaker Experiments Kserve = Real-time Endpoint Milvus = OpenSearch k-NN Pipelines = MLOps 자동화
CASE 05
데이터 거버넌스 · 보안 아키텍처
누가, 어떤 데이터에, 어떻게 접근하는지 제어하는 전체 레이어
신원
AWS IAM
AWS 리소스 권한
역할(Role) 기반 접근
역할(Role) 기반 접근
+
Amazon Cognito
앱 사용자 인증
내 Keycloak 자리 (SSO)
내 Keycloak 자리 (SSO)
→
AWS Lake Formation
데이터 레이크 통합 권한
행·열 수준 접근 제어
행·열 수준 접근 제어
↓ 접근 승인된 사용자만
카탈로그
Glue Data Catalog
중앙 메타데이터 저장소
내 DataHub 자리
내 DataHub 자리
→
데이터 검색 & 계보
테이블 정의, 파티션
컬럼 통계 자동 수집
컬럼 통계 자동 수집
→
태그 기반 접근 제어
Lake Formation 태그
민감도 레벨 분류
민감도 레벨 분류
↓
암호화
AWS KMS
암호화 키 중앙 관리
키 로테이션 자동화
키 로테이션 자동화
→
S3 SSE-KMS
서버사이드 암호화
버킷 정책 강제
버킷 정책 강제
→
Redshift 암호화
DW 저장 데이터 암호화
전송 중 TLS
전송 중 TLS
↓
탐지
Amazon Macie
S3 내 PII 자동 탐지
개인정보 위험 알림
개인정보 위험 알림
→
AWS Security Hub
보안 경고 통합
규정 준수 점수
규정 준수 점수
→
자동 대응 (Lambda)
마스킹·격리 자동화
EventBridge 트리거
EventBridge 트리거
↓
감사
AWS CloudTrail
모든 API 호출 기록
"누가 무엇을 했는가"
"누가 무엇을 했는가"
→
Amazon CloudWatch
메트릭·로그·알람
내 Grafana+Prometheus
내 Grafana+Prometheus
→
AWS X-Ray
분산 추적
내 Kiali 자리
내 Kiali 자리
시험 포인트: CloudTrail = API 감사 로그 (누가 뭘 했는가). CloudWatch = 운영 모니터링 (CPU, 메모리, 알람). Macie = S3 PII 자동 탐지. Lake Formation = Glue Catalog 위에 행·열 단위 권한 추가.
CloudTrail = 감사 (Who Did What) CloudWatch = 운영 모니터링 Lake Formation = 열 단위 권한 Macie = PII 자동 탐지
CASE 06
CDC / DB → DW 마이그레이션
운영 DB 변경분을 실시간으로 잡아 DW에 반영하는 패턴 (DMS 기반)
소스 DB
RDS MySQL / PostgreSQL
운영 트랜잭션 DB
binlog / WAL 활성화 필요
binlog / WAL 활성화 필요
→
On-prem Oracle / SQL Server
레거시 DW
마이그레이션 대상
마이그레이션 대상
→
Amazon Aurora
AWS 관리형 RDB
소스로도 타깃으로도
소스로도 타깃으로도
↓ DMS 연결 (Full Load + CDC 동시)
DMS
AWS DMS
Database Migration Service
초기 Full Load + CDC 병행
초기 Full Load + CDC 병행
→
CDC 변경 캡처
INSERT / UPDATE / DELETE
binlog 기반 실시간 추적
binlog 기반 실시간 추적
SCT 도구로
스키마 변환
스키마 변환
↓ 분기 (타깃 선택)
타깃
경로 A — DW 직접 적재
Amazon Redshift
DMS 직접 타깃
Full Load 후 CDC 적용
Full Load 후 CDC 적용
↓
QuickSight
마이그레이션 완료 후
BI 즉시 연결
BI 즉시 연결
경로 B — S3 경유 레이크하우스
S3 Landing Zone
DMS → S3 원본 보존
Parquet 변환 전
Parquet 변환 전
↓
Glue ETL
타입 변환, 정규화
Redshift 스키마 맞춤
Redshift 스키마 맞춤
↓
Amazon Redshift
COPY로 S3→DW 고속 적재
경로 C — 실시간 CDC 스트림
Kinesis Data Streams
DMS CDC → Kinesis
실시간 변경분 스트리밍
실시간 변경분 스트리밍
↓
Lambda / Glue Streaming
변경분 실시간 처리
Upsert 로직 적용
Upsert 로직 적용
↓
Redshift Streaming Ingestion
Kinesis → Redshift 직접
지연 수초 이내
지연 수초 이내
↓ 검증 & 모니터링
검증
DMS 검증 태스크
소스 ↔ 타깃 행 수 비교
데이터 정합성 체크
데이터 정합성 체크
→
CloudWatch 메트릭
CDC 지연 시간 모니터링
에러율 알람 설정
에러율 알람 설정
→
컷오버 계획
트래픽 전환 시점 결정
롤백 플랜 준비
롤백 플랜 준비
시험 포인트: DMS = DB 마이그레이션 + CDC 동시 가능. SCT(Schema Conversion Tool) = 이기종 DB 스키마 변환 (Oracle→Redshift). 동종 DB 마이그레이션(MySQL→Aurora)은 SCT 불필요. CDC는 binlog(MySQL) 또는 WAL(PostgreSQL) 활성화 필수.
DMS = 마이그레이션 + CDC SCT = 이기종 스키마 변환 CDC → Kinesis → 실시간 반영 동종 DB = SCT 불필요
반응형
'Stack > AWS' 카테고리의 다른 글
| [AWS DEA] 문제로 공부하기 6 - Firehose + Lambda (0) | 2026.03.10 |
|---|---|
| [AWS DEA] 문제로 공부하기 5 - Lambda + EventBridge (0) | 2026.03.10 |
| [AWS DEA] 문제로 공부하기 4 - 노드 RAM 볼륨 (0) | 2026.03.09 |
| [AWS DEA] 문제로 공부하기 3 - Lambda · EFS (0) | 2026.03.09 |
| [AWS DEA] 문제로 공부하기 2 - SSE-KMS (0) | 2026.03.09 |