Загрузка из Google Cloud Console в Google BigQuery с помощью инструмента командной строки


До сих пор я использовал веб-инструмент BigQuery для загрузки из резервной копии моих данных, автоматически сохраненных в облачном хранилище. Я храню эти резервные копии три раза в неделю, в трех разных корзинах в зависимости от дня недели (Понедельник, Среда, Пятница).

Инструмент резервного копирования GAE сохраняет .backup_info файлы с таким длинным именем (например: ahNzfmVnb2xpa2Vwcm9kdWN0aW9uckELEhxfQUVfRGF0YXN0b3JlQWRtaW5fT3BlcmF0aW9uGIrD6wMMCxIWX0FFX0JhY2t1cF9JbmZvcm1hdGlvbhgBDA.entityName.backup_info) и не знаю, как это определяется или если я могу определить более простой. Я могу только дать имя файлам "output-X-retry-Y". Есть ли какой-нибудь способ чтобы изменить это?

С другой стороны, я пытаюсь использовать инструмент командной строки, Я хочу перейти от веб-инструмента к этому.

Я попробовал команду load, но не знаю, как автоматически создать схему из резервной копии, так же, как я делаю это из веб-инструмента в разделе "указать схему".

Я всегда делаю ошибку из-за того, что не указываю схему, пытаясь использовать этот формат:

bq load dataset.table gs://path

Можно ли не определять схему, так же, как я не делать это на веб-инструменте?

1 2

1 ответ:

Если вы запускаете BQ load для импорта резервной копии хранилища данных GAE, вам следует добавить флаг --source_format=DATASTORE_BACKUP. Примечание. Вы должны добавить этот флаг после load, но перед именем таблицы:

bq load --source_format=DATASTORE_BACKUP dataset.table gs://path

Это покажет BigQuery, что вы загружаете из резервной копии хранилища данных, которая имеет схему с самоописанием.

Насколько мне известно, нет способа контролировать сгенерированное имя резервной копии хранилища данных.