2017-04-11 17 views
1

GoogleクラウドでAPIを実行すると、大きなクエリが呼び出されます。BigQuery allow_large_resultsが期待通りに機能しない

私のプログラムは、このようなものです:

bigquery_client = bigquery.Client();

DEF BQ(Q):

query_results = bigquery_client.run_sync_query(query); 
query_results.use_legacy_sql = True; 
query_results.allow_large_results = True; 
query_results.destinationTable = {"projectId": my id,"tableId": my table, "datasetId": my dataset}; 
query_results.run(); 

return query_results 

Iが得る結果は依然として10 Mデータに限ら完全結果の一部です。どうすればこの制限を回避できますか?

答えて

0

allowLargeResults(trueに設定されている場合)は、わずかなコストでパフォーマンスの面で任意の大きな結果表を作成できます。 destinationTableを設定する必要があります。
あなたのクライアントに結果を得るには依然として制限がありますので、結果全体を得るには

予想される結果が128MB未満の場合は、テーブルに保存/保存する必要はなく、 - pageToken

+0

ありがとうミハイル! 10M以上の結果を取得し、テーブルとして保存するのではなくサーバーに格納する方法はありますか? – Stephen

+0

@Stephen - 更新された回答を見る –

関連する問題