概要
今回は前回の続きとして、マテリアライズドビューについてみていきたいと思います。
マテリアライズドビューの説明
以下は前回作成したsales_totalというマテリアライズドビューです。
これは顧客が費やした金額でグループ化する単純な例となっています。400ドル以上を費やす人はゴールドの顧客、300ドル以上はシルバー、200ドル以上はブロンズです。その他はまだどの報酬レベルにも達していません。 このクエリは、単純な「ユーザーごとの合計」要約テーブルを作成し、ユーザーの合計を価格帯にグループ化し列を追加します。
マテリアライズドビューのルックアップをしてみる
以下が上記クエリに対する結果です。
ここでは、"kris"はまだREWARDを得るステージに達していないことが確認できます。
次に"kris"が犬を買ったというシナリオを追加します。
この時点で、もう一度先ほどのマテリアライズドビューを実行してみます。
以下がその結果です。この段階で"kris"はSILVERレベルのステージに達したことが確認できました。
この例では、ユーザーが購入するたびにリアルタイムでユーザーのREWARDレベルが更新されるテーブルがありますので、そのデータをユーザーのアカウント設定ページにストリーミングしてアプリでREWARDレベルをリアルタイムで確認することができるようにするなどアイデア次第で比較的簡単に早くリアルタイム処理の機能を実装できるのではないかという感想をもちました。
今回も最後までお読み頂きましてありがとうございまいた。