Перечислите все таблицы в наборе данных в bigquery с помощью bq CLI и сохраните их в облачном хранилище Google - PullRequest
0 голосов
/ 16 января 2019

У меня около 108 таблиц в наборе данных. Я пытаюсь извлечь все эти таблицы, используя следующий скрипт bash:

# get list of tables
tables=$(bq ls "$project:$dataset" | awk '{print $1}' | tail +3)

# extract into storage
for table in $tables
do
    bq extract --destination_format "NEWLINE_DELIMITED_JSON" --compression "GZIP" "$project:$dataset.$table" "gs://$bucket/$dataset/$table.json.gz" 
done

Но, похоже, bq ls показывает только около 50 таблиц одновременно, и в результате я не могу извлечь их в облачное хранилище.

Можно ли в любом случае получить доступ ко всем 108 таблицам с помощью команды bq ls?

1 Ответ

0 голосов
/ 16 января 2019

Число строк по умолчанию при перечислении таблиц, которые будут отображаться bq ls, равно 100. Это можно изменить с помощью параметра командной строки --max_results или -n.

Вы также можете установить значения по умолчанию для bq в $HOME/.bigqueryrc.

Добавление флагов в .bigqueryrc

...