動的値バンディング:
http://www.kimballgroup.com/data-warehouse-business-intelligence-resources/kimball-techniques/Dimension-modeling-techniques/dynamic-value-banding/
動的な値のバンディング レポートは、一連のレポート行ヘッダーとして編成されます。これらのヘッダーは、ターゲットの数値ファクトのさまざまなサイズの範囲のプログレッシブ セットを定義します。たとえば、銀行の一般的な値バンディング レポートには、「0 から $10 までの残高」、「$10.01 から $25 までの残高」などのラベルが付いた多くの行があります。
この種のレポートは動的です。これは、ETL 処理中ではなく、クエリ時に特定の行ヘッダーが定義されるためです。行定義は、大なり/小なり結合を介してファクト テーブルに結合される小さな値のバンディング ディメンション テーブルに実装できます。または、定義は SQL CASE ステートメントにのみ存在できます。
値バンディング ディメンション アプローチは、特に列データベースではおそらくパフォーマンスが高くなります。CASE ステートメント アプローチには、ファクト テーブルのほとんど制約のないリレーション スキャンが含まれるためです。
バンディング寸法表:
ID | RANGE_SET | RANGE_NAME | RANGE_MIN | RANGE_MAX
---|--------------|------------|--------------|---------------
1 | THREE_RANGES | >50,000 | 50,000.01 $ | 9,999,999.00 $
2 | THREE_RANGES | >25,000 | 25,000.01 $ | 50,000.00 $
3 | THREE_RANGES | >10,000 | 10,000.01 $ | 25,000.00 $
10 | BIG_SMALL | Small | 0.00 $ | 100,000.00 $
11 | BIG_SMALL | Big | 100.000.01 $ | 9,999,999.00 $
この列RANGE_SET
を使用すると、同じディメンション テーブルにいくつかの範囲のセットを格納でき、定義された範囲をグループ化するために使用されます。
集約されたファクト テーブル:
大規模なファクト テーブルを扱っていて、動的なアプローチではリソースを大量に消費する場合は、集計されたファクト テーブルにデータを読み込み、収益の合計を使用して適切なバンディング キーを取得できます。
REGION | BANDING_ID | SUM_OF_REVENUE
-------|------------|---------------
North | 1 | 56,234 $
South | 2 | 48,788 $
East | 2 | 38,787 $
West | 3 | 15,334 $