Расписание удаления таблицы BQ - PullRequest
0 голосов
/ 28 ноября 2018

Я передаю данные в BQ, каждый день я запускаю запланированное задание в Dataprep, которое берет данные за 24 часа, модифицирует некоторые данные и создает новую таблицу в наборе данных BQ с данными за 24 часа.

Хотя исходная таблица остается неизменной и продолжает собирать данные.

Я хотел бы удалить все строки в таблице после того, как dataprep сделает копию, чтобы собрать новые 24 часа потоковой передачи данных

Как я могу сделать это автоматизированным, я не могу найти ничего в dataprep, который удаляет исходную таблицу и создает новую таблицу.

Ответы [ 2 ]

0 голосов
/ 28 ноября 2018

Вы можете сделать это, настроив свою таблицу как секционированную таблицу , поскольку вы постоянно принимаете данные.

Эта опция позволяет сделать это вручную:

bq rm '[YOUR_DATASET].[YOUR_TABLE]$xxxxxxx'

И со временем истечения вы можете установить время, когда будут удалены данные таблицы:

bq update --time_partitioning_expiration [INTEGER] [YOUR_PROJECT_ID]:[YOUR_DATASET].[YOUR_TABLE]
0 голосов
/ 28 ноября 2018

Вы можете использовать Запланированный запрос для очистки таблицы:

https://cloud.google.com/bigquery/docs/scheduling-queries

Запланированные запросы поддерживают DDL, поэтому вы можете запланировать запрос, удаляющий все строки из этой таблицы, илиудаляет таблицу целиком, ежедневно.в определенное время.

...