피드로 돌아가기
Deeper into Dataform 3: Auditing Dataform
Dev.toDev.to
Infrastructure

INFORMATION_SCHEMA 최적화를 통한 Dataform 비용 모니터링 파이프라인 구축

Deeper into Dataform 3: Auditing Dataform

Ben Watson2026년 6월 6일3intermediate

Context

Dataform의 증분 업데이트 누락이나 비효율적인 Window Function 사용으로 인한 BigQuery 비용 급증 위험 존재. 개별 Job 단위의 비용 추적이 어려워 전체 플랫폼의 비용 최적화 및 가시성 확보가 절실한 상황.

Technical Solution

  • WorkflowInvocationAction API를 통한 실행 단위별 BigQuery Job ID 일괄 추출
  • INFORMATION_SCHEMA.JOBS_BY_PROJECT 뷰를 활용한 메타데이터 기반의 통합 쿼리 수행
  • 단일 쿼리 내 IN 절과 creation_time 파티션 필터링을 적용하여 시스템 부하 및 쿼리 비용 최소화
  • 추출된 runtime, bytes_billed, slot_ms 데이터를 분석 전용 BigQuery 테이블로 적재하는 파이프라인 설계
  • Pub/Sub과 Cloud Function을 연동하여 Workflow 완료 시점에 작동하는 Event-Driven 자동화 구조 제안

- BigQuery INFORMATION_SCHEMA 조회 시 반드시 파티션 컬럼(creation_time)을 조건절에 포함하여 스캔량 제한 - API 호출 횟수를 줄이기 위해 개별 Job 조회가 아닌 Job ID 리스트를 통한 Batch Query 방식 채택 - 비용 분석 데이터 자체를 Dataform으로 재가공하여 메타데이터 분석 루프 구축 검토

원문 읽기