BigQueryInsertJobOperator는 BigQuery에 SQL 쿼리를 실행하는 데 사용되며, 집계 SQL 변환을 실행하는 데 적합합니다. retry 매개변수를 3으로 설정하면 작업 실패 시 3회 재시도하게 됩니다. emailonfailure 매개변수를 true로 설정하면 작업 실패 시 이메일 알림을 보낼 수 있습니다. Cloud Composer는 이러한 스케줄링, 재시도, 알림 기능을 통합하여 복잡한 워크플로우를 관리하는 데 효과적입니다.
BigQueryUpsertTableOperator는 테이블에 데이터를 삽입하거나 업데이트하는 데 사용되므로, 단순히 SQL 변환을 실행하는 본 시나리오에는 적합하지 않습니다. BigQuery 예약 쿼리는 스케줄링 기능을 제공하지만, 3회 연속 실패 후 이메일을 보내는 복잡한 로직을 직접 구현하기 어렵습니다. Pub/Sub와 Cloud Functions를 사용하는 방법은 가능하지만, Cloud Composer의 내장 기능을 활용하는 것이 더 간결하고 효율적입니다.