You are on page 1of 23

제 26 장

데이터 웨어하우징과 OLAP

Fundamentals of Database Systems


R. A. Elmasri and S. B. Navathe

Ch26 Fundamentals of Database Systems 1


© 2005 황규영 홍의경 음두헌 박영철 김진호 조완섭

목차차

26.1 소개

26.2 데이터 웨어하우스의 특징

26.3 데이터 웨어하우스를 위한 데이터 모델링

26.4 데이터 웨어하우스 구축

26.5 데이터 웨어하우스의 일반적인 기능

26.6 데이터 웨어하우징과 뷰

26.7 데이터 웨어하우스에서 문제점과 미해결과제들

Ch26 Fundamentals of Database Systems 2


26.1 소개
26.1 소개,, 정의
정의 및
및 용어
용어

• 데이터 웨어하우스
– 경영자의 의사결정을 지원하는 주제 중심적 (subject- oriented) 이고 통
합적 (integrated) 이며 , 비휘발성 (nonvolatile) 이고 , 시간에 따라 변화
(time-variant) 하는 데이터의 집합 (W. H. Inmon)
– 데이터 웨어하우스는 복잡한 분석과 지식발견 , 그리고 의사결정에 필
요한 데이터를 제공하며 , 분석용 질의에 대하여 빠른 수행을 지원함
– 데이터 웨어하우스는 대개 OLAP(on-line analytical processing), 의사
지원 시스템 (decision-support systems ; DSS), 데이터 마이닝 등의
응용과 함께 사용됨

Ch26 Fundamentals of Database Systems 3


26.1 소개
26.1 소개,, 정의
정의 및
및 용어
용어

• OLAP (On-line Analytical Processing)


– 데이터 웨어하우스에 저장된 대규모의 복잡한 데이터에 대하여 고도의 분
석 질의를 처리하는 도구
– OLTP : 온라인 트랜잭션 처리 ( 전통적인 DB transaction system)
• DSS ( 의사 결정지원 시스템 )
– 최고 경영자의 복잡하고 중요한 의사 결정을 과학적으로 지원하는 시스템
– 중역 정보 시스템 (executive information systems ; EIS) 이라고도 함

Ch26 Fundamentals of Database Systems 4


26.2 데이터
26.2 데이터 웨어하우스의
웨어하우스의 특징
특징
• 데이터 웨어하우징
– 지식 운영자 ( 임원 , 관리자 , 분석가 ) 들이 더 적합하고 더 빠르게 의
사결정을 할 수 있도록 지원하는 의사 결정 기법들의 집합

그림 26.1 데이터 웨어하우징의 전체 처리 과정

Ch26 Fundamentals of Database Systems 5


26.2 데이터
26.2 데이터 웨어하우스의
웨어하우스의 특징
특징
• 데이터 웨어하우스의 특징
– 다차원 데이터 모델의 사용
– 여러 소스로부터 추출되어 통합 정제된 대규모 데이터를 대상으로 분
석함
– 의사 결정에 필요하다면 과거 데이터까지도 분석 대상으로 함
– 데이터는 수시로 갱신되는 것이 아니라 주말이나 월말 등 주기적으로
갱신되므로 비휘발성임 – refresh policy 에 따라서 갱신됨 ( 주로 삭
제 / 추가 됨 )
– 경황 분석이나 시계열 분석 등 고차원 분석업무 수행
– 분석 속도를 고속화하기 위하여 분석 결과를 실체화된 뷰 형태로 저장
해둠
– 여러 수준에서의 집계 (aggregation) 연산이 요구됨

Ch26 Fundamentals of Database Systems 6


26.3 데이터
26.3 데이터 웨어하우스를
웨어하우스를 위한
위한 데이터
데이터 모델링
모델링
• 데이터 모델링 기법
– 다차원 모델은 데이터 간의 상호관계를 이용하여 데이터 큐브 (data cube) 라고
불리는 다차원 매트릭스 (multidimentional matrices) 상에 데이터를 배치함
– 다차원 매트릭스 형태로 조직된 데이터에 대하여 질의를 수행하는 것이 관계 모
델로 조직된 경우보다 일반적으로 더 나은 성능을 얻음
– 예 : 표준 스프레드 시트 – 2 차원 모델 ( 지역별 상품정보 )

REGION
REG1 REG2 REG3 …
P123
PRODUCT P124
P125
P126

그림 26.2 2 차원 메트릭스

Ch26 Fundamentals of Database Systems 7


26.3 데이터
26.3 데이터 웨어하우스를
웨어하우스를 위한
위한 데이터
데이터 모델링
모델링
3 차원 메트릭스 구조를 가진 데이터의 예 – 시간 차원의 추가

