クエリの実行がサービスレベル契約を満たしていない場合、またはリソースの枯渇やタイムアウトが原因でエラーが発生した場合は、次のことを検討してください。
- 再計算する代わりに以前のクエリの結果を使用する。たとえば、週ごとの合計は、BigQuery で計算された 1 日ごとの集計クエリの 7 日間分の合計になります。
- クエリを論理サブクエリに分解する(たとえば、複数の結合を複数のクエリに分割する)。そうでない場合は、処理中のデータセットを制限する。BigQuery で、個々のジョブの結果を 1 つのデータセットにまとめることで、リソースの枯渇を避けることができます。ただし、クエリの速度が低下する可能性があります。
- BigQuery でリソース超過エラーが発生している場合は、一時テーブルを使用して、クエリを複数の BigQuery クエリに分割してみる。
- 1 回のクエリで参照するテーブル数を減らす。参照するテーブル数が多いと、メモリ使用量が多くなり、クエリが失敗する可能性があります。
- 結合するユーザー テーブルの数を減らすようにクエリを書き換える。
- 同じテーブルを再度結合しないようにクエリを書き換える。