피드로 돌아가기
Serverless ETL/ELT Architecture with S3, EventBridge, Lambda, Step Functions, and Glue
Dev.toDev.to
Backend

AWS S3·EventBridge·Lambda·Step Functions·Glue를 조합해 검증·격리·품질 게이트를 명시적으로 분리한 이벤트 기반 데이터 레이크 수집 아키텍처

Serverless ETL/ELT Architecture with S3, EventBridge, Lambda, Step Functions, and Glue

Renaldi2026년 3월 29일25intermediate

Context

데이터 수집 파이프라인에서는 정상 동작보다 예외 상황 처리가 더 복잡하다. 파일 형식 오류, 중복 전달, 스키마 변동, 부분 실패, 데이터 품질 문제 등 여러 장애가 발생할 수 있다. 기존 아키텍처에서는 이러한 예외를 처리하거나 재실행할 명확한 메커니즘이 없었다.

Technical Solution

  • S3 원본 데이터를 raw-ingest 버킷에 저장하고, EventBridge를 통해 경로 프리픽스와 파일 타입 기반으로 라우팅: 생산자 변경 없이 워크플로를 재배치할 수 있음
  • Lambda 검증 단계를 도입해 파일명·크기·헤더·파티션키·중복 여부를 경량으로 확인: 검증 통과 시 validated 버킷으로, 실패 시 quarantine 버킷으로 라우팅
  • Step Functions Standard를 사용해 Glue 작업(job.sync 패턴)과 데이터 품질 체크를 순차적으로 실행: Express는 Glue 동기 통합을 지원하지 않으므로 부적합
  • Glue Data Quality를 활용해 변환 후 DQDL(Data Quality Definition Language) 규칙으로 품질 게이트 강제: 불합격 데이터는 quarantine 버킷으로 격리
  • 각 처리 단계(EventBridge → Lambda → Step Functions → Glue → DQ)에 runId를 전파: 로그 추적과 재실행 가능성을 보장

Impact

아티클에 명시된 정량적 수치가 없음.

Key Takeaway

데이터 수집 아키텍처의 신뢰성은 '데이터가 S3에 도착 = 신뢰할 수 있는 데이터'라는 가정을 거부하고, 착지·검증·변환·품질 강제·격리 각 단계를 명시적으로 분리했을 때 확보된다. 각 단계를 독립적으로 모니터링하고 재실행 가능하게 설계하면 운영 복잡도와 장애 대응 시간이 크게 단축된다.


AWS를 사용해 데이터 수집 파이프라인을 구축하는 팀에서는 EventBridge 규칙으로 데이터셋별 라우팅을 분리하고, Lambda로 형식과 스키마 검증을 먼저 수행한 뒤, Step Functions에서 Glue 작업(표준 워크플로, job.sync 패턴 사용)과 Glue Data Quality 체크를 순차 실행하면, 검증 실패나 품질 미달 데이터를 자동으로 격리하면서도 원본을 보존해 재처리할 수 있다.

원문 읽기