QRT4
QRT3 FISCAL QUARTER
QRT2
QRT1

P123 REG1

P124 REG2
REG3
P125
REGION
P126

P127

PRODUCT

그림 26.3 데이터 큐브
Ch26 Fundamentals of Database Systems 8
26.3 데이터
26.3 데이터 웨어하우스를
웨어하우스를 위한
위한 데이터
데이터 모델링
모델링
• 데이터 모델 ( 계속 )
– 피보팅 : 차원 계층의 구조를 변경하는 연산 ( 그림 26.4 는 그림 26.3 의
다차원 모델에 대한 피보팅 결과임 )
– 롤업 / 드릴 다운 : 차원 내의 속성들의 계층구조를 따라 더욱 구체화된
뷰 혹은 더욱 요약된 뷰로 이동하는 연산 ( 그림 26.5 와 26.6 은 그림
26.2 에 대한 롤업과 드릴다운의 결과임 )
– 차원 테이블과 사실 테이블 : 차원 테이블은 다차원 모델에서 차원의 속성
들로 구성되며 , 사실 테이블은 기록된 사실 투플 ( 관측치 포함 ) 들로 구성

– 스타 스키마는 한 개의 사실 테이블과 각 차원마다 하나씩 생성한 차원 테
이블 ( 들 ) 로 구성되며 , 사실 테이블과 차원 테이블은 외래키를 이용하여
관계를 가짐 : 그림 26.7
– 스노우플레이크 스키마는 스타 스키마에서 차원 테이블을 정규화
(normalizing) 하여 테이블들의 계층으로 구성한 스타 스키마의 변형 : 그
림 26.8
– 사실 군집 (fact constellation) 은 차원 테이블을 공유하는 사실 테이블의 집
합 : 그림 26.9

Ch26 Fundamentals of Database Systems 9


QRT4
QRT3 FISCAL QUARTER
QRT2
QRT1

P123 REG1
REG2
P124
REG3
P125
REGION 그림 26.4 데이터 큐브의 피보팅
P126 ( 축의 의미가 변경됨 )
P127 P126 PRODUCT
P125
P124
… P123
PRODUCT
REG1 QTR1

REG2 QTR2
QTR3
REG3
FISCAL QUARTER
REG4

REGION

Ch26 Fundamentals of Database Systems 10


REGION
REG1 REG2 REG3 …
P123
P124
P125
P126

PRODUCT

그림 26.5 롤업 연산

드릴다운 연산 REGION
P1XX
P2XX
PRODUCT
CATEGORUES P3XX
P4XX

Ch26 Fundamentals of Database Systems 11


REGION
REG1 REG2 REG3 …
P123
P124
P125
P126

PRODUCT
그림 26.6 드릴다운 연산

REGION1 REGIO N1 REGION2


REGIO N2
SUBREG1
S SUBREG2
UBREG1S SUBREG3
UBREG2 S UBREG3 SSUBREG4
UBREG4 SSUBREG1
UBREG1
AA
P123
BB
STYLES
CC
DD
AA
P124
B
SYTLES B
C
C
A
BA
P125
CB
STYLES
DC
D
Ch26 Fundamentals of Database Systems 12
DIMENSION
TABLE
PRODUCT
Prod. No.
FACT
Prod. Name
TABLE
Prod. Descr.
BUSINESS RESULTS
Prod. Style
PRODUCT
Prod. Line DIMENSION
QUARTER
REGION TABLE
FISCAL QUARTER
QTR
SALES REVENUE YEAR
REGION BEG DATE
SUBREGION END DATE

그림 26.7 하나의 사실 테이블과 여러 개의


차원 테이블로 구성된 스타 스키마

Ch26 Fundamentals of Database Systems 13


PNAME
Prod. Name PRODUCT
Prod. Desc. Prod. No.
Prod. Name
Style
FACT
Prod. Line No.
TABLE
PLINE BUSINESS RESULTS FQ DATES
Prod. Line No. PRODUCT BEG. DATE
QUARTER DIMENSION
Prod. Line Name END DATE
REGION TABLE
FISCAL QUARTER
QTR
SALES REVENUE YEAR
REGION BEG DATE
SUBREGION

그림 26.8 스노우플레이크 스키마

Ch26 Fundamentals of Database Systems 14


FACT TABLE1 DIMENSION TABLE FACT TABLE2
BUSINESS RESULTS PRODUCT BUSINESS RESULTS
PRODUCT Prod. No. PRODUCT
QUARTER Prod. Name FUTURE QTR
REGION Prod. Desc. REGION
REVENUE Prod. Style PROJECTED_
Prod. Line REVENUE

