この章の情報の一部は、ブロック・ストレージ・データベースのみに適用され、集約ストレージ・データベースとは関係がありません。
関連項目:
属性の使用についてのその他情報については、次を参照してください:
属性は、製品のサイズや色などのデータ特性を記述します。属性を使用して、次元のメンバーをその特性に基づいてグループ化したり分析したりできます。この章では、Essbaseサーバーのアウトラインで属性を作成および管理する方法について説明します。
アウトライン・エディタで属性を操作する場合は、次のタスクを実行します:
アウトラインへの次元およびメンバーの追加を参照してください。アウトライン内で、属性次元をすべての標準次元の後に配置します。
次元に、属性次元タグを付け、テキスト、数値、ブールまたは日付の属性次元タイプを設定します。
属性次元の作成を参照してください。
アウトラインへの次元およびメンバーの追加を参照してください。
属性次元の関連付けの規則の理解を参照してください。
属性メンバーの関連付けの規則の理解を参照してください。
属性データの計算を参照してください。
Essbaseの属性機能を使用して、次元の観点からのみでなく、それらの次元の特性、つまり属性の観点からもデータを取得して分析できます。たとえば、製品の収益性をサイズやパッケージに基づいて分析でき、さらに各市場地域の人口などの市場属性を分析に組み込むことで、より効果的な結論を下すことができます。
このような分析により、小規模市場(人口6,000,000未満)では缶で販売されるカフェイン抜き飲料の売上が予想よりも低いことがわかる場合があります。さらに、同様の市場区分での様々な製品の売上と収益の最小値や最大値など、特定の属性条件によって分析を絞り込むことができます。
次に示すような属性による分析によって、深さと奥行きのある見方ができるので、より適切な情報に基づいた決定を下すことができます:
属性をテキスト型、数値型、ブール型または日付型と定義することによって、AND、ORおよびNOT演算子や、<、>および=比較演算子など、型に関連した関数を使用したデータのフィルタ(選択)が可能になります。
数値属性タイプを使用すれば、属性範囲別に統計値をグループ化できます。たとえば<500,000、500,000-1,000,000、>1,000,000などの人口グループにグループ化できます。
Essbaseによって自動的に作成される属性計算次元によって、属性データの合計、カウント、最小値または最大値、および平均値を表示できます。たとえば、スプレッドシートに「Avg」と「Bottle」を入力すると、Essbaseによってシート上の列と行のすべての交差の平均売上の計算値が取得されます。
計算スクリプトやメンバー式で数値属性値を使用して計算を実行できます。たとえば、サイズがオンスで示された製品についてオンス当たりの収益性を判断できます。
同一次元の属性データのクロス集計を作成したり、スプレッドシートで詳細データのピボットやドリル・ダウンを行ったりすることができます。
属性のクロス集計は、同じ次元の属性全体のデータ集計を表示するレポートまたはスプレッドシートです。下の例のクロス集計では、製品のパッケージを列で、製品のサイズ(オンス)を行で表示しています。それらの交差には、パッケージ・タイプとサイズの各組合せに対する収益が示されています。
この情報から、「Florida」市場では、どのサイズとパッケージの組合せが最も収益が高かったかがわかります。
Product Year Florida Profit Actual Bottle Can Pkg Type ====== ===== ======== 32 946 N/A 946 20 791 N/A 791 16 714 N/A 714 12 241 2,383 2,624 Ounces 2,692 2,383 5,075
製品は、製品のサイズやパッケージなど、その製品の特性を示す属性を持ちます。属性メンバーは属性次元に存在します。アウトライン内の属性次元には、その名前の横に「属性」という語が付いています。
図41では、Product次元と3つの属性次元(Caffeinated、OuncesおよびPkg Type)を使用するSample.Basicアウトラインの一部を示しています。Product次元の右側のCaffeinated、OuncesおよびPkg Typeで、これらの属性次元がProduct次元に関連付けられていることを示しています。
標準次元とは、属性次元でない次元のことです。属性次元が標準次元に関連付けられている場合、その標準次元はその属性次元の基本次元になります。図41では、Product次元はCaffeinated、OuncesおよびPkg Type属性次元の基本次元です。
属性次元のメンバーは、関連する基本次元のメンバーの潜在的な属性です。基本次元を属性次元に関連付けた後に、基本次元のメンバーを関連する属性次元のメンバーに関連付けます。市場次元メンバーの「Connecticut」は、「Population」属性次元の「6000000」メンバーに関連付けられます。これによって、「6000000」が「Connecticut」の属性になります。
アウトラインでは、基本次元メンバーの横にある情報がそのメンバーの属性を示しています。たとえば、図41では、製品「100-10」は、カフェイン入り、12オンスの容器で販売、缶入りで販売という3つの属性を持つことを示しています。
属性次元とその基本次元のメンバーに関する規則は次のとおりです。
属性次元には、テキスト、数値、ブールまたは日付という型の設定があります。デフォルトの設定はテキストです。型は次元レベルで割り当てられますが、次元のレベル0のメンバーのみに適用されます。属性タイプの理解を参照してください。
次元から属性タグを削除すると、Essbaseによって、そのメンバー名から接頭辞または接尾辞が削除されます。接頭辞と接尾辞はアウトラインには表示されません。属性次元のメンバー名における、接頭辞および接尾辞のフォーマットの設定を参照してください。
基本次元メンバーは多くの属性を持つことができますが、各属性次元の属性を1つしか持つことができません。
たとえば、製品100-10では、サイズとパッケージの属性を持つことができますが、1つのサイズと1つのパッケージ・タイプしか持つことができません。
属性次元のメンバーを基本次元のメンバーに関連付ける場合は、次の規則に従います:
同じ属性次元の複数のメンバーを、同じ基本次元のメンバーに関連付けることはできません。たとえば、ボトルと缶のパッケージ・タイプを両方とも製品100-30に関連付けることはできません。
異なる属性次元のメンバーを基本次元の同じメンバーに関連付けることができます。たとえば、16オンスのボトルで販売されるカフェイン抜きコーラの製品(100-30)は、「Caffeinated:False」、「Ounces:16」および「Pkg Type:Bottle」という3つの属性を持つことができます。
属性を基本次元のメンバーに関連付けた後に、基本次元メンバーを切り取るかコピーしてアウトライン内の別の場所に貼り付けると、属性の関連付けは失われます。
特定の属性次元のメンバーに関連付けられたすべての基本次元メンバーは、同じレベルであることが必要です。
たとえば、図42では、「Population」属性を持つすべての市場次元メンバーはレベル0にあります。「Population」属性を持つ市場次元の他のメンバーはレベル0のメンバーであるため、レベル1のメンバーである「East」を「Population」属性に関連付けることはできません。
基本次元のメンバーに関連付けることができるのは、属性次元のレベル0にあるメンバーのみです。
たとえば、「Population」属性次元では、「3000000」、「6000000」、「9000000」などのレベル0のメンバーのみを市場次元に関連付けることができます。「Small」などのレベル1のメンバーを関連付けることはできません。
属性次元のレベル0のメンバー名が属性値になります。属性次元のメンバーのうち、属性値を持つメンバーのみがレベル0のメンバーになります。
属性次元のより上位レベルのメンバーを使用して、データを選択したりグループ化したりできます。たとえば、「Population」属性次元のレベル1のメンバーである「Small」を使用して、「3000000」と「6000000」の両方の人口カテゴリの売上を取得できます。
属性次元にはテキスト型、数値型、ブール型または日付型があり、この型によりデータのグループ化、選択または計算のための様々な関数を使用できます。属性タイプは次元レベルで割り当てられますが、属性次元のレベル0のメンバーのみに適用されます。
デフォルトの属性タイプはテキストです。テキスト属性により、計算での基本属性メンバーの選択と属性の比較が可能になります。このような比較を実行すると、Essbaseで文字が比較されます。たとえば、アルファベット順ではBがCの前にくるため、パッケージ・タイプ「Bottle」はパッケージ・タイプ「Can」より小さくなります。Sample.Basicでは、「Pkg Type」がテキスト属性次元の一例です。
数値属性次元のレベル0のメンバーの名前は、数値です。数値属性次元メンバーの名前(値)は計算に組み込むことができます。たとえば、「Ounces」属性で指定したオンス数を使用して、各製品のオンス当たりの収益を計算できます。
数値属性は、基本次元の一定範囲の値に関連付けることができます。たとえば、市場の人口グループ別に製品の売上を分析するには、あるグループ内の人口3,000,000未満の州、別のグループ内の人口3,000,001から6,000,000までの州というように続けます。一定範囲の値を表すメンバー名の設定を参照してください。
データベース内のすべてのブール属性次元に含まれているメンバーは2つのみです。メンバー名はデータベースの設定(たとえば、TrueとFalse)と一致する必要があります。複数のブール属性次元が存在する場合は、接頭辞または接尾辞のメンバー名フォーマットを指定して、メンバー名を確実に一意にします。たとえば、Caffeinated_TrueやCaffeinated_Falseです。ブール属性のメンバー名の設定を参照してください。
日付属性を使用すると、日付フォーマット(月-日-年または日-月-年)を指定したり、それに応じて情報を順序付けたりできます。日付属性次元のメンバー名の変更を参照してください。日付属性は計算で使用できます。たとえば、10-12-1999に開設された市場から製品の売上を選択する計算で日付を比較できます。
一般に、属性次元とそのメンバーは、標準次元とそのメンバーに似ています。属性には別名やメンバーのコメントを付けることができます。属性次元には階層を含めることができ、世代とレベルに名前を付けることができます。属性次元とメンバーでは、標準次元とメンバーの場合と同じスプレッドシートの操作を実行できます。たとえば、様々な観点からデータを分析するために、スプレッドシート内で取得、ピボットおよびドリル・ダウンを実行できます。
表18で、属性次元と標準次元、およびそれらのメンバー間の主な相違点を説明します。
表 18. 属性次元と標準次元との相違点
メンバー式に、属性メンバー名に関連付けられている実行時依存の関数が含まれていて、その式を持つメンバーに2パスとタグ付けされている場合、計算ではそのメンバーがスキップされ、警告メッセージが表示されます。実行時依存の関数には、@CURRMBR、@PARENT、@PARENTVAL、@SPARENTVAL、@MDPARENTVAL、@ANCEST、@ANCESTVAL、@SANCESTVALおよび@MDANCESTVALがあります。 属性次元での2パス計算の理解を参照してください。 | ||
計算はスキップされ、警告メッセージが表示されます。したがって、2パスとタグ付けされたメンバーと上位レベルのメンバーのメンバー交差では、標準次元での計算とは異なる結果が戻されることがあります。 属性次元での2パス計算の理解を参照してください。 | ||
存在しない保管ブロック上の密次元は、計算ではスキップされます。 密メンバーで機能する属性に対して、密メンバーのデータ・ブロックが存在する必要があります。動的計算式があり属性のない密メンバーでデータを取得する際、Essbaseは動的にデータ・ブロックを作成して値を戻します。ただし、動的計算密メンバーに属性がある場合、属性メンバーで取得を実行すると#MISSINGという結果が生じます。これは、Essbaseが密メンバーの動的計算をスキップし、データ・ブロックが作成されないためです。 存在しない保管ブロックを特定するには、データベースをエクスポートするかクエリーを実行して、ブロックにデータが含まれるかどうかを調べます。 | ||
すべてのメンバーが、属性計算次元メンバー(Sum、Count、Min、MaxおよびAvg)で計算されます。属性計算中はアウトライン内の集計演算子は無視されます。 | ||
選択した属性に関連付けられた基本次元データが表示されます。たとえば、属性「Glass」をドリル・ダウンすると、パッケージがガラス瓶の各製品の売上が表示されます。その場合、「Product」は「Pkg Type」属性次元の基本次元です。 |
標準次元内の下位または兄弟のレベルの詳細が表示されます。たとえば、「QTR1」をドリル・ダウンすると、その四半期の製品とそれらの売上のリストが表示されます。 |
次の例は、Sample.BasicデータベースのProduct次元に基づき、2パス計算が属性次元でどのように機能するかを示しています。メンバー"400 - 30"が2パスとしてタグ付けされていると仮定します。
メンバー"400 - 30"に次のメンバー式がある場合:
=”400–10”;
Essbaseは"400 - 30"における取得の実行時に、式を実行します。
"400 - 30"に次のメンバー式がある場合:
=@CURRMBR("Market");
Essbaseは、許可されていない@CURRMBRランタイム関数が式に含まれるため、計算をスキップして次のエラー・メッセージを発行します:
Two-pass calc skipped on member [400-30] in attribute calc”
"400 - 30"にメンバー式がない場合、2パスとしてタグ付けされているメンバーには式が必要なため、同じエラー・メッセージが生成されます。
属性とUDAにより、データの特性に基づく分析が可能になります。属性にはUDAよりも多くの機能があります。このトピックの表で、次の機能の領域における属性とUDAの相違点を示します:
表 19. データ・ストレージ- 属性とUDAの比較
データ・ストレージ |
属性 |
UDA |
---|---|---|
疎次元に関連付けることができます。 |
サポートされています |
サポートされています |
密次元に関連付けることができます。 |
サポートされていません |
サポートされています |
表 20. データの取得- 属性とUDAの比較
Essbaseには、データベースで属性情報を設計する方法が複数あります。ほとんどの場合、属性次元とそのメンバーを使用してデータの特性を定義するのが最良の方法です。以降のセクションで、属性次元を使用するタイミング、他の機能を使用するタイミング、および属性を使用するときにパフォーマンスを最適化する方法について説明します。
UDA。UDAは属性に比べ柔軟性に欠けますが、データの特性に基づいたデータのグループ化や取得ができます。属性とUDAの比較を参照してください。
共有メンバー。たとえば、季節分析を年次元に含めるには、適切な季節の下で共有メンバーとして月を繰り返し指定します。Winter: Jan (共有メンバー)、Feb (共有メンバー)のように続きます。共有メンバーを使用する場合の主な短所は、カテゴリで多数のメンバーを繰り返し指定すると、アウトラインが大きくなることです。
標準の次元とメンバー。標準次元の追加によって柔軟性が得られますが、データベースにストレージの要件と複雑さが加わります。次元の追加による影響を評価する際のガイドラインは、分析とプランニングを参照してください。
表23で、データベース内の属性データの管理に対する代替アプローチを検討する状況について説明します。
アウトラインのレイアウトとコンテンツは、属性計算とクエリーのパフォーマンスに影響する可能性があります。一般的なアウトラインの設計に関するガイドラインは、パフォーマンスを最適化するためのアウトラインの設計を参照してください。
属性のクエリーのパフォーマンスを最適化するには、次の設計ヒントを検討してください:
計算と取得のパフォーマンスの最適化を参照してください。
属性次元を構築するには、次元に属性としてタグ付けし、その次元にタイプを割り当てます。次に、属性次元を基本次元に関連付けます。最後に、属性次元のレベル0の各メンバーを、関連する基本次元のメンバーに関連付けます。
属性機能を使用する場合、Essbaseではデフォルトのメンバー名が設定されます。たとえば、システム定義のTrueとFalseにより、TrueとFalseの他のメンバー名は排除されます。データベースのこれらのシステム定義の名前は変更可能です。日付属性と数値属性も重複可能です。重複名が混同されないようにするため、属性次元内のメンバー名を修飾するための設定を行うことができます。完全修飾属性名はアウトラインには表示されませんが、パーティションを定義する場合や、取得する情報を選択する場合など、メンバーを選択する場所ではどこでも完全な属性名を表示できます。
属性次元を定義または構築する前に、メンバー名の設定を定義します。属性次元とメンバーを定義した後でこの設定を変更すると、メンバー名が無効になることがあります。
次の項では、属性次元のメンバー名の操作方法について説明します:
この項で説明する情報は、重複メンバー属性次元には適用されません。
ブール、日付および数値属性次元のメンバーの名前は、値です。異なる属性次元内に重複する属性値を存在させることができます。
アウトライン内のブール、日付および数値属性次元のメンバー名に接頭辞または接尾辞を付けることで、一意の名前を定義できます。属性名に次元、親、親の親またはすべての祖先を添付できます。たとえば、属性次元のメンバー名を設定する際、接尾辞として次元名を含め、アンダースコアを付けることによって、オンス属性次元のメンバー値12は一意の完全な属性メンバー名「12_Ounces」とみなされます。
デフォルトでは、Essbaseでは、属性次元のメンバー名に接頭辞や接尾辞を付けないことが前提になります。
選択するルールは、アウトライン内のすべての数値、ブールおよび日付属性次元のレベル0のメンバー名に適用されます。取得の際に短い名前を表示する場合は、これらの名前の別名を定義できます。
属性次元の次元タイプをブールとして設定すると、Essbaseではブール属性設定に指定された名前を持つレベル0のメンバーが2つ自動的に作成されます。データベース内の最初のブール・メンバー名は、TrueおよびFalseとして設定されます。これらのデフォルト名を、たとえばYesとNoに変更するには、データベース内にブール属性次元を作成する前に、ブール属性次元のメンバー名を定義します。
日付属性次元のメンバーのフォーマットは、変更可能です。たとえば、次のような日付フォーマットを使用できます:
日付メンバー名フォーマットを変更すると、日付属性次元の既存のメンバーの名前が無効になることがあります。たとえば、10-18-2007メンバーが存在しているときに、フォーマットをdd-mm-2007に変更すると、アウトライン確認ではこのメンバーは無効とみなされます。日付フォーマットを変更する場合は、日付属性次元を再構築する必要があります。
数値属性次元のメンバーは、単一の数値または一定の範囲内の値を表せます:
単一の値の例: オンス属性次元のメンバー12。これは単一の数値12を表します。この属性をすべての12オンスの製品に関連付けます。アウトラインには、サイズごとに別のメンバー(たとえば、16、20および32)が含まれます。
一定の範囲内の値の例: 図43に示すような「Population」属性次元:
このアウトラインでは、「Population」属性次元のメンバーは、関連する市場次元内の人口値の範囲を表しています。3000000メンバーはゼロから3,000,000まで、6000000メンバーは3,000,001から6,000,000までのように表しています。アウトラインの設定では、各数値メンバーがその範囲の上限を表すように設定されます。
このアウトラインの設定は、数値属性次元のメンバーが、それらが表現する範囲の下限になるように定義できます。たとえば、範囲の下限を定義するように数値メンバーを設定する場合、3000000メンバーは3,000,000から5,999,999までの人口を表し、6000000メンバーは6,000,000から8,999,999までの人口を表します。
基本次元を構築すると、Essbaseによって、基本次元のメンバーが該当する属性範囲に自動的に関連付けられます。たとえば、数値メンバーが範囲の上限を表している場合、Essbaseにより、人口が3,269,858の「Connecticut」市場は、「Population」属性次元の6000000メンバーに関連付けられます。
次元構築ルール・ファイルでは、数値属性次元の各メンバーに範囲のサイズを指定します。上の例では、各属性は3,000,000の範囲を表しています。
注: | 数値属性次元のメンバー名の小数点以下の桁数は、6桁を超えないようにすることをお薦めします。6桁を超えると、精度調整が原因でアウトラインの確認に成功しないことがあります。 |
アウトラインにおける名前の重複を避けるために、属性計算次元またはそのメンバーの名前の変更が必要になる場合があります。
Sum、Count、Min、MaxおよびAvgの、Essbaseが属性計算次元で作成するメンバーの名前は、予約語と想定されません。属性計算次元これらの名前を変更してから、属性次元または標準次元のデフォルト名を使用できるためです。次のガイドラインに従います:
アウトラインが重複メンバー・アウトラインとしてタグ付けされている場合、デフォルト名を使用して他の基本メンバーまたは属性メンバーに名前を付けます。
アウトラインが一意メンバー・アウトラインとしてタグ付けされている場合、Sum、Count、Min、MaxおよびAvgをメンバー名として使用することは避けます。たとえば、標準次元でMaxを使用してから属性次元を作成する場合、Essbaseが属性計算次元でMaxメンバーを作成すると、Essbaseは重複した名前を検知して、名前がすでに使用中であることを示すエラー・メッセージを戻します。
属性計算次元メンバーに使用する名前とは無関係に、その機能はそのまま持続します。たとえば、2番目のCountメンバーは常に数を数えます。
Essbaseでは、Essbaseによって作成されたシステム定義次元のメンバーを使用して、取得時に属性データが動的に計算されます。この次元を使用して、合計や平均などの様々な計算関数を同じ属性に適用できます。属性次元のメンバーに対して特定の計算を実行することもできます。たとえば、サイズがオンスで示された製品についてオンス当たりの収益性を判断できます。
以降の説明では、属性次元とEssbaseの計算(動的計算など)の概念を理解していることが前提になります。次の項を参照してください。
アウトライン内に最初の属性次元を作成すると、Essbaseによって、デフォルト名Sum、Count、Min (最小)、Max (最大)およびAvg (平均)を持つ5つのメンバーで構成される属性計算次元も作成されます。これらのメンバーをスプレッドシートやレポートで使用して、西部地域の12オンス・ボトル入りコーラの1年間の平均売上などの属性データを動的に計算したり、レポートを作成したりできます。
属性計算次元はアウトラインには表示されません。属性計算次元は、Smart Viewなど、次元メンバーを選択した任意の場所で表示できます。
アプリケーションで最初の属性次元を作成すると、Essbaseによって、属性計算次元とそのメンバー(Sum、Count、Min、MaxおよびAvg)が作成されます。各メンバーは、属性で実行される計算のタイプを表します。
デフォルトの属性計算メンバーの理解を参照してください。
すべてのラベルのみ次元と同様、属性計算次元はその最初の子Sumの値を共有します。
メンバーのストレージ・プロパティを参照してください。
属性計算次元内のデータは、ユーザーが要求したときに計算され、その後は破棄されます。計算された属性データは、データベースには保管できません。
データ値の動的計算。を参照してください。
属性計算次元はアウトライン・エディタでは表示されません。この次元のメンバーは、スプレッドシートとレポートで表示できます。
属性次元に沿った集計はありません。属性データを計算するために、属性次元のメンバーに集計記号(+や-)またはメンバー式をタグ付けすることはできません。属性計算は、時間や計算順序について、動的計算メンバーとしてバッチ計算に影響を与えることはありません。
取得時に属性データを計算するため、Essbaseでは次のタスクが実行されます:
たとえば、図44に示すように、スプレッドシートのユーザーは、属性次元の2つのメンバー(「Ounces_16」と「Bottle」)と属性計算メンバー(Avg)をスプレッドシートのレポートに指定します。取得時に、Essbaseでは、現在のメンバーの組合せ(Actual -> Sales -> East -> Qtr1)に対してこれらの属性に関連付けられたすべての製品の平均売上高が動的に計算されます:
スプレッドシートの使用による属性計算メンバーへのアクセスを参照してください。
属性計算次元には、属性データを計算したりレポートしたりするために使用する5種類のメンバー(Sum、Count、Min、MaxおよびAvg)があります。
これらのデフォルトのメンバー名は、標準のメンバーと同じ命名規則に従って変更できます。属性計算次元のメンバー名の変更を参照してください。
Essbaseによる属性データの計算例として、次に示す東部の年次売上データを検討します:
図45は、計算された属性データがスプレッドシートのレポートでどのように表示されるかを示しています。属性に対して複数の属性計算メンバーを取得できます。たとえば、ボトルと缶に対してSum、Count、Avg、MinおよびMaxを計算できます。
Smart Viewで属性計算次元のメンバーにアクセスできます。スプレッドシートでは、ユーザーは次の方法のいずれかを使用して、属性計算次元メンバーを表示できます:
Oracle Hyperion Smart View for Office User's Guideを参照してください。
属性計算と取得のパフォーマンスを最適化するには、次の点を考慮してください:
属性計算の計算順序は、動的計算の場合と同じです。アウトラインについては、動的計算の計算順序を参照してください。
Essbaseでは、取得時に属性データが動的に計算されるため、属性計算は全体の(バッチ)データベース計算のパフォーマンスには影響しません。
クエリーにSumメンバーと、関連する基本メンバーに2パス・タグが付けられた属性次元メンバーが含まれている場合、取得時間が遅くなることがあります。
属性の取得パフォーマンスを最大化するには、次のいずれかの方法を使用します:
アウトラインのパフォーマンスの最適化のヒントを使用してアウトラインを構成します。
データの取得前に、基本次元の最下位レベルまでドリル・ダウンします。たとえば、Smart Viewでは、データなし操作機能を有効にして、レポートに含まれている基本次元の最下位レベルまでドリル・ダウンし、その後データを取得します。
基本次元のメンバーがいくつかの属性次元に関連付けられている場合は、それらの属性に従って基本次元メンバーをグループ化することを検討します。たとえば、Sample.Basicデータベースでは、すべての8オンスの製品をグループ化できます。
属性計算次元を使用して属性データを計算することに加え、標準次元または基本次元のメンバーに計算式を使用して、属性次元のメンバーに対して特定の計算を実行できます。たとえば、サイズがオンスで示された製品についてオンス当たりの収益性を判断できます。
2パス・メンバーに関連付けられた式で属性を使用する場合は、いくつかの制限が適用されます。表18および属性次元での2パス計算の理解で、2パス計算に関する行を参照してください。 |
表25で、属性に対する特定の計算の実行に使用できる関数を示します:
表 25. 属性に対する計算を行う関数
特定の属性を持つすべての基本メンバーのリストを生成します。たとえば、Bottle属性を持つメンバーのリストを生成してから、これらのメンバーの価格を上げます。 | |
計算される基本メンバーに関連付けられているレベル0属性メンバーの値を戻します。 たとえば、計算対象の基本メンバー(たとえば、「Cola」)に対して、サイズ属性の数値(たとえば、「Ounces」の下のメンバー12に対して12)を戻します。 式での@ATTRIBUTEVALのその他の使用例は、属性の式の計算を参照してください。 | |
日付文字列を計算のために数値に変換します。たとえば、@TODATEを@ATTRIBUTEVAL関数と組み合せて使用して、ある日付以降に開店した店舗の間接費を増額します。 | |
指定した条件を満たす属性または可変属性に関連付けられている基本次元メンバーのリストを生成します。たとえば、20オンス以上の製品のリストを生成してから、それらの製品の価格を上げます。 |
属性計算は、レベル0から開始され、最初の保管済メンバーで停止します。したがって、アウトラインでアウトライン階層内の2つの共有メンバーの間に保管済メンバーが配置されていると、より上位の共有メンバーは計算結果に含まれないことがあります。
次の例では、属性計算が実行されると、計算はレベル0のメンバー2から開始され、最初の保管済メンバーであるメンバーAが検出された時点で停止します。したがって、メンバー1は計算には含まれません。
Member 1 (stored) Member A (stored) Member 2 (shared) Member B (stored) Member 1 (shared member whose stored member is Member 1 above)
属性計算での予期せぬ結果を回避するために、共有メンバーと保管済メンバーを混在させないでください。この例の場合、メンバー2が共有されていない場合、またはメンバー1にアウトライン内の他の場所に対応する共有メンバーがない場合、計算結果は予期したとおりになります。
通常、製品はその製品を記述または定義する属性を持ちます。たとえば、ある製品が、製品サイズをオンスで記述する属性と、製品の種類を記述する属性を持つとします。このようなシナリオでは、製品は基本次元で、オンスと種類は属性次元です。
可変属性を使用すると、独立次元という3番目の次元との関連で2つの値を追跡できます。たとえば、8オンスの製品を1年間追跡するとします。このシナリオでは、時間が独立次元です。この3番目の係数の値は可変です(そのため「可変属性」という名前です)。たとえば、製品を1年間、1四半期または1か月間追跡できます。
注: | 独立次元には、連続と個別の2つのタイプがあります。連続次元のメンバーは連続を示します。たとえば、週、月および四半期は、時間次元内の連続を示します。個別次元のメンバーは、連続の意味を持ちません。たとえば、市場次元のカリフォルニア、テキサスおよびオハイオには、連続に基づいた関係はありません。 |
もう1つの例として、次のシナリオについて考えてみます: あるクライアントの営業担当者が1年の中ごろに変わったとします。表26に、半年間の顧客の売上合計と営業担当者の割当てを示します:
表 26. 可変属性の例: ある期間での営業担当者の変更
3月 |
4月 |
5月 |
6月 |
7月 |
8月 |
---|---|---|---|---|---|
4000 |
6000 |
2000 |
1000 |
1000 |
7000 |
ジョーンズ |
ジョーンズ |
ジョーンズ |
スミス |
スミス |
スミス |
この例では、営業担当者が可変属性です。データの取得により、営業担当者であるジョーンズが3月から5月までに総額$12,000の製品を顧客に販売し、その後、営業担当者であるスミスが6月から8月までに総額$9,000の製品を販売したことが示されています。可変属性を使用しない場合、営業担当者については現在の担当者であるスミスしか把握できず、すべての売上($21,000)がスミスの売上として示されます。
可変属性は、メンバーのグループ化に代わる方法を提供します。たとえば、色を使用してSKUをグループ化できるとします。このシナリオでは、属性次元「Color」はSUBSKUに関連付けられています:
Product_H | |__Family | | | |__SKU | | | |__SUBSKU | |__Color | |__SUBSKU
Colorを可変属性に設定すると、取得の結果は表27の値と同様になります:
複数のチェーンを持つ必要がある。
リーフ・レベルが一致する必要がある。
アウトラインでは可変属性をサポートできます。属性次元を可変属性として機能するように定義できます。また、必要な情報のタイプを反映するように可変属性を編集することもできます。
可変属性は、集約ストレージ・データベースとブロック・ストレージ・データベースでサポートされます。可変属性はデータベース・レベルで実装します。
可変属性を使用可能にして使用するには、次のワークフローを使用します:
アウトライン・プロパティで、可変属性を使用可能にします。
基本次元のメンバー・プロパティで、「属性」タブに移動し、独立次元(可変属性が依存する次元)を識別します。
たとえば、顧客Aの営業担当者の属性の関連付けが5月に変更される場合は、年が独立次元になります。
独立次元のタイプ(連続または個別)を指定します。連続独立次元の一例は、時間に基づいた独立次元です。個別独立次元には連続性はありません。たとえば、市場次元では、カリフォルニア、テキサスおよびオハイオには連続に基づいた関係はありません。
独立次元を可変属性に関連付けます。オプションで、範囲と関連付けモードを選択します。
属性の関連付けが当てはまる範囲を割り当てることができます。たとえば、「ジェーンが2007年7月から2008年6月までエンジニアである」のように属性の関連付けが適用される時間範囲を割り当てることができます。
関連付けモードは、Essbaseでの可変属性とその独立次元との関連付けの競合を処理する方法を指定します。使用できる関連付けモードは、「Overwrite」、「NoOverwrite」および「Extend」です。
アウトラインを保存し、再構築します。
必要に応じて、次のメンテナンス作業を実行します:
独立メンバーに新しい可変属性の関連付けを追加します(たとえば、従業員の新しい役職を追加します)。
独立メンバーの関連付けを削除します。
既存の独立次元のメンバーの関連付けを表示します(たとえば、会社に代理の販売管理者がいた月を表示します)。
基本次元から属性次元の関連付けを解除します。
次に示すレポート・ライター・コマンドは可変属性を使用できるように設計されています。
<PERSPECTIVE
<WITHATTREX
<ATTRIBUTEVA
次に示す計算関数およびコマンドには可変属性を使用できます。
@WITHATTR
@ISATTRIBUTE
@ISMBRWITHATTR
SET SCAPERSPECTIVE
次に示すMDX関数は可変属性を使用できるように設計されています。
AttributeEx
WithAttrEx
WITH PERSPECTIVEキーワード
『Oracle Essbaseテクニカル・リファレンス』を参照してください。
連続独立次元は、単一の次元(年や月など)として機能する必要があります。関連のない連続独立次元はサポートされていません。
連続独立次元およびメンバーは、最後に指定する必要があります。
独立メンバーは、保管されているレベル0のメンバーにする必要があります。
計算スクリプトにパースペクティブが指定されていない場合は、FIXコマンドに可変属性を含めることはできません。
範囲の開始/終了を示す独立メンバーの場合:
削除できません
共有すること、またはラベルのみにすることはできません
レベル0にする必要があります
別の次元に移動することはできません
他の範囲に移動することはできません
アウトラインが保存されるまでは、新たに移動または追加された独立メンバーを使用して範囲を示すことはできません。