Ошибка загрузки паркета BigQuery - несовместимые типы для поля INT32 в Parquet против двойного в схеме - PullRequest
0 голосов
/ 16 января 2019

Я пытаюсь загрузить список файлов паркета в таблицу BigQuery, но получаю сообщение об ошибке:

bq --location=EU load --source_format=PARQUET project:Input.k_2017_11_new "gs://my_bucket/2017_11/11/*.parquet"

Ожидание bqjob_r557b5eb5986df8a0_0000016855915d09_1 ... (34 с) Текущее состояние: ВЫПОЛНЕНО

Ошибка BigQuery в операции загрузки: ошибка обработки задания 'project: bqjob_r557b5eb5986df8a0_0000016855915d09_1': ошибка при чтение данных, сообщение об ошибке: несовместимые типы для поля 'data.list.element.p': INT32 в Паркет против двойного в схеме

Мне на самом деле не нужно поле, которое вызывает ошибку, но я не могу найти способ пропустить этот столбец.

Есть ли решение этой проблемы?

Я попытался указать схему с помощью файла json и установить для этого поля значение FLOAT или INT64, STRING, но пока ничего не работает.

Ответы [ 2 ]

0 голосов
/ 03 июня 2019

У меня была похожая проблема при использовании python, когда при попытке записи в bq был создан дополнительный столбец.

Параметр LoadJobConfig"игнорировать неизвестные значения" исправил мою проблему и может быть передан как --ignore_unknown_values ​​в командной строке

0 голосов
/ 23 мая 2019

Я вижу, что вы используете cloudShell для загрузки из паркета в BigQuery. Попробуйте написать файл схемы в JSON, скопировать или загрузить его в свой экземпляр cloudShell и вызвать файл после того, как вы зададите параметр SOURCE-TO-PATH:

bq --location=EU load --source_format=PARQUET project:Input.k_2017_11_new "gs://my_bucket/2017_11/11/*.parquet" ./mySchema.json
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...