그림 26.9 사실 군집

Ch26 Fundamentals of Database Systems 15


26.3 데이터
26.3 데이터 웨어하우스를
웨어하우스를 위한
위한 데이터
데이터 모델링
모델링
• 데이터 웨어하우스에서 인덱싱 기법
– 대규모 데이터에 대하여 복잡한 분석 질의를 실행하므로 성능의 보장이 중
요한 관건임
– 비트맵 인덱스는 인덱스가 구축된 속성의 각 값에 대하여 하나의 비트맵을
생성한 것으로 , 해당 값이 나타나는 행의 위치에 1 을 set
– 만일 테이블에서 j 번째 행이 인덱스가 구축된 속성의 값으로 K 를 가진다
면 값 K 에 대한 비트 벡터에서 j 번째 위치를 1 로 설정함
– 특정값을 가지는 투플 집합을 비트맵으로부터 바로 얻을 수 있게 하는 것
이 핵심 아이디어임
id name city salary Seoul Pusan Taejun
1 CHO Seoul 100 1 0 0
2 Kim Seoul 200 1 0 0
3 Park Pusan 200 0 1 0
4 Kim3 Taejun 30 0 0 1
5 Yoon Pusan 200 0 1 0
6 J eong Taejun 140 0 0 1

Employee Table Bitmap Index on city

Ch26 Fundamentals of Database Systems 16


26.3 데이터
26.3 데이터 웨어하우스를
웨어하우스를 위한
위한 데이터
데이터 모델링
모델링

• 조인 인덱스
– 사실 테이블과 차원 테이블의 왜래키 관계를 조인 인덱스로 구축하여 조인
처리의 속도를 향상시킴

• 요약 테이블
– 데이터 웨어하우스 자료는 변경이 거의 일어나지 않으므로 ( 주기적으로
자료의 삭제와 추가만 있음 ) 요약 정보를 유지하는 것이 성능 향상에 도
움에 됨
– 실제로 데이터 웨어하우스에서는 요약 정보를 저장하여 다음 질의에서 신
속하게 응답하도록 하는 연구를 활발하게 진행하였음 (materialized
views)

Ch26 Fundamentals of Database Systems 17


26.4 데이터
26.4 데이터 웨어하우스
웨어하우스 구축
구축
• 실체화된 뷰의 생성
– 데이터 웨어하우스를 구축할 때 설계자는 사용자들이 자주 요청할 분석 정
보를 예상하여 광범위한 뷰들을 미리 생성해 두어야 함
• 데이터 웨어하우스의 사용 패턴을 반영하여 적합한 스키마를 설계해야 함
– 마케팅 위주의 소비자 - 상품 관련 데이터 웨어하우스는 기금의 적립을 목
적으로 하는 자선단체의 데이터 웨어하우스와 그 구조가 다를 것임
• 데이터 웨어하우스를 위한 데이터 획득 (acquisition) 과 구축
– 데이터는 다수의 이질적인 소스들로부터 추출됨 – 타 데이터베이스 , 금융
시장으로부터 발생하는 데이터 ( 환율 , 주가 등 ), 환경 데이터 등
– Data Cleaning - 데이터의 일관성 (consistency) 유지를 위하여 데이터 형
식 통일 (cm, inch, yard) 혹은 잘못된 데이터의 수정
– Data Loading – 스타 스키마 상으로 자료를 입력함
– Data Refreshing Policy 결정 – 얼마 주기로 소스 테이타의 변경을 반영할
것인가 ?

Ch26 Fundamentals of Database Systems 18


26.4 데이터
26.4 데이터 웨어하우스
웨어하우스 구축
구축
• 데이터 웨어하우스 구축시 고려할 중요 사항들
– 용도 예측 : 누가 데이터 웨어하우스를 사용할 것이며 , 어떻게 사용할 것
인가에 대한 예측
– 데이터 모델의 적합성 점검
– 이용 가능한 소스들의 특성 분석
– 메타 데이터 구성요소의 설계
• 데이터 웨어하우스의 핵심 요소
• 기술 측면의 메타 데이터와 사업 측면의 메타 데이터로 구분됨
• 기술 측면의 메타 데이터는 데이터 획득과정 , 저장구조 , 데이터 명
세 , 웨어하우스 연산 및 관리 , 그리고 접근 지원 기능 등을 포함
• 사업 측면의 메타 데이터는 관련 있는 사업 규칙 (business rules) 과
웨어하우스를 지원하는 조직의 세부 항목 등을 포함함
– 모듈 방식의 구성요소 설계
– 관리와 갱신의 설계
– 분산 및 병렬구조의 고려 ( 적절한 성능 보장을 위하여 )

