CREATE SESSION CUBE 문(MDX)

기존 서버 큐브에서 세션 큐브를 만들고 채웁니다. 세션 큐브는 현재 세션 내에서만 볼 수 있고 다른 세션에서 찾아보거나 쿼리할 수 없습니다. 세션 큐브는 세션을 닫을 때 암시적으로 삭제됩니다.

구문

CREATE SESSION CUBE session_cube_name FROM <cube list> (<param list>)

<cube list>::= source_cube_name [,<cube list>]

<param list>::= <param> ,<param list> | <param>

<param>::= <dims list> | <measures list>

<measures list>::= <measure>[, <measures list>] 

<dims list>::= <dim def> [, <dims list>]

<measure>::= MEASURE source_cube_name.measure_name [<visibility qualifier>] [AS measure_name] 

<dim def>::= <source dim def> | <derived dim def>

<source dim def>::= DIMENSION source_cube_name.dimension_name [<dim flags>] [<visibility qualifier>] [AS dimension_name>] [FROM <dim from clause> ] [<dim content def>]

<dim flags>::= NOT_RELATED_TO_FACTS 

<dim from clause>::= <reg dim from clause> 

<dim reg from clause>::= dimension_name

<dim content def>::= ( <level list> [,<grouping list>] [,<member slice list>] [,<default member>] )

<level list>::= <level def> [, <level list>]

<level def>::= LEVEL level_name [<level type> ] [AS level_name] [<level content def>]

<level content def>::= ( <property list> ) | NO_PROPERTIES

<level type>::= GROUPING

<property list>::= <property def> [, <property list>]

<property def>::= PROPERTY property_name 

<grouping list>::= <grouping entity> [,<grouping list>]

<grouping entity>::= GROUP group_level_name.group_name (<mixed list>)

<grp mixed list>::= <grp mixed element> [,<grp mixed list>]

<grp mixed element>::= <grouping entity> | <member def>

<member slice list>::= <member list>

<member list>::= <member def> [, <member list>]

<member def>::= MEMBER member_name

<default member>::= DEFAULT_MEMBER AS MDX_expression

<visibility qualifier>::= HIDDEN 

구문 요소

  • session_cube_name
    세션 큐브의 이름입니다.

  • source_cube_name
    세션 큐브가 기준으로 하는 큐브의 이름입니다.

  • source_cube_name.measure_name
    세션 큐브에 포함되는 원본 측정값의 정규화된 이름입니다. 측정값 차원의 계산 멤버는 허용되지 않습니다.

  • measure_name
    세션 큐브에 있는 측정값의 이름입니다.

  • source_cube_name.dimension_name
    세션 큐브에 포함되는 원본 차원의 정규화된 이름입니다.

  • dimension_name
    세션 큐브에 있는 차원의 이름입니다.

  • FROM <dim from clause>
    파생된 차원 정의에 대해서만 유효한 지정입니다.

  • NOT_RELATED_TO_FACTS
    파생된 차원 정의에 대해서만 유효한 지정입니다.

  • <level type>
    파생된 차원 정의에 대해서만 유효한 지정입니다.

주의

서버 및 로컬 큐브와 달리 세션 큐브는 세션 큐브를 만든 세션이 끝나면 지속되지 않습니다. 세션 큐브는 해당 세션 큐브를 정의하는 정의와 측정값으로 정의됩니다. 다음과 같은 두 가지 유형의 차원이 있습니다.

  • 원본 차원 - 하나 이상 원본 큐브의 일부인 차원입니다.

  • 파생된 차원 - 새 분석 기능을 제공하는 차원입니다. 파생된 차원은 세로 또는 가로로 분리되거나 차원 멤버의 사용자 지정 그룹화를 포함하는 원본 차원을 기반으로 정의된 일반 차원일 수 있습니다. 또한 파생된 차원은 데이터 마이닝 모델을 기반으로 하는 데이터 마이닝 차원일 수 있습니다.

[!참고]

차원 키워드는 차원이나 계층을 참조할 수 있습니다.

세션 큐브는 주로 Microsoft Excel과 같은 클라이언트 응용 프로그램에서 동적으로 특성 멤버를 사용자 지정 멤버 그룹으로 그룹화하는 데 사용됩니다. 세션 큐브에서는 다음 태스크를 수행할 수 있습니다.

  • 원본 큐브에 있는 차원을 제거합니다.

  • 차원에 계층을 추가하거나 제거합니다.

  • 측정값 그룹이나 특정 측정값을 제거합니다.

  • 기존 특성에 대한 그룹을 만들기 위해 특성 바인딩을 기반으로 새 특성을 추가합니다.

