を返していません:BigQueryのAPIを介して照会の2種類がありますBigQueryの同期クエリは<a href="https://cloud.google.com/bigquery/querying-data#asynchronous-queries" rel="nofollow noreferrer">https://cloud.google.com/bigquery/querying-data#asynchronous-queries</a>に掲載されているBigQueryのドキュメントによると、任意の結果
。同期と非同期Asyncは、提供されたサンプルコードを使用して私にとって完璧に動作しますが、同期はありません。
上記のリンクをクリックすると、私が参照しているサンプルコードが表示されます。私が気づいたのは、実際に結果が得られるまで待たないということです。 while True
の前にtime.sleep(15)
を挿入すると、結果が期待どおりに返されます。そうでない場合は、空の結果セットを返します。
公式ドキュメントの例では、クエリを使用しています。
"""SELECT word, word_count
FROM `bigquery-public-data.samples.shakespeare`
WHERE corpus = @corpus
AND word_count >= @min_word_count
ORDER BY word_count DESC;
"""
このクエリは非常に迅速に返し、しかし私のクエリは、結果を返すために、数秒かかります。
私の質問は、結果に実際にアクセスできず結果が返ってこない場合は、run_sync_query
コマンドがクエリが完了するまで待つということですか?
プライベートデータソースであるため、私が使用したクエリは提供できません。生成するには、実行するのに数秒かかるクエリが必要です。
おかげで、私はこの方法では、タイムアウト設定を持っていたことを実現didntの。常に他の方法を使用するのが最良と思われます。 – user3734725
@ user3734725 - クール。あなたは私の答えを受け入れてください。 –