Ошибка BigQuery для большого файла

Я пытаюсь загрузить json-файл в GoogleBigquery, используя скрипт на https://github.com/GoogleCloudPlatform/python-docs-samples/blob/master/bigquery/api/load_data_by_post.py с очень небольшим изменением. я добавил

,chunksize=10*1024*1024, resumable=True)) 

к MediaFileUpload .

Скрипт отлично работает для образца файла с несколькими миллионами записей. Фактический файл составляет около 140 ГБ с примерно 200 000 000 записей. insert_request.execute () всегда терпит неудачу с

 socket.error: `[Errno 32] Broken pipe` 

через полчаса или около того. Как это можно зафиксировать? Каждая строка меньше 1 КБ, поэтому она не должна быть проблемой квоты.

One Solution collect form web for “Ошибка BigQuery для большого файла”

При обработке больших файлов не используются потоковые передачи, а пакетная загрузка: потоковая передача будет легко обрабатывать до 100 000 строк в секунду. Это очень хорошо для потоковой передачи, но не для загрузки больших файлов.

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

Решение. Вместо того, чтобы загружать большие куски данных через POST, сначала выполните их в Google Cloud Storage, а затем скажите BigQuery прочитать файлы из GCS.

Обновление : беседуя с командой инженеров, POST должен работать, если вы попробуете меньший chunksize .

Interesting Posts

python 3 аргумента 6 данная ошибка

Как успешно передать ссылку функции на функцию reverse () Django?

Получение даты из сложной строки в Python

Создание модели Django из существующих баз данных MongoDB

Как стекировать векторы разной длины в NumPy?

Как преобразовать результат Pandas DataFrame в пользовательский формат json

Tensorflow SKCompat преобразует значения float32 в Pandas dataframe в значения tf.float64, а затем дает ошибку

Python 2.6 TreeMap / SortedDictionary?

defaultdict constant_factory не ведет себя так, как ожидалось

ищет быстрый способ вычисления парных расстояний многих строк

Получить информацию из подписок в главном списке элегантно

Использование node-python для выполнения скриптов python из веб-приложения, размещенного под python?

Вызов метода перехвата в Python

Предупреждение. Инструменты командной строки для Xcode не отображаются, как установлено; большинство портов, вероятно, не смогут построить

в python, как выполнить итерацию вложенного dict с динамическим числом гнезд?

Python - лучший язык программирования в мире.