40

Phase 2: 실시간 윈도우 집계

Weekly Project: 실시간 이커머스 파이프라인

학습 목표

Watermark를 설정할 수 있다 5분 윈도우 집계를 구현한다 Update 모드로 Delta Lake에 저장한다

Phase 2: 윈도우 집계

5분 윈도우로 매출을 집계하고 Delta Lake에 저장합니다.

구현 순서

  1. fact_orders를 스트림으로 읽기
  2. Watermark 설정 (10분)
  3. 5분 윈도우 집계
  4. agg_metrics에 저장 (Update 모드)

집계 항목

항목계산
total_salesSUM(amount)
order_countCOUNT(*)
avg_order_valueAVG(amount)
unique_customersCOUNT(DISTINCT customer_id)
에디터 로딩 중...
힌트 보기
  • readStream.format("delta")로 Delta 테이블 스트림 읽기
  • withWatermark()는 groupBy 전에 호출
  • F.window("timestamp_col", "5 minutes")로 윈도우 생성
  • Update 모드는 변경된 윈도우만 출력
  • countDistinct()로 고유 고객 수 계산
정답 보기
에디터 로딩 중...