Transcript CHAPTER 1

제 15 장
데이터웨어하우스에서의
OLAP
2015-07-21
Data Warehousing
1
15.0 장의 목표
• 온라인 분석 처리(OLAP, online analytical
processing)에 대한 무제한의 요구.
• OLAP의 주요 특징과 기능을 상세히 검토.
• 차원 분석의 미묘한 복잡성을 파악
– 하이퍼큐브, 드릴-다운과 롤-업, 슬라이스-앤-다이스
의 의미를 배운다.
• 서로 다른 OLAP 모델들을 조사하고 당신의 환경
에 어떤 모델이 적합한지를 결정한다.
– 각 단계나 도구를 조사하여 OLAP 구현을 고려한다.
2015-07-21
Data Warehousing
2
15.1 온라인 분석 처리를 위한 요구
• For building a data warehouse
– Top-down approach: E-R modeling technique
– Bottom-up approach: several data marts
– A practical approach: conglomeration of supermarts
• In today’s business conditions, we find that
users need to go beyond such basic analysis
– 그들은 훨씬 더 복잡한 분석을 더 짧은 시간 내에 수행
할 수 있는 능력을 가져야 한다.
– 사용자들이 계속 경쟁력 있고 확장성이 있으려면 정확
히 무엇이 요구되는지를 인지한다.
2015-07-21
Data Warehousing
3
다차원 분석에 대한 필요
• Sales are interrelated to many business
dimensions
– The dates of the sales, the products, the distribution
channels, the stores, the sales territories, the
promotions, and a few more dimensions
• More useful query
– “지난 세 달 동안 각 각의 월별로 분류해서, South
Central 구역에 있는 각각의 가게에서 제품 촉진별로
분류해서, 예상 치에 비해서 그리고 이 제품의 이전 버
전에 비해서, 얼마나 많은 수입을 새로운 제품 X가 올
렸는가? ”
2015-07-21
Data Warehousing
4
빠른 접근과 강력한 계산
• 전체 기업에서 최근 몇 달 동안 이익이 급감한 이유를 조
사하는 업무 분석가를 생각해보자.
– 분석가는 이 분석을 회사 전체에 대한 지난 다섯 달 동안의 전반
적 매출을 각각의 월별로 분류한 질의로부터 출발할 것이다.
– 분석가는 지난 세 달 동안 매출은 떨어지지 않았으나 이익에서
급격한 감소가 있다는 것을 주시할 것이다.
– 분석가는 유럽 나라들에 대한 이익가능성을 나라별, 월별, 제품
별로 분류하기를 원한다. 이 단계는 분석가가 이익가능성에서의
감소에 대한 원인에 더 가까이 가게 한다.
– 분석가는 유럽 연합(EU) 안에 있는 나라들이 지난 두 달 동안 이
익이 급감했음을 주시한다.
– 더 심도 깊은 질의들은 제조와 다른 직접 비용들은 보통 수준 그
대로인데 간접 비용들이 솟아올랐다는 것을 나타낸다.
• Figure 15-1
2015-07-21
Data Warehousing
5
2015-07-21
Data Warehousing
6
강력한 계산
• A list of typical calculations
– 차원들의 계층을 따라 요약과 집계를 제공하는 롤-업.
– 차원들 간의 조합들에서, 최 상위 수준에서 가장 낮은
수준까지 차원들의 계층에 따른 드릴-다운.
– 판매수익들 (판매에서 비용을 뺀)의 계산과 같은 단순
한 계산.
– 전체 대비 부분들의 퍼센티지를 계산하기 위한 비율
계산.
– 주요 성과 지표들과 관련되는 대수 방정식.
– 이동 평균들과 성장 퍼센티지.
– 통계적 방법들을 사용한 경향 분석
2015-07-21
Data Warehousing
7
다른 분석 방법들의 한계
• OLTP와 기본 데이터 웨어하우스 환경들의 특성
– Figure 15-2
• Report Writers
– Ability to point and click for generating and issuing SQL calls, and
– Capability to format the output reports
• Spreadsheet : excel
– 당신이 어떤 셀의 값을 수정할 때 다른 관련 셀들의 값도 자동적으로 변
경된다.
• SQL (Structured Query Language)
– SQL 언어의 원래 목표는 최종 사용자 질의 언어였는데 이제는 노련한
사용자들에게도 이 언어가 너무 난해하다
– 복잡한 SQL 문장들을 정확히 형성할 수 있는 분석가를 생각할 수 있겠
지만, 시스템에 대한 부담은 여전히 거대하고 응답시간에 심각하게 영향
을 준다.
2015-07-21
Data Warehousing
8
2015-07-21
Data Warehousing
9
OLAP is the Answer
• 사용자들은 물론 복잡한 계산을 하는 다차원 분석을 수행
하는 능력을 필요로 한다.
• The basic virtues of OLAP
– 분석가, 임원, 관리자가 데이터의 표현으로부터 유용한 통찰력을 얻는다.
– 여러 차원들을 따라 측정치들을 재구성하여 여러 다른 견지에서 데이터
를 볼 수 있도록 한다.
– 다차원 분석을 지원한다.
– 각 차원 내에서 드릴-다운이나 롤-업을 할 수 있다.
– 수학적인 공식이나 계산을 측정치에 적용할 수 있도록 한다.
– 빠른-사고(speed-of-thought) 분석을 촉진하여 빠른 응답을 제공한다.
– 데이터 마이닝 같은 다른 정보 전달 기법들의 사용을 보완한다.
– 그래프나 차트를 사용한 시각적 표현을 통하여 결과 세트의 이해 증진.
– 웹에 구현.
– 고도의 대화식 분석을 위하여 설계.
2015-07-21
Data Warehousing
10
2015-07-21
Data Warehousing
11
OLAP 정의와 규칙
• The term OLAP in a paper entitled
– “Providing On-Line Analytical Processing to User Analysts,” by
Dr. E.F. Codd in 1993
• A short and precise definition for OLAP
– On-line Analytical Processing(OLAP) is a category of software
technology that enables analysts, managers and executives to gain
insight into data through fast, consistent, interactive access in a wide
variety of possible views of information that has been transformed from
raw data to reflect the real dimensionality of the enterprise as
understood by the user.
– 온라인 분석 처리는 사용자들에 의해서 이해되는 기업의 실제 차원성을
반영하기 위하여 원래의 데이터로부터 변환된 정보의 모든 가능한 뷰들
의 광범위한 다양성에 빠르고 일관된 대화식 접근을 통하여, 분석가, 관
리자, 그리고 임원이 데이터에 대해서 통찰력을 얻도록 가능하게 해주는
소프트웨어 기술의 한 범주이다.
2015-07-21
Data Warehousing
12
The initial twelve guidelines for an
OLAP system (pp. 449 - 451)
• Multidimensional
Conceptual View
• Transparency
• Accessibility
• Consistent Reporting
Performance
• Client/Server Architecture
• Generic Dimensionality
2015-07-21
• Dynamic Sparse Matrix
handling
• Multiuser Support
• Unrestricted Crossdimensional Operations
• Intuitive Data
Manipulation
• Flexible Reporting
• Unlimited Dimensions
and Aggregation Levels
Data Warehousing
13
Six Additional Rules for an OLAP
system
•
•
•
•
•
•
•
Drill-through to Detail Level
OLAP Analysis Models
Treatment of Nonnormalized Data
Storing OLAP Result
Missing Values
Incremental Database Refresh
SQL Interface
2015-07-21
Data Warehousing
14
OLAP Characteristics
• OLAP systems은
– 업무 사용자들이 데이터 웨어하우스에 있는 데이터에
관하여 다차원이고 논리적인 뷰를 갖도록 한다.
– 사용자들을 위하여 대화식 질의와 복잡한 분석을 쉽게
한다.
– 사용자들이 하나의 업무 차원을 따라 혹은 여러 차원
들에 걸친 측정치들에 관하여 더 상세한 사항들을 위
해서는 드릴-다운을 또 집계를 위한 롤-업을 가능하게
한다.
– 난해한 계산과 비교를 수행할 능력을 제공한다.
– 차트나 그래프를 포함한 많은 의미 있는 방식들로 결
과를 제시한다.
2015-07-21
Data Warehousing
15
15.2 주요 특징과 기능
• OLAP is an information delivery system for the data
warehouse, but OLAP is much more than that.
– 데이터 웨어하우스는 데이터를 저장하고 데이터에 대한 더 단순
한 접근을 제공한다.
– OLAP 시스템은 정보 전달 능력들을 더 새로이 높게 상승시킴으
로써 데이터 웨어하우스를 보완한다.
• Contents (소제목)
–
–
–
–
–
–
General Features : Figure 15-4
Dimensional Analysis
What are Hypercubes?
Drill-Down and Roll-Up
Slice-and-Dice or Rotation
Uses and Benefits
2015-07-21
Data Warehousing
16
2015-07-21
Data Warehousing
17
차원 분석
Dimensional Analysis
• The STAR schema in Figure 15-5
– PRODUCT, TIME, STORE
• Display the data for sales on a spreadsheet :
Figure 15-6
• A sample of simple queries
– Display the total sales of all products for past five
years in all stores
– Show comparison of total sales for all stores, product
by product, between years 2000 and 1999 only for
those products with reduced sales
– … on pages 355 - 356
2015-07-21
Data Warehousing
18
2015-07-21
Data Warehousing
19
2015-07-21
Data Warehousing
20
What are Hypercubes?
• Figure 15-7
– Two business dimensions of product and time
– Metrics to be analyzed
• Fixed cost, variable cost, indirect sales, direct sales, and
profit margin
– The three straight lines : multidimensional domain
structure(MDS)
• Figure 15-8
– Four dimensions
• STORE, TIME, PRODUCT, METRICS
2015-07-21
Data Warehousing
21
2015-07-21
Data Warehousing
22
2015-07-21
Data Warehousing
23
2015-07-21
Data Warehousing
24
2015-07-21
Data Warehousing
25
2015-07-21
Data Warehousing
26
드릴-다운과 롤-업
Drill-Down and Roll-Up
• In Figure 15-5
– These specific attributes of the product
dimensions
• Product name, subcategory, category, product line,
and department
• An ascending hierarchical sequence from product
name to department
• Figure 15-12
2015-07-21
Data Warehousing
27
2015-07-21
Data Warehousing
28
2015-07-21
Data Warehousing
29
2015-07-21
Data Warehousing
30
용도와 이점
• 사업 관리자, 임원, 분석가들의 증가된 생산성
• OLAP 시스템들에 내재하는 유연성은 사용자들이 자신
스스로 분석을 실행한다
• IT 개발자들에 대한 이점
• 사용자들에게 잔무가 감소한다
• 빠른 응용들의 전달
• 질의 수행에 걸리는 시간과 네트워크 트래픽에서의 감소
를 통한 더 효과적인 연산
• 업무 측정치들과 차원들을 가진 실세계 난제들을 모델하
는 능력
2015-07-21
Data Warehousing
31
15.3 OLAP MODELS
• ROLAP
– Relational online analytical processing
• MOLAP
– Multidimensional online analytical processing
• DOLAP
– Desktop online analytical processing
– Provide portability to users of OLAP
– Variation of ROLAP
2015-07-21
Data Warehousing
32
변종들의 개관
• MOLAP model
– Storing the data multidimensionally
– OLAP engine resides on a special server in
Figure 15-15
• ROLAP model
– Relies on the existing relational DBMS
– OLAP engine resides on the desktop in
Figure 15-15
2015-07-21
Data Warehousing
33
2015-07-21
Data Warehousing
34
2015-07-21
Data Warehousing
35
2015-07-21
Data Warehousing
36
MOLAP is the choice for faster
response and more intensive queries
2015-07-21
Data Warehousing
37
2015-07-21
Data Warehousing
38
15.4 OLAP 구현 고려사항
• MOLAP model
– The lack of standardization
– Scalability
• ROLAP model
– Using STAR schema
– Multidimensional representation of data in a
STAR schema arrangement
• Figure 5-20:
– Four Architectural Options
2015-07-21
Data Warehousing
39
2015-07-21
Data Warehousing
40
데이터 설계와 준비
• 데이터 웨어하우스는 OLAP 시스템에게 데이터를 공급
한다.
– MOLAP 모델에서는 별도의 소유권이 있는 다차원 데이터베이스
들은 데이터 웨어하우스로부터 다차원 큐브들의 형태로 공급된
데이터를 저장한다.
– 반면에 ROLAP 모델에서는 정적인 중간 데이터 저장소가 존재하
지는 않지만, 여전히 데이터는 동적으로 데이터를 읽으면서 큐브
들로 생성되어 OLAP시스템으로 밀어 넣어진다.
• 종종 당신은 데이터의 흐름을 짧게 하기를 원한다:
– 왜 OLAP 시스템을 운용 소스 시스템 자체 위에 구축하면 안 될까?
– 왜 OLAP 시스템으로 직접 데이터를 추출해서 넣으면 안 될까?
– 왜 번거롭게 데이터를 데이터 웨어하우스로 그리고 다시 OLAP
시스템으로 옮기는 것일까?
2015-07-21
Data Warehousing
41
운용 시스템상의 OLAP 구축의 문제
• OLAP 시스템은 변환되고 통합된 데이터를 필요로 한다.
– 시스템은 데이터가 도착되기 전에 어딘가에서 통합되고 정제된
다고 가정한다. 운용 시스템들 간의 불일치는 데이터 통합을 직
접 바로 지원하지 않는다.
• OLAP 시스템은 광범위한 이력 데이터를 필요로 한다.
– 운용 시스템은 이력 데이터를 제한된 범위 내에서만 유지한다.
• OLAP 시스템은 데이터가 다차원 표현 형태이기를 요구
한다.
– 다양한 운용 시스템들로부터의 데이터를 동시에 추출하여 요약
하려고 하는 것은 지킬 수 없다.
• 당신의 환경에 몇 개의 OLAP 시스템들을 가정하면,
– 운용 시스템들에서 각각의 OLAP 시스템들로 데이터를 추출해서
보내기 위한 별도의 인터페이스를 구축해야 한다. 이것이 얼마나
어려울 것인지 상상할 수 있는가?
2015-07-21
Data Warehousing
42
OLAP 시스템에서
중요한 데이터의 특성
• OLAP 시스템은 데이터 웨어하우스에 비하여 훨씬 적은
데이터를 저장하고 사용한다.
• OLAP 시스템에 있는 데이터는 요약된 것이다.
– 당신은 데이터 웨어하우스에서처럼 가장 낮은 상세 수준의 데이
터를 거의 찾아낼 수 없을 것이다.
• OLAP 데이터는 작업을 할 데이터가 훨씬 적다는 부분적
인 이유로, 처리하고 분석하는데 더 유연성이 있다.
• 당신의 환경에서 OLAP 시스템의 모든 사례는 그 사례들
이 서비스하려는 목적에 따라 고객 희망에 따른다.
– 바꾸어 말하면 OLAP 데이터는 더 세분화하려는 경향이 있지만
데이터 웨어하우스에 있는 데이터는 전사적 요구들을 서비스해
준다.
2015-07-21
Data Warehousing
43
마케팅 같은 특정 부서에 대한
OLAP 데이터를 준비하기 위한 기법
• 서브세트를 정의하라(Define Subset).
– 마케팅 부서가 흥미를 갖는 상세한 데이터의 서브세트를 선택하라.
• 요약하라(Summarize).
– 마케팅 부서가 요약하는데 필요로 하는 방식으로 집계 데이터 구조들을
요약하고 준비하라. 예를 들어 마케팅 부서에 의해 정의된 제품 범주들
을 따라서 제품들을 요약하라. 때때로 마케팅과 회계 부서는 제품들을
서로 다른 방식으로 분류할 수 있다.
• 비정규화 하라(Denormalize).
– 마케팅 부서가 비정규화된 데이터를 필요로 하는 것과 정확히 같은 방식
으로 관계형 테이블들을 조합하라. 만일 마케팅이 테이블 A와 B를 조인
할 필요가 있으나 재정은 테이블 B와 C를 조인할 필요가 있다면, 마케팅
OLAP 서브세트를 위해 테이블 A와 B를 조인하는 쪽으로 진행하라.
• 계산하고 유도하라(Calculate and Derive).
– 만일 당신의 회사에서는 측정치들의 몇몇 계산과 유도가 부문별로 특수
하다면 마케팅을 위한 것들을 사용하라.
• 인덱스(Index).
– 마케팅이 인덱스들을 구축하기에 적합한 속성들을 선택하라.
2015-07-21
Data Warehousing
44
2015-07-21
Data Warehousing
45
관리와 성능
• Administration
– OLAP system is part of the data warehouse
environment
– Administration of the OLAP is part of the data
warehouse administration
2015-07-21
Data Warehousing
46
관리와 경영에 관한 고려사항
• 어떤 데이터가 어떻게 접근될 지에 관한 예측
• 올바른 업무 차원들에 대한 선택
• 데이터 웨어하우스로부터 데이터를 적재하기 위한 올바른 필터들의
선택
• 데이터를 OLAP 시스템으로(MOLAP 모델) 옮기기 위한 방법들과 기
술들
• 집계, 요약 그리고 사전계산 선택
• OLAP 벤더의 소유권이 있는 소프트웨어를 사용하는 응용 프로그램
들 개발
• 다차원 데이터베이스의 크기
• 다차원 구조들의 희박-매트릭스 특징을 처리
• 가장 낮은 상세 수준까지의 드릴-다운
• 데이터 웨어하우스 혹은 소스 시스템들까지의 드릴-쓰로우
• OLAP 시스템 사례들 사이의 드릴-어크로스
• 접근과 보안 특권들
• 백업과 복원을 편하게 하는 설비들
2015-07-21
Data Warehousing
47
Performance
• The presence of an OLAP system in your data
warehouse environment shifts the workload
– 데이터 웨어하우스에 의존하여 수행되는 몇몇 질의들은 이제
OLAP시스템으로 재분배될 것이다.
– OLAP을 필요로 하는 질의 유형들은 복합적이고 복잡한 계산으
로 가득하다. 오랜 시간이 걸리고 까다로운 분석 세션들은 복잡
한 질의들로 구성된다.
• A corollary of shifting the complex queries to the OLAP
system is the improvement in the overall query
performance
– The OLAP system is designed for complex queries
• All the precalculations and preaggregations results in
faster response to queries at any level of summarization
– This speed and performance do not come without any cost
2015-07-21
Data Warehousing
48
OLAP Platforms
• 사용자의 편의성과 투입되는 비용에 따라
platform을 설정한다
• Main data warehouse system과 다른 platform이
필요한 경우
– 초기에는 data warehouse 시스템과 같이 사용하다가,
시스템이 느려지면(많은 사용자 또는 대용량의 데이
터로 인해) 다른 platform에다 구축한다
– 사용자가 분산되거나 main data warehouse와 다른
OLAP tools을 사용하면 다른 platform이 필요하다
– OLAP 시스템의 사용자들의 요구로 빈번한 refresh가
일어나는 상황이면 다른 platform 사용
2015-07-21
Data Warehousing
49
OLAP 도구와 제품
• List of a few guidelines to check products
– 당신의 응용들과 사용자들이 OLAP 제품들의 선택을
주도하도록 하라. 번드르르한 기술에 넋을 잃지 마라.
– 당신의 OLAP 시스템이 크기나 활동 중인 사용자들의
수가 증가한다는 것을 기억하라.
• 당신이 선택하기 전에 제품들의 비례확장성을 결정하라.
– OLAP 제품을 관리하는 것이 얼마나 쉬운지 고려하라.
– 성능과 유연성이 당신의 OLAP 시스템의 성공에 중요
한 요소다.
– 기술이 진보됨에 따라 ROLAP과 MOLAP 간의 장점들
에서의 차이가 어느 정도 희미해지는 것처럼 보인다.
• 당신의 사용자들의 분석 요구사항에 벤더 제품들을 일치시키
는 것에 집중하라. 번드르르한 기술이 항상 잘 해내는 것은 아
니다.
2015-07-21
Data Warehousing
50
OLAP 도구와 제품 선택시 선정 기준
•
•
•
•
•
데이터의 다차원 표현
집계, 요약, 사전계산, 그리고 유도들
확장 라이브러리에서의 식들과 복잡한 계산
교차-차원 계산
년에서-일까지(year-to-date), 현재와 과거의 회계 기간들,
이동 평균들, 그리고 이동 합계들과 같은 시간 지능성
• 한개 혹은 여러 차원들을 따라 피보팅, 교차-테이블, 드릴
-다운, 롤-업
• 스프레드시트, 소유권이 있는 클라이언트 도구들, 제삼자
-업체 도구들, 그리고 4GL 환경들과 같은 응용들이나 소
프트웨어와 OLAP 간의 인터페이스
2015-07-21
Data Warehousing
51
구현 단계
•
•
•
•
•
•
•
•
차원 모델링
MDDB의 설계와 구축
OLAP 시스템으로 옮겨지는 데이터의 선택
OLAP 시스템을 위한 데이터 획득 또는 추출
OLAP 서버로의 데이터 적재
데이터 집계와 유도 데이터의 계산
데스크탑에서의 응용의 구현
사용자 훈련의 준비
2015-07-21
Data Warehousing
52
요약
• OLAP은 아주 중요하다.
– 왜냐하면 OLAP의 다차원 분석, 빠른 접근, 그리고 강력한 계산은 그 부
분에서 다른 분석 방법들을 능가하기 때문이다.
• OLAP은 Codd 박사의 12개의 가이드라인에 근거하여 정의된다.
• OLAP 특성들
– 데이터의 다차원 뷰, 대화식이고 복잡한 분석 편의성, 복잡한 계산을 수
행하는 능력, 그리고 빠른 응답 시간들을 포함한다.
• 다차원 분석은 물리적 큐브에 의해서 표현될 수 있는 3차원에 국한
되지 않는다.
– 하이퍼큐브들은 더 많은 차원을 가진 뷰들을 표현하는 방법을 제공한다.
• ROLAP과 MOLAP은 두가지 중요한 OLAP 모델들이다.
– 그것들 사이의 차이점은 기본 데이터가 저장되는 방식에 있다. 당신의
환경에 어떤 모델이 더 적당한지 확인하라.
• OLAP 도구들은 성숙되어가고 있다.
– 몇몇 RDBMS들은 OLAP에 대한 지원을 포함한다.
2015-07-21
Data Warehousing
53