2015-06-25 1 views
1

Я пытаюсь выбрать большой набор результатов (~ 200K) из Google BigQuery с использованием .net-клиентской библиотеки.Как выбрать большой набор результатов из Google BigQuery, используя библиотеку .net api client без разбивки на страницы

я смог получить только ~ 4K строк на одном кадре (запрос & ответа), Google BigQuery предлагает PageToken, чтобы получить следующий набор результатов. Я могу выбрать все строки из большого запроса через несколько запросов к Google Bigquery (~ 50 Request & Response).

Мой вопрос: Если есть возможность выбрать большой результирующий набор в одном ответе? если да, поделитесь своим кодом (даже JAVA-код тоже в порядке).

ответ

1

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

Шаг запустить большие запроса и экспортировать результаты в файлы, хранящиеся на ГКС:

1) Установить allowLargeResults на верно в вашей конфигурации задания. Вы также должны указать таблицу назначения с флажком allowLargeResults.

Пример:

"configuration": 
    { 
    "query": 
    { 
     "allowLargeResults": true, 
     "query": "select uid from [project:dataset.table]" 
     "destinationTable": [project:dataset.table] 

    } 
    } 

2) Теперь ваши данные в таблице назначения вы установили. Вам нужно создать новое задание и установить export property, чтобы иметь возможность export the table в файл (ы). Экспорт является бесплатным, но вам нужно, чтобы облачное хранилище Google было включено, чтобы поместить туда результирующие файлы.

3) В конце вы загружаете свои большие файлы из GCS.