データソースの最小化

Essbaseブロック・ストレージ・データ・ロードのパフォーマンスを向上させるために、ソース・データを可能なかぎり小さくし、様々な範囲にグループ化して冗長性を取り除くことができます。

データソースを可能なかぎり小さくします。データソース内の、Essbaseで読み取るフィールドが少ないほど、データの読取りとロードに必要な時間が少なくなります。

データを範囲別にグループ化します。データソース内の冗長性をなくすと、データ値のロード前にEssbaseで読み取る必要のあるフィールドの数が減ります。

次の例のデータソースは、範囲別に編成されていません。これには、フィールドの不要な繰返しが含まれています。値はすべてProfitの値です。Profitは、該当するデータのグループの最初のみに含める必要があります。この例には、データ値を適切にロードするためにEssbaseで読み取る必要のある、33個のフィールドが含まれています。

Profit
Jan     "New York"   Cola          4
Jan     "New York"   "Diet Cola"   3
Jan     Ohio         Cola          8
Jan     Ohio         "Diet Cola"   7
Feb     "New York"   Cola          6
Feb     "New York"   "Diet Cola"   8
Feb     Ohio         Cola          7
Feb     Ohio         "Diet Cola"   9

次の例では、同じデータが、メンバーを範囲別にグループ化することによって最適化されています。冗長性をなくすことによって、この例では、データ値を適切にロードするためにEssbaseで読み取る必要のあるフィールドが、23個のみになっています。

Profit
Jan   "New York"   Cola          4
                   "Diet Cola"   3
      Ohio         Cola          8
                   "Diet Cola"   7
Feb   "New York"   Cola          6
                   "Diet Cola"   8
      Ohio         Cola          7
                   "Diet Cola"   9

Essbaseによって、最初の値4がJan->New York->Colaに、次の値3がJan->New York->Diet Colaに、などと割り当てられます。

効率的にソートされてはいますが、密ディメンションごとにソートされてグループ化されたデータソースは、ロード・プロセスの速度を遅くする可能性のある多数の繰返しを示しています。このデータは、データを範囲別にグループ化することで、さらに最適化できます。次のような最適化されたデータソースでは、冗長なフィールドがなくなり、処理時間が短縮されます。

                                Sales  Margin   COG  Profit
Jan Actual  Cola         Ohio      25      18    20       5
                         Florida   30      19    20      10
            "Root Beer"  Ohio      18      12    10       8
                         Florida   28      18    20       8