2016-08-01 13 views
1

Java APIを使用して非同期ジョブでデータを照会するBigQuery documentationでは、タイムアウトなしでjobs.getQueryResults(jobId)を呼び出すと、結果をポーリングする必要はありません。ただし、ジョブのドキュメントhereによると、デフォルトのタイムアウトは10秒です。タイムアウトなしでBigQueryでgetQueryResultsジョブを作成するにはどうすればよいですか?

私の質問は、getQueryResultsにタイムアウトなしで電話する方法です。私は非常に大きな数値をタイムアウトパラメータとして置くべきでしょうか、あるいはパラメータはおそらく0であるはずですか?

答えて

0

「タイムアウトなし」とは、永遠に待っているということですか?

BigQueryで使用される基盤となるインフラストラクチャ(Google APIフロントエンド)では、無期限の接続は許可されません。あなたの最善の策は、タイムアウト値を設定し、タイムアウトが発生したときに再試行することです。ネットワークしゃっくりのようなものが要求でエラーが発生する可能性があるため

これは、とにかく可能性が良いのベストプラクティスであり、再試行によってgetQueryResults操作は、クエリを再実行しなくても結果を得ることができるようになります。

関連する問題