2013-11-29 3 views
5

Я пытаюсь запустить запрос «выбрать * из tablename». Но это вызывает ошибку типа «Ошибка: ответ слишком большой, чтобы вернуть».Ошибка: ответ слишком большой, чтобы вернуться в большом запросе

Мне удалось обработать другую таблицу, которая содержит ТБ данных. Но я получаю эту ошибку для таблицы, содержащей 294 МБ.

Мне удалось выбрать таблицу, выбрав имя столбца с некоторым ограничением, не способным обрабатывать весь столбец в выбранном запросе. В моем запросе выбора у меня всего 26 столбцов, но я смог выбрать 16 столбцов без ошибок. "select column1, column2, column3, .... column16 из tablename".

Есть ли какое-либо отношение к столбцу и размеру таблицы.

Пожалуйста, помогите мне исправить эту проблему.

Большой Запрос деталей таблицы:

Всего записей: 683038

Таблица Размер: 294 MB

Нет Колонка: 26

ответ

13

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

Если запрос через API,

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

    } 
    } 

При использовании Ок инструмента командной строки,

$ bq query --allow_large_results --destination_table "dataset.table" "select uid from [project:dataset.table]"

При использовании инструмента браузера,

  • Click 'Enable Options'
  • Select 'Allow Large Results'
+1

Не могли бы вы уточнить, как мы можем использовать эту же опцию в инструменте Big Query Browser. – Viswanathan

+0

Вот как вы включаете большие результаты из браузера -> Нажмите «Включить параметры», выберите таблицу, в которой вы хотите сохранить результат, затем установите флажок «Разрешить большие результаты» – user1302884

+0

У меня есть сомнение, что я запускаю этот запрос, это создаст новую таблицу каждый раз ... и когда я снова запрашиваю этот стол, он выбрасывает ALLOWALLRESULT: tRUE. –

0

Попробуйте установить allowLargeResults истину в вашей конфигурации заданий, если вы еще этого не сделали.

Я новичок в Big Query. Можете ли вы обновить меня, где я могу выполнить эти изменения конфигурации работы.

+1

Как вы выполняете запрос? Вы используете веб-интерфейс? Если это так, вы можете нажать кнопку «Включить параметры», чтобы отобразить расширенные параметры запроса, затем выберите «Разрешить большие результаты». Обратите внимание, что вы должны указать таблицу адресатов, когда используете «allowLargeResults» –

+1

@ Jordan Tigani ... я использую bigquery.it не возвращает целые данные ..МОЖЕТЕ ЛИ ВЫ ПОМОЧЬ МНЕ РЕШИТЬ ЭТУ ПРОБЛЕМУ http://stackoverflow.com/questions/39424391/how-to-fragment-bigquery-response-into-10000-in-every-request –

2
jobData = {'configuration': {'query': {'query': sql, 
      'allowLargeResults': 'true', 
      'destinationTable':{ 
         "projectId": "projectXYZ", 
         "tableId": "tableXYZ", 
         "datasetId": "datasetXYZ", 
           } 
         }}} 

Вы можете использовать 'writeDisposition', чтобы указать, следует ли перезаписывать таблицу назначения или нет.

'writeDisposition':'WRITE_TRUNCATE' # If the table already exists, 
            # BigQuery overwrites the table data. 
'writeDisposition':'WRITE_APPEND' # If the table already exists, 
            # BigQuery appends the data to the table 
Смежные вопросы