2016-08-17 19 views
0

潜在的な根本的な問題があるとしても、わかりません。BigQueryでのストリーミングの信頼性

日付Tにテーブルを作成し、そこにストリームデータを作成したいと考えています。 次の日、私は日付Tでテーブルを削除し、日付T + 1で新しいテーブルを作成してからデータをストリームします。 等

テーブルの作成とストリーミングの間に問題が発生します。 実際、時々私はデータをストリームし、実際には何もストリームされません。それは一般的に私が日付Tにテーブルを削除し、それを直接再作成するときです。

テーブルの削除と実際の参照の削除には時間差がありますか? Googleはテーブルが存在しないことを伝えていることがあります...実際は存在しています。

Javaで行います。コンパイルは速いと思われますが、実際のリファレンスは到着までに時間がかかるようです。

私は、2分のスレッド/スリープを操作と同時に行います。 10分以上待つことはできますが、100%信頼できるでしょうか?

おかげ

+0

私はしばらく前に似た何かを尋ね、これはBigQueryので期待される動作です。 http://stackoverflow.com/questions/36846571/bigquery-table-truncation-before-streaming-not-working このケースでは、パーティション化されたテーブルが適しているかもしれません(デコレートされたテーブルにデータをストリームできないため、毎日テーブルを作成していました) –

答えて

1

はあなたが言及したシナリオの周りの電流制限があり、我々は将来的に解決したいと考えています。

あなたのポストから、毎日のテーブルを使用していますか?パーティション表を使用する可能性を考慮しましたか?データは自動的に最新の日のパーティションに入ります。また、データの有効期限を設定することもできます。手動でパーティションからデータを削除したい場合は、allow_large_resultsとWRITE_TRUNCATEでパーティションを宛先としてクエリを実行できます。

https://cloud.google.com/bigquery/docs/creating-partitioned-tables

+0

答えをくれてありがとうございました^^また、チップをおねがいします。私はそれを使用して、次のテーブルを作成して、そのテーブルを翌日に利用できるようにします。私はまた、私のコードは実際に評価されていないとClojureのストリーミング応答を返すことを見た、私はあまりにも今の自動化の仕事を解決 –

関連する問題