Сообщество RSS DEV

Будьте осторожны с @run_date в запланированных запросах BigQuery – особенно в KST/JST!

В Google BigQuery функция @run_date автоматически устанавливает ссылочную дату для запроса на момент его выполнения, но только когда запрос выполняется вручную из интерфейса Scheduled Queries. Когда запрос запускается автоматически в запланированное время без явного указания часового пояса, запрос выполняется в UTC. Это может привести к непредвиденному поведению, особенно если запрос выполняется через полночь UTC, в результате чего @run_date оценивается как предыдущая дата по местному времени. Это особенно проблематично для стран, таких как Южная Корея или Япония, которые находятся в UTC+9. Чтобы избежать этой проблемы, важно указывать часовой пояс явно при планировании запросов. Кроме того, использование @run_time вместо @run_date позволяет контролировать точное время с учетом часового пояса. При использовании @run_time не обязательно оборачивать в DATE(), если это не требуется. Примеры установки часового пояса включают DATE(@run_time, 'Asia/Seoul') и DATE(@run_time, 'Asia/Tokyo'). Многие хранилища данных, построенные без учета часового пояса, потребуют исправлений, но явное указание часового пояса может предотвратить такие проблемы.
favicon
dev.to
Be Careful with @run_date in BigQuery Scheduled Queries – Especially in KST/JST!
Create attached notes ...