Google Cloudは、クエリのパフォーマンスを最大100倍高速化できる、BigQueryの履歴ベースの最適化の一般提供を発表しました。この新機能は、過去のクエリ実行から学習し、将来の実行に適用できる追加の改善点を特定するように設計されています。
BigQueryの履歴ベースの最適化の興味深い点は、高度に選択的な結合を含むさまざまなタイプのクエリの改善を実現できることです。たとえば、BigQueryが入力よりもはるかに少ない行数を返す結合を特定した場合、実行計画の早い段階でその結合を実行することを選択できます。これにより、処理する必要があるデータ量が大幅に削減され、全体的なパフォーマンスが向上します。
さらに、BigQueryの履歴ベースの最適化は、クエリ全体に選択的なセミジョイン操作を挿入することで、BigQueryがスキャンするデータ量を削減するのに役立ちます。場合によっては、BigQueryは、最終的に結合される複数の並列実行パスを持つクエリ内で、高度に選択的な結合(結合プッシュダウンに似ています)を識別できます。BigQueryは、選択的な結合に基づいて、それらの並列実行パスによってスキャンおよび処理されるデータの量を「削減する」新しい「セミジョイン」操作を挿入できます。
全体的に見て、BigQueryの履歴ベースの最適化は、BigQueryにとって貴重な追加機能です。過去のクエリ実行からの履歴データを活用することで、この新機能はクエリのパフォーマンスを大幅に向上させ、コストを削減できます。さらに、自動的に機能するため、ユーザーはクエリを変更することなく、これらの改善のメリットを享受できます。