중요 정보중요

세션 큐브 개체에 대한 보안은 기본 원본 개체로부터 상속됩니다. 세션 큐브는 동작 및 계산 스크립트와 같은 다른 개체도 상속 받습니다.

CREATE SESSION CUBE 문은 다음 규칙을 따릅니다.

  • 부모-자식 계층에 대해 그룹화를 수행할 수 없습니다.

  • ROLAP 차원에 대해 그룹화를 수행할 수 없습니다.

  • 연결된 차원에 대해 그룹화를 수행할 수 없습니다.

  • 사용자 지정 롤업이 있는 수준에 대해 그룹화를 수행할 수 없습니다.

  • 불연속화 특성 계층에 대해 그룹화를 수행할 수 없습니다.

  • 수준 간에 다 대 다 관계가 있는 계층(예: 연령 및 성별)인 비자연 계층에 대해 그룹화를 수행할 수 없습니다.

  • MDX 스크립트에 있는 큐브 이름에 대한 명시적 참조는 세션 큐브에 다른 이름이 있으므로 그룹화에 의해 끊어집니다. 대신 CURRENTCUBE 키워드를 사용합니다.

  • 명시적 기본 멤버가 있는 차원에 대해 그룹화를 수행할 수 없습니다.

  • 그룹화를 수행하면 원래 서버 큐브의 세션 범위 계산 멤버는 삭제됩니다.

  • 서버 큐브의 큐브 차원에 대해 그룹화를 수행하면 동일한 차원을 기반으로 하는 모든 큐브 차원에 영향을 줍니다.

다음 예에서는 Reseller Sales Amount 측정값, Reseller 차원, Product 차원, Geography 차원 및 Date 차원을 포함하는 Adventure Works 큐브의 세션 범위 버전을 만드는 방법을 보여 줍니다. 이 세션 큐브 내에 두 개의 그룹이 생성됩니다. 한 그룹에는 유럽 국가가 포함되고 다른 그룹에는 북아메리카 국가가 포함됩니다. 이 예제는 사용자가 멤버의 사용자 지정 그룹화를 만들 때 Microsoft Excel에서 실행하는 CREATE SESSION CUBE 문의 단순한 버전입니다.

CREATE SESSION CUBE [Adventure Works_XL_GROUPING1] 
   FROM [Adventure Works] 
   ( MEASURE [Adventure Works].[Internet Sales Amount]
   ,MEASURE [Adventure Works].[Reseller Sales Amount]
   ,DIMENSION [Adventure Works].[Date].[Calendar]
   ,DIMENSION [Adventure Works].[Date].[Calendar Year]
   ,DIMENSION [Adventure Works].[Date].[Calendar Semester]
   ,DIMENSION [Adventure Works].[Date].[Calendar Quarter]
   ,DIMENSION [Adventure Works].[Date].[Month Name]
   ,DIMENSION [Adventure Works].[Date].[Date]
   ,DIMENSION [Adventure Works].[Geography].[Country] 
      HIDDEN AS _XL_GROUPING81
   ,DIMENSION [Adventure Works].[Geography].[State-Province]
   ,DIMENSION [Adventure Works].[Geography].[City]
   ,DIMENSION [Adventure Works].[Geography].[Postal Code]
   ,DIMENSION [Adventure Works].[Geography].[Geography]
   ,DIMENSION [Adventure Works].[Product].[Product Categories]
   ,DIMENSION [Adventure Works].[Product].[Category]
   ,DIMENSION [Adventure Works].[Product].[Subcategory]
   ,DIMENSION [Adventure Works].[Product].[Product]
   ,DIMENSION [Adventure Works].[Product].[Product Key]
   ,DIMENSION [Adventure Works].[Reseller].[Reseller]
   ,DIMENSION [Adventure Works].[Reseller].[Geography Key]
   ,DIMENSION [Geography].[Country] 
      NOT_RELATED_TO_FACTS FROM _XL_GROUPING81 
          ( LEVEL [(All)]
         ,LEVEL [Country1] GROUPING
         ,LEVEL [Country]
            ,GROUP [Country1].[CountryXl_Grp_1] 
                ( MEMBER [Geography].[Country].&[Canada]
                  ,MEMBER [Geography].[Country].&[United States] )
            ,GROUP [Country1].[CountryXl_Grp_2] 
                ( MEMBER [Geography].[Country].&[France]
                  ,MEMBER [Geography].[Country].&[Germany]
                  ,MEMBER [Geography].[Country].&[United Kingdom] ) 
            ) 
   )

참고 항목

참조

관련 자료