Я получаю эту ошибку
Cannot set destination table in jobs with DDL statements
Когда я пытаюсь повторно отправить задание из функции job.build_resource()
в библиотеке google.cloud.bigquery
.
Кажется, что таблица назначения устанавливается примерно так после этого вызова функции.
'destinationTable': {'projectId': 'xxx', 'datasetId': 'xxx', 'tableId': 'xxx'},
Я делаю что-то не так здесь? Спасибо всем, кто может дать мне какие-либо рекомендации здесь.
РЕДАКТИРОВАТЬ:
Задание изначально запускается этим
query = bq.query(sql_rendered)
Мы сохраняем идентификатор задания и используем его позже для проверки статуса.
Мы получаем работу, как это
job = bq.get_job(job_id=job_id)
Если он соответствует условию, в этом случае он не работает из-за ограничения скорости. Повторяем работу.
Мы повторяем работу, как это
di = job._build_resource()
jo = bigquery.Client(project=self.project_client).job_from_resource(di)
jo._begin()
Я думаю, что это почти весь код, который вам нужен, но буду рад предоставить больше, если это необходимо.
bq.get_job
, поскольку он содержит несвязанные атрибуты, такие как статистика запросов и т. д. (и в данном случае целевую таблицу). - person Elliott Brossard   schedule 29.06.2018