저장 영역 아웃라인 집계를 위한 설계 고려 사항
이 항목에서는 Essbase ASO(합계 저장영역) 큐브에 대한 아웃라인을 설계할 때의 주요 설계 고려 사항을 나열합니다. Query 수행 방식은 Outline 계획과 많은 관련이 있습니다. 저장, 동적 또는 대체 계층(속성 차원 및 공유 멤버)으로 구현할 계층을 고려할 때는 여기에서 권장 사항을 사용하십시오.
설계 권장 사항의 구현된 예는 갤러리에서 사용할 수 있는 ASOsamp.Basic 큐브를 참조하십시오.
ASO 개요 설계
집계 저장 영역 아웃라인을 설계할 때는 다음 정보를 고려하십시오.
-
동적 계층이 아닌 저장된 계층을 최대한 사용합니다.
-
필요한 경우에만 공유 멤버를 사용합니다.
-
계층의 수를 최소화합니다. 예를 들어, 각 추가 저장된 계층은 뷰 선택을 느리게 하고 집계된 데이터의 크기를 늘릴 수 있습니다.
-
계층이 첫 번째 계층의 작은 하위 집합인 경우 작은 계층을 동적 계층으로 만드는 것이 좋습니다. 계층 데이터를 질의하는 빈도 및 검색 시 동적으로 질의할 때 질의 성능에 미치는 영향 등을 고려해야 합니다.
-
속성의 성능은 저장된 계층의 멤버에 대한 성능과 동일합니다.
-
기본 멤버에 대한 속성의 연관 레벨이 높을수록 검색 질의 속도가 빨라집니다.
속성 차원 및 ASO 큐브
이 항목에서는 속성과 관련하여 집계 스토리지와 블록 스토리지 큐브 간의 차이에 대한 정보를 제공합니다. 이 항목의 정보를 사용하려면 블록 스토리지의 속성 개념에 대해 이미 알고 있어야 합니다. Essbase 속성 작업을 참조하십시오.
집계 저장영역 큐브에 사용되는 경우 다음 정보가 속성 차원에 적용됩니다.
-
더하기(+) 통합 연산자만 속성 차원 내에서 사용할 수 있습니다.
-
지정된 속성 차원의 경우 모든 연계가 기본 차원의 한 레벨이어야 합니다. 예를 들어, ASOsamp.Basic 큐브에서 저장소 관리자 속성 차원에 대한 연관은 저장소 차원의 레벨 0과 연관됩니다. 속성 연관에는 다음과 같은 제한 사항이 적용됩니다.
-
레벨 0: 공식이 없는 동적 또는 저장된 계층의 레벨 0 멤버와 속성을 연계할 수 있습니다.
-
비레벨 0: 기본 저장된 계층의 상위 레벨 멤버에만 속성을 연계할 수 있습니다.
-
속성 차원에 계층 유형이 없습니다. 속성 차원을 동적 또는 저장된 계층으로 지정할 수 없습니다. Essbase는 속성 차원을 기본 차원의 저장된 대체 계층으로 취급합니다. 예를 들어, ASOsamp.Basic 데이터베이스에서 Essbase는 Store Manager 속성 차원을 Store Manager 차원이 Stores 차원의 저장된 대체 계층인 것처럼 처리합니다.
쿼리 추적이 사용으로 설정된 경우 Essbase는 속성 차원 데이터에 대한 쿼리를 고려하며 집계 뷰 선택에 속성 차원 멤버를 포함할 수 있습니다. 사용량을 기준으로 뷰 선택을 참조하십시오.
주:
비레벨 0 멤버와 연계된 속성 멤버에 대한 질의는 비레벨 0 멤버의 하위 멤버에 대한 값을 반환합니다. 집계 저장영역 큐브의 속성 멤버에 대한 이러한 질의 동작은 블록 저장영역 큐브의 동작과 다릅니다.
ASO 큐브의 속성 질의
속성 질의 데이터를 기반으로 뷰를 선택하고 작성할 때 속성 데이터에 대한 일부 질의는 검색 시 항상 동적으로 계산되므로 질의 성능에 영향을 줄 수 있습니다.
속성 차원 멤버를 포함하는 모든 질의에는 기본 차원의 멤버가 하나 이상 포함되어야 합니다. 쿼리에 단일 속성 차원 및 전체 합계 차원 멤버가 포함된 경우 Essbase는 쿼리 데이터를 집계하여 쿼리 성능을 향상시킬 수 있습니다. 다른 경우 Essbase는 검색 시 쿼리를 계산해야 합니다.
다음 표에서는 속성 쿼리 유형 및 Essbase에서 쿼리를 계산하는 방법에 대해 설명합니다.
표 36-2 속성 질의 및 계산 성능
| 속성 질의 유형 | 질의 계산 유형 |
|---|---|
|
질의에는 전체 합계 기본 차원 멤버와 하나의 속성 차원의 멤버가 포함됩니다. |
Essbase는 쿼리 데이터를 집계할 수 있으므로 쿼리 성능이 향상될 수 있습니다. |
|
질의에는 기본 차원의 모든 멤버와 다중 속성 차원의 멤버가 포함됩니다. |
Essbase는 레벨 0 입력 데이터를 기반으로 검색 시 쿼리를 계산합니다. |
|
질의에는 기본 차원 멤버(또는 레이블 전용으로 태그 지정된 차원 멤버)의 모든 하위 멤버와 하나의 속성 차원의 멤버가 포함됩니다. |
Essbase는 레벨 0 입력 데이터를 기반으로 검색 시 또는 기본 차원의 집계 데이터를 기반으로 쿼리를 계산합니다. |
아래 개요 그림에서 RealDimension은 모든 종속 항목의 합계입니다(레이블 전용으로 태그가 지정되지 않음). 쿼리에 단일 속성 차원(예: AttributeDimension1)의 멤버가 하나 이상 포함된 경우 기본 차원 멤버(RealDimension)와 교차하면 Essbase는 데이터에 대한 집계 셀을 작성하여 쿼리 성능을 향상시킬 수 있습니다.
그러나 다음 질의는 검색 시 항상 계산됩니다.
-
속성 차원(예: AttributeDimension1) 및 RealDimension의 1차 하위 구성요소의 멤버에 대한 데이터를 요청하는 질의는 레벨 0 입력 데이터 또는 집계의 데이터를 기반으로 검색 시 동적으로 계산됩니다.
-
다중 속성 차원(예: AttributeDimension1 및 AttributeDimension2) 및 기본 멤버 차원(예: RealDimension)에서 데이터를 요청하는 질의는 레벨 0 입력 데이터를 기반으로 검색 시 동적으로 계산됩니다.
그림 36-4 속성 쿼리 개요 예

속성 질의 및 다중 계층
여러 계층이 있는 차원에서 데이터를 질의할 때 다음과 같은 방법으로 데이터를 질의하면 질의 성능이 향상될 수 있습니다.
-
쿼리할 계층을 선택합니다.
-
Smart View에서 계층을 확대하여 세부 데이터를 찾도록 이동합니다.
동일한 쿼리에 동적 계층 멤버 및 저장된 계층 멤버를 포함하려면 큰 내부 메모리 캐시가 필요할 수 있으므로 쿼리 성능이 저하됩니다.