ASOキューブの階層

Essbaseアウトライン内のディメンションには、関連するレベルおよびメンバーの1つ以上の階層が含まれます。階層は格納または動的です。ストアド階層は、アウトライン構造に基づいて迅速に集約されます。動的階層は、式および解決順序を使用して、取得時に計算されます。代替階層は、属性または共有メンバーの構造です。

ASOsamp.BasicデータベースのTimeディメンションには、階層MTD、QTDおよびYTDが含まれます。

図36-1 Timeディメンションの複数の階層とメンバーが示されているアウトライン


このイメージは、Timeディメンションの複数の階層が有効になっているアウトラインを示しています。

集約ストレージ・キューブでは、階層を格納または動的にできます。

ディメンションには、格納階層と動的階層の両方を含めることができます。各タイプには独自の利点と制限があります。ディメンションで複数の階層を使用するには(すべて保管済の場合も)、そのディメンションに対して複数の階層を有効にする必要があります。

ディメンション・メンバーを複数階層有効としてタグ付けすると、自動的にラベルのみとしてタグ付けされます。

ディメンションを複数階層有効としてタグ付けしない場合は、ディメンションは自動的に保管階層としてタグ付けされます(動的階層としてタグ付けされる、勘定科目としてタグ付けされたディメンションを除く)。

ノート:

複数階層有効のディメンションの最初の階層は保管階層である必要があります。

Essbase Webインタフェースで、メンバー・プロパティを使用して、ディメンションに対して複数の階層を有効にします。

保管済階層

保管階層のメンバーは、アウトライン構造に従って集約されます。集約ストレージ・データベースは集約のために最適化されているため、保管階層のデータ値の集約は非常に高速です。この高速な集約を可能にするために、保管階層のメンバーには次の制限があります。

  • 保管階層は、非集計(~)演算子(ラベルのみのメンバーの下のみ)または加算(+)演算子を持つことができます。

  • 保管階層は式を持つことはできません。

保管階層には、ラベルのみのメンバーに対する制限があります。ASOの違いの概要を参照してください。

次に示す階層では、All Merchandise階層とHigh End Merchandise階層が保管階層です。All MerchandiseメンバーとHigh End Merchandiseメンバーは階層の最上位であり、両方とも保管階層の最上位としてタグ付けされています。

図36-2 Productディメンションの代替階層High End Merchandiseが表示された集約ストレージ・アウトライン


このイメージは、ProductsディメンションにHigh End Merchandiseの代替階層が含まれるアウトラインを示しています。

Essbase Webインタフェースで、保管階層をメンバー・プロパティを使用して指定します。

MaxLimport database文を使用して、階層の最上位メンバーを保管階層の最上位としてタグ付けできます。

保管階層の最上位としてタグ付けできるのは、次のメンバーです。

  • ディメンション・メンバー(世代1)。 ディメンション・メンバーが保管済階層の最下位としてタグ付けされている場合、ディメンション全体が単一の保管済階層とみなされ、ディメンション内の他のメンバーは、保管済階層または動的階層の最下位としてもタグ付けできません。

  • ディメンション・メンバーの子(世代2)。 世代2のメンバーが保管層の最上位としてタグ付けされている場合、ディメンションのすべての世代2のメンバーも、保管層または動的階層の最下位としてタグ付けする必要があります。ディメンションの最初の 階層は保管済である必要があります。

勘定科目タグが付けられた次元は自動的に動的次元とみなされます。勘定科目次元を保管階層に指定できません。

動的層

動的階層を評価する場合、Essbaseで、集約ではなく、メンバーと式が計算されます。メンバーと式が評価される順序は、解決順序のプロパティによって定義されます。ASOキューブでの計算順序および解決順序を参照してください。

取得時に、Essbaseによって、必要なメンバーの組合せが計算されて、必要なアウトライン・メンバー式が計算されます。動的階層が計算されるため、保管階層からデータを取得する場合よりも、データの取得時間が長くなる場合があります。ただし、データベースの設計時において、動的階層には次の利点があります。

  • 任意の集計演算子を含めることができます。

  • 式を持つことができます。

Essbase Webインタフェースで、動的階層をメンバー・プロパティを使用して指定します。

MaxLimport data文を使用して、階層の最上位メンバーを動的階層の最上位としてタグ付けできます。

