bq load: «Ошибка BigQuery в операции загрузки: не найдено: Project ...» - PullRequest
0 голосов
/ 02 июля 2018

Я пытаюсь загрузить некоторые данные ndjson. Во-первых, создание таблицы работает без нареканий:

> bq mk --table <project-id>:<my-dataset.newtable> newtable.schema.json
Table '<project-id>:<my-database.newtable>' successfully created.

Однако команда bq load не выполняет:

> bq load --source_format=NEWLINE_DELIMITED_JSON <project-id>:<my-dataset.newtable> gs://<project-id>.appspot.com/newtable.ndjson
BigQuery error in load operation: Not found: Project <project-friendly-name>

Также обратите внимание:

  • У меня нет проблем с запуском задания из веб-интерфейса BigQuery.

  • Я установил <project-id> в качестве проекта по умолчанию с помощью команды bq init, но я получаю ту же ошибку, даже при создании таблицы, когда я ее не указываю.

Есть ли проблема с некоторыми переменными среды, которые были установлены неправильно?

Ответы [ 2 ]

0 голосов
/ 02 июля 2018

Хорошо. Интересно, что в отличие от bq mk, для bq load выбор <project-id> с [PROJECT_ID]:[DATASET].[TABLE] или через bq init (и параметр --location=[LOCATION] с полностью определенным URI облачного хранилища в качестве файла) все еще не имеет значения .

Мне все равно пришлось бежать:

  • gcloud config set project <project-id>
  • bq load --project_id=<project-id> ...

или

  • gcloud init и выберите целевой проект по умолчанию.

Итак, подведем итог, это работает:

bq load --project_id=<project-id> --source_format=NEWLINE_DELIMITED_JSON <my-dataset.newtable> gs://<project-id>.appspot.com/newtable.ndjson
0 голосов
/ 02 июля 2018

Команда bq load обычно имеет следующую структуру.

bq --location=[LOCATION] load --source_format=[FORMAT] [DATASET].[TABLE] [PATH_TO_SOURCE] [SCHEMA]

Как и в стандартной команде bq load, вам не нужно упоминать проект, если вы загружаете данные в том же проекте, который вы вошли в свой клик. Также вам нужно упомянуть схему, если в вашей команде не установлен флаг автоматического определения.

Следующая команда позволяет вам определить проект, к которому у вас есть доступ.

gcloud config list

...