데이터베이스

[DW] 데이터웨어하우스의 특성과 개념

mdowon285 2025. 4. 7. 17:06

 

OLTP(Online Transaction Processing)와 OLAP(Online Analytical Processing)는 대용량 데이터를 저장하고 분석하는 데 사용되는 데이터베이스 관리 시스템이다. 대부분의 회사는 OLTP 및 OLAP 시스템을 함께 사용해 비즈니스 인텔리전스 요구사항을 충족한다. 그러나 OLTP와 OLAP에서 데이터 관리의 접근 방식과 목적은 크게 다르다.

 

OLTP의 목적은 복수의 사용자 PC에서 발생되는 트랜잭션(Transaction)을 처리하는 것이다. 처리 결과를 요청한 사용자 PC에 되돌려 준다. 반면 OLAP의 목적은 DB에 저장돼 있는 데이터를 분석하는 데 있다. 데이터 분석(인사이트)을 통해 사용자에게 유의미한 정보를 제공한다.

 

 
구분
OLTP
OLAP
목적
비즈니스 활동 지원
비즈니스 활동에 대한 평가 및 분석
특징
데이터의 삽입(INSERT) 및 업데이트(UPDATE)가 빈번히 일어나 DB에 최신 데이터를 유지하고 데이터 무결성을 보장
데이터 분석 및 집계를 통해 사용자의 의사결정에 도움을 주는 것으로 데이터 분석, 데이터 마이닝에 주로 사용
퀴리
1) 새로운 책이 출판
-> 목록에 책이름, 가격, 수량 추가(INSERT)
2) 기존 베스트셀러 책이 추가 입고
-> 책 수량 변경(UPDATE)
3) 책 판매 중단
-> 목록에서 책 정보 삭제(DELETE)
1) 전체 책 재고 수량 파악
-> 전체 책 수량 집계(COUNT)
2) 오늘 판매 수익을 파악하자
-> 오늘 판매된 책 가격 집계(SUM)
데이터 표현시간
실시간
과거
관리단위
테이블
분석된 정보
정규화
정규화된(일반적으로 3NF) 다수의 테이블로 이뤄짐
비정규화된 테이블로 이뤄짐
처리속도
수초 이내
데이터의 양에 따라 집계 시간이 상대적으로 오래 걸림
최적화 방법
트랜잭션 효율화, 무결성 극대화
조회속도, 정보의 가치, 편의성
데이터의 특성
트랜잭션 중심
정보 중심
예시
회원정보 수정
상품 주문
댓글 남기기 및 수정
1년간의 주요 인기 트렌드
한 달간의 항목별 수입, 지출
10년간의 직급별 임금 상승률

데이터웨어하우스(이하 DW)는 기업 내부 및 외부 데이터를 특정 목적에 맞게 가공(정제)해 분석할 수 있도록 통합한 데이터 집합체다. DW의 특징은 크게 4가지로 나뉜다.

 

1. 주제 중심적(Subject Oriented)

    • 업무기능별로 관리되는 다수의 운영계 데이터를 전사 관점에서 중복을 최소화하고 모든 업무에 공유할 수 있도록 통합하는 '기준'
    • 전사 공통 관심주제를 중심으로 관련 데이터를 통합

2. 통합적(Integrated)

    • Legacy 시스템이 보유한 데이터에서 필요한 데이터를 추출해 원하는 형태로 변형한 뒤, 데이터를 통합
    • 데이터 모델링을 통해 데이터 정합성을 보장하며 전사적인 데이터 표준화를 통해 데이터 통일성 확보

3. 시계열적(Time Variant)

    • 데이터는 오랜 기간 동안 보유되며 과거와 현재의 Trend에 대한 분석 및 예측이 가능하게 일련의 Snapshots처럼 저장함

4. 비휘발성(Non Volatile)

    • 데이터의 갱신이 발생하지 않는 조회 전용
    • 운영계에서 발생한 변경요건을 갱신하지 않고 Snapshot 형태로 반영

 

 

[데이터웨어하우스의 주제중심적 특성]

조직 안에 있는 여러 부서는 각자의 업무 특성에 따라 별도의 데이터를 가지고 있다. 한 명의 고객이 은행의 여러 서비스를 동시에 이용해도 각 부서는 본인의 업무 주제 외 다른 서비스의 이용 여부는 알 수 없다. 데이터웨어하우스는 이처럼 흩어져 있는 데이터를 하나의 통합적인 주제를 중심으로 모아 고객의 서비스 이용 형태를 볼 수 있다.

 

 

