メインコンテンツまでスキップ
メインコンテンツまでスキップ

avgMergeState

説明

MergeState コンビネータは avg 関数に適用され、AverageFunction(avg, T) 型の部分集約状態を結合し、新しい中間集約状態を返します。

使用例

MergeState コンビネータは、事前に集約された状態を結合し、それをさらなる処理のために状態として保持したいマルチレベルの集約シナリオに特に役立ちます。ここでは、個々のサーバーのパフォーマンス指標を複数のレベルにわたる階層的集約に変換する例を見てみましょう:サーバーレベル → リージョンレベル → データセンターレベル。

まず、原データを格納するテーブルを作成します。

サーバーレベルの集約ターゲットテーブルを作成し、そこに挿入トリガーとして機能するインクリメンタル Materialized View を定義します。

地域およびデータセンターレベルについても同様に行います。

次に、ソーステーブルにサンプルの生データを挿入します。

各レベルに対して3つのクエリを書きます。

さらにデータを挿入します。

データセンターレベルのパフォーマンスを再度確認します。集約チェーン全体が自動的に更新される様子に注意してください。

参考