動的階層の最上位としてタグ付けできるのは、次のメンバーです。

  • ディメンション・メンバー(世代1)— ディメンション・メンバーが動的階層の最下位としてタグ付けされている場合、ディメンション全体が単一の動的階層とみなされ、ディメンション内の他のメンバーは、動的階層の最下位または保管階層の最下位としてもタグ付けできません

  • ディメンション・メンバーの子(世代2) - 世代2のメンバーが動的階層の最下位としてタグ付けされている場合、ディメンション内の世代2のメンバーも、動的階層の最下位または保管階層の最下位としてタグ付けする必要がありますディメンションの最初の階層は保管階層である必要があります。

ノート:

メンバーのすべての子に非集計演算子(~)がある場合、そのメンバーはラベルのみとしてタグ付けする必要があります。

勘定科目としてタグ付けされたディメンションは自動的に動的階層とみなされます。勘定科目次元を保管階層に指定できません。

Essbaseでは、集約ビューの動的階層メンバーは選択できません。

代替階層

代替階層は、次のいずれかの方法でモデル化できます。

  • ディメンション内でメンバーを論理的に分類するための属性を使用する、属性ディメンションとして(たとえば、Productディメンションは、SizeやFlavorなどの属性を持つことができます)。

    ノート:

    属性ディメンションを代替階層として使用する場合、1つの有用な問合せは、基本ディメンション・メンバー別の属性ディメンション・メンバーのクロス集計レポートです。たとえば、製品の売上情報のクロス集計レポートに、列および製品の行にサイズ属性(小や大など)を表示できます。共有メンバーを代替階層として使用する場合、プロトタイプ・メンバーによる共有メンバーの同等のクロス集計レポート問合せを作成することはできません。

  • 共有メンバーの階層として。代替階層には、アウトライン内の以前の階層のプロトタイプ・メンバーを指し示する共有メンバーが含まれています。共有メンバーは、プロトタイプ・メンバーとは異なる階層に従ってロールアップします。動的階層の共有メンバーは式を持つことができます。次の表は、ASOsamp.Basicデータベースの階層を示しています。Productsディメンションはその後の図に示されています。

表36-1 ASOsamp.BasicのProductディメンションの階層と代替 階層の例

製品 階層 代替階層(共有メンバーを含む)

フラットパネル

Products、All Merchandise、Personal Electronics、Home Entertainment、Televisions

Products、High End Merchandise

HDTV

Products、All Merchandise、Personal Electronics、Home Entertainment、Televisions

Products、High End Merchandise

図36-3 Productディメンションの代替階層High End Merchandiseが表示された集約ストレージ・アウトライン


このイメージは、ProductsディメンションにHigh End Merchandiseの代替階層が含まれるアウトラインを示しています。

共有メンバーの代替階層制限

集約ストレージ・アウトラインに代替階層を作成するには、次の制限が適用されます。

  • メンバーのプロトタイプ・インスタンスは、アウトライン内で、メンバーの共有インスタンスより前に存在する必要があります。たとえば、前述のアウトラインでは、メンバーHDTVは、High End Merchandiseの代替階層の共有メンバーとして出現する前に、All Merchandiseの階層に表示されます。

  • 複数の階層が有効なディメンションの最初の階層には、共有メンバーを含めることはできません。

  • 保管階層ディメンションが共有メンバーを持つことはできない。複数階層ディメンション内の保管階層は、共有メンバーを持つことができます。

  • 値が二重にカウントされないようにするために、保管済階層に同じ共有メンバーの複数のコピーを含めることはできません。たとえば、保管階層には、共有メンバーとその祖先を含めることはできません。前述のアウトラインでは、共有メンバーTelevisionsをHigh End Merchandiseの子として追加すると、Televisionsがその子の兄弟である共有メンバーFlat panelおよびHDテレビの兄弟になり、Flat PanelおよびHDテレビの値が2回追加されるため、このように追加できません。

  • メンバーのプロトタイプ・インスタンスは、共有メンバーと同じディメンションに存在している必要があります(ブロック・ストレージ・アウトラインと同じ)。

  • 保管階層には、同じメンバーのプロトタイプ・インスタンスと共有インスタンスを含めることはできません。

  • 動的階層のメンバーが式を含まないレベル0のメンバーである場合にのみ、保管階層に動的階層のメンバーの共有インスタンスを含めることができます。

ノート:

集約ストレージ・キューブでは、共有メンバーはそのプロトタイプ・メンバーと関連付けられている属性を自動的にシェアします。

ASOキューブでは、共有メンバーはそのプロトタイプ・メンバーと関連付けられている属性を自動的にシェアします。これは、暗黙の共有メンバー(たとえば、子が1つのみのメンバー)にも適用されます。「共有しない」プロパティを設定すると、暗黙的な共有を防ぐことができます。ASOデータベースの共有メンバーおよび属性のこの動作は、ブロック・ストレージ(BSO)データベースの動作とは異なります。