RSS DEV 커뮤니티

빅쿼리 스케줄드 쿼리에서 @run_date에 주의하세요 – 특히 KST/JST에서는!

Google BigQuery에서 @run_date 함수는 Scheduled Queries UI에서 수동으로 실행할 때 쿼리의 참조 날짜를 실행 시간으로 자동 설정합니다. 그러나 예약된 시간에 자동으로 실행하도록 설정하고 시간대를 명시적으로 설정하지 않으면 쿼리가 UTC에서 실행됩니다. 이렇게 하면 특히 UTC 자정에 쿼리가 실행되어 @run_date가 로컬 시간의 이전 날짜로 평가되는 예상치 못한 동작이 발생할 수 있습니다. 특히 UTC+9인 대한민국 또는 일본과 같은 국가에서는 이 문제가 특히 심각합니다. 이러한 문제를 피하려면 쿼리를 예약할 때 시간대를 명시적으로 설정하는 것이 필수적입니다. 또한, @run_time을 사용하여 시간대를 제어할 수도 있습니다. @run_time을 사용할 때는 DATE()로 감싸지 않아도 됩니다. 예를 들어 'Asia/Seoul' 또는 'Asia/Tokyo'와 같은 시간대를 설정할 수 있습니다. 많은 데이터마트가 시간대 인식을 고려하지 않고 구축된 경우에는 수정이 필요하지만 시간대를 명시적으로 설정하면 이러한 문제를 예방할 수 있습니다.
favicon
dev.to
Be Careful with @run_date in BigQuery Scheduled Queries – Especially in KST/JST!