データ・ブロック内のデータ・ストレージ

ブロック・ストレージ(BSO)キューブは、Essbaseがデータ値をデータ・ブロックに保管するため、そのように名前が付けられます。

Essbaseでは、疎ディメンション・メンバーの一意の空でない組合せごとに、保管済データ・ブロックが作成されます。空でないとは、メンバーの組合せに対して1つ以上のデータ値が存在することを意味します。各データ・ブロックには、疎ディメンション・メンバーの一意の組合せに対するすべての密ディメンション・メンバーの値が含まれます。

Sample Basicデータベースでは、Year、MeasuresおよびScenarioディメンションは密で、ProductおよびMarketディメンションは疎です。次の図は、Sample Basicの標準ディメンションを含むアウトラインを示しています:

図19-1 Sample Basicの標準ディメンション


Sample Basicデータベースのすべての標準ディメンション(Year、Measures、Product、MarketおよびScenario)を含む縮小されたアウトライン。

ノート:

Sample Basicには、5つの属性ディメンションも含まれています。これらのディメンションは疎(動的計算)であり、つまり、属性データはデータベースに保管されません。

Essbaseでは、ProductディメンションとMarketディメンションのメンバーの一意の組合せごとに、データ・ブロックが作成されます(その組合せに対して1つ以上のデータ値が存在する場合)。たとえば、100-10、New Yorkの組合せに対して1つのデータ・ブロックが作成されます。このデータ・ブロックには、100-10、New YorkのYear、MeasuresおよびScenarioの値がすべて含まれます。次のイメージは、Sample BasicのProductディメンションおよびMarketディメンションのアウトラインを示しています:

図19-2 Sample BasicのProductディメンションおよびMarketディメンション


部分的に展開されたProductディメンションおよびMarketディメンションを含むEssbaseアウトライン。

Essbaseでは、メンバーの組合せはディメンション間演算子で示されます。ディメンション間演算子の記号は、-> (ハイフンと大なり記号)です。したがって、100-10、New Yorkは100-10 -> New Yorkと記述されます。

データ・ブロックは次の方法で分類できます。

  • 入力

    入力ブロックは、ブロック内のセルにロードすることによって作成されます。少なくとも1つの疎メンバーが親レベルのメンバーである場合、(1)疎のレベル0メンバーの組合せ、または(2)疎の上位レベル・メンバーの組合せに対して入力ブロックを作成できます。入力ブロックはレベル0または上位レベルのブロックになります。

  • 非入力

    非入力ブロックは、計算によって作成されます。たとえば、Sample Basicでは、疎の計算プロセスでEast -> Colaブロックが作成されます(つまり、このブロックは計算前は存在していません)。

  • レベル0

    レベル0のブロックは、すべての疎メンバーがレベル0メンバーである場合に、疎メンバーの組合せに対して作成されます。たとえば、Sample Basicでは、New York -> Colaはレベル0ブロックです。これは、New YorkとColaがそれぞれの疎ディメンションのレベル0メンバーであるためです。レベル0ブロックは、入力ブロックでも非入力ブロックでもかまいません。たとえば、レベル0の非入力ブロックは、データが親レベルでロードされてからレベル0まで割り当てられる割当てプロセスで作成されます。

  • 上位レベル

    これらのブロックは、少なくとも1つの疎メンバーが親レベルのメンバーである場合に、疎メンバーの組合せに対して作成されます。上位レベル・ブロックは、入力ブロックでも非入力ブロックでもかまいません。