2016-12-22 2 views
1

Мне нужно загрузить около 1 миллиона строк в таблицу bigquery. Мой подход будет заключаться в том, чтобы записывать данные в облачное хранилище, а затем использовать load api для загрузки нескольких файлов одновременно. Каков наиболее эффективный способ сделать это? Я могу распараллелить запись в часть gcs. Когда я вызываю load api, я передаю все uris, поэтому мне нужно только позвонить ему один раз. Я не уверен, как эта загрузка проводится в бэкэнд. Если я передам несколько имен файлов, будет ли этот запуск загрузки несколькими процессами? Как я могу определить размер каждого файла, чтобы получить максимальную производительность? ThanksЗагрузка файлов из GCS в BigQuery - какой лучший подход?

ответ

3

Поместите все миллионы строк в один файл. Если файл не сжимается, BigQuery может читать его параллельно со многими рабочими.

От https://cloud.google.com/bigquery/quota-policy

  • BigQuery может считывать сжатые файлы (.gz) до 4 Гб.

  • BigQuery может читать несжатые файлы (.csv, .json, ...) до 5000 ГБ. BigQuery вычисляет, как читать его параллельно - вам не нужно беспокоиться.

+0

Спасибо за ответ. Итак, ручное разделение файла на несколько не ускорит его? –