我試圖使用Python API列出一個表中的數據太大反應:BigQuery的結果
tableDataList = tableDataCollection.list(**params).execute(http=http)
允許PARAMS:
list(projectId=*, datasetId=*, tableId=*, pageToken=None, maxResults=None, startIndex=None)
我收到的錯誤是:
apiclient.errors.HttpError: <HttpError 403 when requesting https://www.googleapis.com/bigquery/v2/projects/myproject/queries?alt=json returned "Response too large to return.">
當前我創建一個查詢作業並接收destinationTable回來,並在該目標表上列出數據(用於性能其他)。我讀過,我可以使用allowLargeResults
,但我無法在tabledata.list
或jobs.query
端點上找到它。我在哪裏設置或如何解決問題? 97k行的數據只有大約90mb。
UPDATE:
我已經改變了查詢中使用的目標表(帶jobs.insert
)上,我可以再設置allowLargeResults
到True
。
body = {
'configuration': {
'query': {
'createDisposition': 'CREATE_IF_NEEDED',
'writeDisposition': 'WRITE_TRUNCATE',
'useQueryCache': False,
'allowLargeResults': True,
'destinationTable': {
'projectId': PROJECT_ID,
'datasetId': DATASET_ID,
'tableId': 'tmp_{0}'.format(TABLE_ID),
},
'query': query,
}
}
}
不過,我還是收到了同樣的錯誤:
ResponseTooLarge: Response too large to return.
'明確的目的地'嗯...我會仔細研究,謝謝你的提示。 – Tjorriemorrie 2014-10-31 06:51:48
我更新了我的問題;迄今爲止沒有成功 – Tjorriemorrie 2014-11-08 14:48:49