[데이터웨어하우스 개념도]

 

 

[ETL의 개념 및 작업 절차]

ETL은 Extract(추출) / Transform(가공) / Loading(전송) 등의 축약어다. 데이터를 소스(Legacy) 시스템에서 추출해 정제 및 변환한 뒤 DW에 적재하기까지의 과정이다. DW 아키텍처 구성 요소 간의 일관성과 통합성을 유지하는 역할을 수행한다.

=> 소스 시스템에서 특정 데이터가 변경되면 로그 데이터를 생성하고, DW에 주기적으로 데이터를 가져와 신규/변경분을 적재한다.

 

※ ETL은 DW 설계 요소에서 가장 중요한 부분 중 하나다. ETL 단계에서 데이터를 잘 정재해야 이후 정합성과 무결성이 만족돼 정확한 데이터를 볼 수 있다.

 

 

[ETL 개념도]

 
구분
의미
추출(Extraction)
운영계 DB로부터 DW에 저장할 데이터를 추출 -> 초기(Full) / 변경(일, 월 단위)
가공(Transformation)
추출한 데이터를 Cleansing하고 통합된 Format으로 변환
적재(Loading)
변환된 데이터를 DW와 DM에 적재

 

 

 

[ETL 작업절차]

 

ETL 작업에선 규칙 적용과 클렌징 과정이 수반된다. 실제 설계 과정에선 데이터를 1:1로 가져오기도 하지만, 분할하고 치환하는 경우가 많다. 예시로 17A554322라는 제품 번호를 추출할 경우 제품 번호의 여러 구성요소(17-지역코드/A-영업구역/5543-제품코드/22-제품사이즈 등)로 나눠 적재한다. 이런 작업은 각자의 변환 규칙을 동일하게 적용해서 설계에 반영되야 한다.

 

또 속도가 중요한 계정계 특성상 벨리데이션 체크를 잘 하지 않기 때문에 데이터가 깨끗하게 들어있지 않다. 널값이나 더미 컬럼 등 찌꺼기 데이터가 많다. 그러나 정보계인 DW는 일련의 규칙을 적용해 찌꺼기 데이터를 클렌징한 뒤 적재해야 한다.

 

 

[EDW 정의]

EDW(Enterprise DataWarehouse)는 RTE(Real Time Enterprise) 환경에서 DW를 주제별로 확장한 모델이다. 기업 리소스의 유기적 통합, 다원화된 관리 체계 장비, 데이터 중복 방지 등을 위해 시스템을 확장 재설계하는 모델이다. 실시간 기업(RTE)을 위한 실시간성 정보수집, 분석의 성격을 포함하고 있으며 CDC, CEP 기술 등을 활용한다.

 

CDC - Change Data Capture. 데이터베이스 및 테이블에서 변경내용을 캡쳐해 타겟 시스템으로 전송하는 기술. Oracle, SQL Server 등의 제품에서 제공.

CEP - Complex Event Processing. 실시간으로 발생하는 많은 사건 중 의미가 있는 것만을 추출할 수 있도록 사건 발생 조건을 정의하는 데이터 처리 기법. 실시간 빅데이터 처리에서 사용.

 

 

[EDW 특징]

다양한 주제 영역 - 복수의 업무 영역을 지원

Mixed Workload 최적화 - 사용자의 접근 허용과 Data Mart 양육. 동적인 환경에서 유연성과 성능 고려

명세 및 이력 Data 축적 - 적절한 요약 혹은 집계 Data를 생성시킬 수 있는 분석 기반

Data 추적성과 동기화 - 항상 해당 운영 Data를 추적 및 동기화

필수 - 고가용성(No Downtime), 업무지속성(장애 극복 및 복구) 보장

확장성 - 필요한 확장성을 선형적으로 보장

 

 

[EDW와 DW 비교]

특징
EDW
DW
통합대상
기업 내/외부 데이터
주로 기업내부 데이터
처리
실시간 처리지향
Batch에 의존
기술
EAI와 같은 통합기술 + DW 기술
DW 기술
데이터
Transaction Data + 분석 Data
분석 데이터
정보시스템
RTE 통합시스템
ERP, MIS, CRM