전체 글 1383

25 - SSAS - MDX 활용

MDX 활용 안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://sqlmvp.kr) 이번 시간에는 MDX 활용에 대해서 알아 보도록 하겠습니다. MDX – Multidimensional Expressions는 관계형 데이터베이스의 SQL에 해당. 다차원 큐브 공간은 해당 큐브를 구성하는 차원들에 의하여 구조가 결정됩니다. 큐브를 구성하는 차원들의 교차점에는 셀이라고 하는 단위 공간이 위치하며 분석의 대상이 되는 측정값이 들어 있습니다. 큐브 공간 임의의 위치에 있는 측정값들을 참조하려면 우선 해당 셀들의 주소를 알아야 합니다. 튜블(Tuple)은 다차원 큐브 공간의 주소를 나타내는 좌표를 의합니다. 기하학의 경우 2차원 공간에서는 (X, Y)와 같은 형태로 3차..

24 - SSAS - 집계 최적화

집계 최적화 안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://sqlmvp.kr) 이번 시간에는 [집계 최적화]에 대해서 알아 보도록 하겠습니다. 집계 디자인 마법사는 큐브의 각 부분에 대한 조회가 균일하다는 전제하게 유용합니다. 개발 내지는 운영 초기 단계에서는 사용자의 큐브에 대한 쿼리 패턴을 알지 못하기 때문에 이러한 접근이 유용 합니다. 물론 필요시 특성들의 AggregationUsage 속성 설정과 특성들의 특성관계, 사용자 계층 구성 등을 통해 최적화를 도모할 수 있습니다. 하지만 실제 사용자 쿼리에 최적화 되지 않은 설계일 수 있기 때문에 사용자가 운영하는 환경에서 큐브에 대한 사용자가 실제로 요청한 쿼리와 빈도 등을 집계 설계에 반영하는 것이 필..

23 - SSAS - 사용자 계층 설계

사용자 계층 설계 안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://sqlmvp.kr) 이번 시간에는 [사용자 계층 설계]에 대해서 알아 보도록 하겠습니다. 브라우저에서 큐브를 조회할 때 특성 계층을 행이나 열 필드에 중첩하면 하나의 특성에서 다른 특성으로의 드릴다운 및 드릴업 효과를 낼 수 있습니다. 사용자 계층은 특성 계층을 그대로 활용하면서 사용자 편의를 위해서 별도로 정의하는 계층 입니다. 예를 들어 기간 차원의 경우 년도-분기-월-일에 해당하는 계층구조를 미리 정의해서 사용하면 편리합니다. [사용자 계층구조 추가하기] 사용자 계층은 차원 디자이너에서 계층 및 수준 창으로 특성들을 마우스로 끌어다 원하는 위치에 놓음으로써 쉽게 생성 할 수 있습니다. [..

22 - SSAS - 집계 설계 이해 - (3)집계 마법사에 특성 추가

집계 설계 이해 – (3)집계 마법사에 특성 추가 안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://sqlmvp.kr) 이번 시간에는 [집계 마법사에 특성 추가]를 하도록 하겠습니다. 집계에 쓰이는 후보 특성을 추가함으로써 집계 설계에 영향을 줄 수 있습니다. 큐브 디자이너의 [큐브 구조] 탭에서 큐브 차원의 특성 들에 대하여 AggregationUsage 속성 설정을 통해서 집계 설계 참여 여부를 제어할 수 있습니다. 차원을 큐브에 포함 시키면 해당 차원의 모든 특성들의 AggregationUsage 속성은 Default로 설정 됩니다. 이런 경우 기본적으로 키 특성은 Unrestricted로 적용되므로 집계 설계 후보가 됩니다. 참고로 All 수준도 Unr..

21 - SSAS - 집계 설계 이해 - (2)파티션 수 변경

집계 설계 이해 - (2)파티션 수 변경 안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://sqlmvp.kr) 이번 시간에는 집계 설계 이해(파티션 수 변경)에 대해서 알아 보도록 하겠습니다. 집계 설계시 집계 디자인 마법사는 팩트 테이블의 행 수와 각 차원의 세분성 특성(Granular Attribute)의 행 수를 참고 합니다. 그러한 값들은 BIDS에서 처음 작업을 할 때 사용되는 데이터 원본에 의해서 자동으로 초기 설정됩니다. 따라서 실제로 운영될 환경에 맞는 근사치를 수작업으로 설정할 필요가 있습니다. [솔루션 탐색기]에서 [Adventure Works.cube]를 더블 클릭 또는 [디자이너 보기]를 선택 합니다. [파티션] 탭에서 [집계 디자인]을 ..

20 - SSAS - 집계 설계 이해 - (1)집계 디자인 마법사

집계 설계 이해 – (1)집계 디자인 마법사 안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://jevida.blog.me) 이번 시간에는 집계 설계 이해(집계 디자인 마법사)에 대해서 알아 보도록 하겠습니다. 집계와 사용자 계층 구조를 생성하는 과정과 특징을 이해하면 측정값과 차원을 최적으로 설계하는데 많은 도움이 됩니다. 집계 특성을 잘 이해하면 큐브 데이터를 저장하기 위한 디스크 공간을 최소로 하면서 조회 성능을 향상 시킬 수 있습니다. 또한 사용자 계층을 활용하여 더 효율적으로 큐브를 조회 하도록 할 뿐만 아니라 조회 성능을 개선할 수 있습니다. 큐브 최적화는 일회성이 아니고 진행형 입니다. SSAS는 사용자의 쿼리 로그를 관리함으로써 많이 사용하는 쿼리..

18 - SSAS - 계정차원 - (2)단항 연산자

단항 연산자 안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://jevida.blog.me) 이번 시간에는 [단항 연산자]에 대해서 알아 보겠습니다. 계정차원의 집계는 각각의 멤버별로 다른 규칙을 적용해야 할 필요가 있습니다. 예를 들어 부모 값에 더한다, 부모 값에서 뺀다, 부모 값에 포함시키지 아니한다 등 다양한 규칙이 존재할 수 있습니다. 그리고 이러한 규칙은 각 멤버별로 존재하기 때문에 차원 테이블에 별도의 열로 관리하는 것이 가능 합니다. 각 멤버별로 부모 멤버로의 집계 규칙을 단항 연산자(Unary Operator) 기능을 통해 해결 합니다. 사용가능한 단항연산자 산술연산자 - (+, -, *, /) (~) - (~)는 부모값에 포함시키지 않을 때 사..

17 - SSAS - 계정차원 - (1) 계정 인텔리전스

계정차원 – 계정 인텔리전스 안녕하세요 강성욱 입니다.(www.sqltag.org, www.sqler.com, http://jevida.blog.me) 이번 시간에는 계정차원(계정 인텔리전스)에 대해서 알아 보도록 하겠습니다. 모든 기업에서 대차대조표나 손익계산서 등과 같이 재무 분석은 가장 큰 관심사이고 핵심이 되는 영역입니다. 그런데 분석에서 가장 중요한 역할을 하는 차원인 계정 과목 계층 구조의 특수성으로 인해 접근 및 설계 방법이 기존 영역과 다릅니다. 계정 차원은 다른 차원과 구별되는 특징이 있습니다. 계정 차원의 계층 구조상에서 리프멤버들의 수준 깊이가 다양하게 존재. 하위 수준에서 상위 수준으로 집계가 단순하지 않음. 자식 멤버들의 값이 부모 멤버로 더해지기도 하고 빼지기도 함. 더해지거나 ..