MDX問合せの制約

MDXをEssbaseで使用する際の問合せの制約について説明します。

概要

次の概念が、MDX問合せの制約を理解するうえで当てはまります。

表4-21 MDX問合せの制約の概念

概念 説明

NON EMPTY処理

EssbaseがMDX問合せを処理し、軸仕様でNON EMPTYキーワードが使用される場合に設定する方法のことです。NON EMPTY仕様は、完全に#MISSING値を含むスライスを抑制することによって処理を最適化します。

クラスタ要素または対称セット

MDXのセットタプルのコレクションですが、内部的には、Essbaseはクラスタとタプルを使用してセットを表します。クラスタは、CrossJoin関数を使用して派生したセットの一種であり、CrossJoinへの引数は1つのディメンションのみからのセットです。

クラスタは、対称セットと考えることもできます。次のセットは対称セットであり、1つのクラスタとして格納できます。

CROSSJOIN(Products.LEVELS(0).MEMBERS, [Market].LEVELS(0).MEMBERS)

タプルは、様々なディメンションからのメンバーのコレクションです。次のセットにはタプルが1つあります。

{([Product].Product_1, [Market].Market_1)}

次のセットは、前述の2つのセットの和集合です。これは、クラスタおよびタプルとして内部に格納されます。

UNION(
CROSSJOIN(Products.LEVELS(0).MEMBERS, [Market].LEVELS(0).MEMBERS)
,
{([Product].Product_1, [Market].Market_1)}
)

コンパクト・セット

セットは、クラスタまたは対称セットとして内部的に表現できる場合、コンパクトな形式で格納されます。

フラット化セット

内部でタプルに拡張する必要があるセットは、フラット化されたセットです。フラット化されたセットは、処理するためにより多くのメモリーを消費します。Orderなどの特定のMDX関数には、セットを正しく処理するために、セットをフラット化する必要があるものがあります。そのため、次の項にリストされている特定の関数には、異なるセット・サイズまたは問合せの制約があります。

次のセットは、フラット化されたセットの例です。

{(Colas, East)
(Colas, West)
(Colas, South)
(Colas, Central)
(Root Beer, East)
(Root Beer, West)
(Root Beer, South)
(Root Beer, Central
(Cream Soda, East)
(Cream Soda, West)
(Cream Soda, South)
(Cream Soda, Central)
(Fruit Soda, East)
(Fruit Soda, West)
(Fruit Soda, South)
(Fruit Soda, Central)}

非対称セット

次のセットは、タプル要素とクラスタ要素のコレクションとして、内部的に格納されます。2つの要素を1つの要素に結合することはできません。このようなセットは、非対称セットと呼ばれます。

UNION({(Colas, East)}
       CROSSJOIN(
	    [Product].CHILDREN,
	    [Market].CHILDREN))

MDX問合せの制約

次のサイズ制約事項が、MDX問合せ、セット、および特定の関数に適用されます。

ノート:

一般的な問合せ制限には、次の例外が適用されます。問合せ対象のデータベースが、パーティションのターゲット・データベースである場合、MDXを使用して問合せできるキューブ・リージョンの最大サイズは、232個の潜在的なセルです。

表4-22 MDX問合せの制約の説明と単位

制約事項 単位

NON EMPTY句を使用したMDX問合せのすべての軸セットによって定義された問合せリージョン内のセルの数

2640

NON EMPTY処理後にクライアントに返せるセルの数

232

NON EMPTY句がないMDX問合せのすべての軸セットによって定義された問合せリージョンのセルの数

232

NON EMPTY処理後にNON EMPTYディレクティブで設定された軸内のタプルの数

228

コンパクト形式でのセットのサイズ

2640

フラット化形式でのセットのサイズ

232

セット内の要素の数

232

クラスタ要素内の(すべてのディメンションからの)メンバーの数

232

NON EMPTYセル処理を適用した後の問合せ内のセルの数

232

次の関数で処理できるセットのサイズ:

  • Distinct

  • Except

  • Filter

  • Intersect

  • Ntile

  • Order

  • Percentile

  • Rank

  • TopPercent

  • BottomPercent

  • TopSum

  • BottomSum

  • Hierarchize

  • Union (重複の除去あり)

  • NonEmptySubset (出力セット・サイズ)

  • TopCount (出力セット・サイズ)

  • BottomCount (出力セット・サイズ)

228未満

IEssOpMdxQuery Java APIインタフェースまたはEssMdx C API関数

  • 軸上のタプルまたはクラスタの最大数: 229-1

  • セルの最大数(セル・ステータスが要求された場合): 226-1

  • セルの最大数(セル・ステータスが要求されていない場合): 約227-1

MaxLを介して実行されるMDX問合せ

  • 列の最大数: 229-1

  • 行の最大数: 229-1