Ch26 Fundamentals of Database Systems 19


26.5 데이터
26.5 데이터 웨어하우스
웨어하우스 일반적인
일반적인 기능
기능
• 뛰어난 질의 기능 제공
– DW 는 데이터 위주의 복잡한 분석 질의 (ad hoc query) 를 지원해야 하므로 전통적
인 데이터베이스와 비교하여 뛰어난 질의 기능을 제공해야 함
• 주요 질의 연산들
– 롤업 (Roll-up) : 데이터를 개략화된 수준으로 요약한다 ( 주별 요약에서 월별 혹은
분기별 요약으로 개략화 ).
– 드릴 다운 (Drill-down) : 데이터를 상세 수준의 레벨로 요약한다 (roll-up 의 반대 ).
– 피보트 (Pivot) : 테이블에 대하여 행과 열의 위치를 바꾼다 .
– 슬라이스 & 다이스 (Slice & dice) : 차원에 대하여 프로젝션 연산을 수행한다 .
– 소팅 (Sorting) : 데이터를 순서 값에 의해 정렬한다 .
– 선택 (Selection): 특정 값을 가진 데이터 혹은 해당 범위에 속하는 데이터를 선택한
다.
– 유도된 속성들 (Derived attributes) : 저장된 속성 혹은 유도된 속성으로부터 연산에
의하여 생성되는 속성이다 .

Ch26 Fundamentals of Database Systems 20


26.6 데이터
26.6 데이터 웨어하우징과
웨어하우징과 뷰

• 데이터 웨어하우스와 뷰의 비교
– 데이터 웨어하우스는 요구 시점에 실체화되는 데이터베이스 뷰와 달리 실
체화되어 저장됨
– 데이터 웨어하우스는 일반적으로 다차원 모델이나 관계 데이터베이스의
뷰는 관계 모델임
– 데이터 웨어하우스는 최적화된 성능을 위하여 인덱스를 구축할 수 있으
나 , 뷰에 대해서는 인덱스를 구축할 수 없음
– 데이터 웨어하우스는 분석을 위하여 특별한 기능을 지원하지만 뷰는 그렇
지 않음
– 데이터 웨어하우스는 일반적으로 하나의 데이터베이스가 수용하기 힘든
대규모 통합된 데이터를 제공하는 반면 , 대부분의 뷰는 DB 로부터 사용
자가 관심을 가지는 부분만을 추출한 작은 데이터임

Ch26 Fundamentals of Database Systems 21


26.7 데이터
26.7 데이터 웨어하우스
웨어하우스 구현의
구현의 어려움
어려움

• 데이터 웨어하우스의 구축 (construction), 관리 (administration), 양


질 유지 (quality control) 등이 DW 와 관련된 중요한 문제로 등장함
– 구축시 데이터 마트를 먼저 구축하고 , 점진적으로 전사적 DW 로 확장해
나가는 것도 한가지 구축 방법이 됨
– DW 관리는 웨어하우스의 크기와 복잡성에 비례하는 중요한 작업이며 ,
조직에서는 관리의 복잡한 특성을 실질적으로 이해하고 있어야 함 ; 특히
DW 관리는 DB 관리 업무를 포함하는 광범위한 작업임
– 양질의 DW 에서만 양질의 분석 결과가 나온다는 사실을 명심해야 하며 ,
구축시 뿐 아니라 그 이후에도 데이터의 질을 유지하는 것이 중요함
• 조직에서는 한사람의 관리자 보다는 DW 전문 관리 팀을 유지하는
것을 고려해야 함
– 여러 분야의 전문가들로 구성함

Ch26 Fundamentals of Database Systems 22


26.7 데이터
26.7 데이터 웨어하우스
웨어하우스 구현의
구현의 어려움
어려움 –– 미해결
미해결 문제점
문제점

• 학술적 연구가 필요한 분야


– 강도 높은 수작업을 요하는 데이터 획득 (data acquisition) 분야
– 양질의 데이터 관리 (data quality management) 분야
– 적합한 접근 경로와 데이터 구조의 생성 및 선택 문제
– 자발적 유지 기능 (self-maintainability)
– 기능성 (functionality) 과 성능의 최적화 등에서 자동화 기술 개발
• 데이터 웨어하우스의 지능화와 자체적 통제 (self-governing) 기능 강

– 능동형 데이터베이스 기능을 데이터 웨어하우스에 적용하는 문제
– 데이터 웨어하우스의 생성과 유지 과정에서 도메인 규칙과 비즈니스 규칙
의 반영 문제

Ch26 Fundamentals of Database Systems 23

You might also like