ADP/필기 - 2과목

ETL(Extraction, Transformation and Load)

hyerimir 2023. 8. 13. 15:42

 

ETL(Extraction, Transformation and Load):

- 데이터의 이동 및 변환 절차와 관련된 업계 표준용어

- 재사용이 가능한 컴포넌트들로, 대용량 데이터를 처리하기 위한 MPP(Massively Parallel Processing)를 지원

- Batch(일괄) ETL, Real Time(실시간) ETL로 구분됨

 

ETL의 기능

Extraction(추출) : 하나 또는 그 이상의 데이터 원천(Source)들로부터 데이터 획득

Transformation(변형) : 데이터 클렌징, 형식변환, 표준화, 통합 또는 다수 애플리케이션에 내장된 비지니스 룰 적용

Load(적재) : 변형 단계의 처리가 완료된 데이터를 특정 목표 시스템에 적재

 

ETL의 작업 단계

0. Interface : 데이터 원천(Source)으로부터 데이터를 획득하기 위한 인터페이스 메커니즘 구현

1. Staging : 획득된 데이터를 스테이징 테이블에 저장

2. Profiling : 스테이징 테이블에서 데이터 특성을 식별하고 품질을 측정

3. Cleansing : 다양한 규칙들을 활용해 프로파일링된 데이터의 보정 작업을 수행

4. Integration : 데이터 충돌을 해소하고, 클렌징된 데이터를 통합

5. Denormalizing : 운영 보고서 생성 및 데이터 웨어하우스 또는 데이터 마트에 대한 데이터 적재를 위해 데이터 비정규화 수행

 

 

ODS(Operational Data Store):

- 데이터에 대한 추가 작업을 위해 다양한 데이터 원천(Source)들로부터 데이터를 추출, 통합한 데이터베이스

- 일반적으로 실시간(Real Time) 또는 실시간 근접(Near Real Time) 트랜잭션 데이터 혹은 가격 등의 원자성(개별성)을 지닌 하위 수준 데이터들을 저장하기 위해 설계됨

 

ODS 구성 단계

1) 인터페이스 단계

: 데이터 획득하는 단계, 실시간 데이터 복제 인터페이스 기술들이 함께 활용됨

- OLAP(Online Analytical Processing) : 데이터웨어하우스 상의 데이터에 대해 다양한 방식으로 다차원 분석을 진행하는것

2) 데이터 스테이징 단계

: 데이터 원천들로부터 트랜잭션 데이터들이 추출되어 하나 또는 그 이상의 스테이징 테이블들에 저장되는 단계

: 이 테이블들은 정규화가 배제되며, 테이블의 스키마는 데이터 원천의 구조에 의존적

: 데이터 원천과 스테이징 테이블과의 데이터 매핑은 일대일 또는 일대다로 구성됨

: 데이터가 스테이징 테이블에 적재되는 시점에 적재 타임스탬프, 데이터 값에 대한 체크 섬 등의 통제(Control) 정보들이 추가됨

: 이때 일괄(Batch) 작업 형태인 정기적인 ETL과 실시간 ETL을 혼용할 수 있음

3) 데이터 프로파일링 단계

: 데이터 품질 점검

4) 데이터 클렌징 단계

: 오류 데이터들을 수정

5) 데이터 인티그레이션 단계

: 수정 완료한 데이터를 ODS 내의 단일 통합 테이블에 적재

6) 익스포트 단계

 

데이터 웨어하우스

: ODS를 통해 정제 및 통합된 데이터가 데이터 분석과 보고서 생성을 위해 적재되는 데이터 저장소

 

데이터 웨어하우스의 특징

- 주제 중심성(Subject Oriented) : 데이터의 웨어하우스의 데이터는 실 업무 상황의 특정 이벤트나 업무 항목을 기준으로 구조화되므로, 최종사용자(end user)도 이해하기 쉬운 형태를 지님

- 영속성, 비휘발성(Non Volatile) : 데이터 웨어하우스의 데이터는 최초 저장 이후에는 읽기 전용(Read Only)의 속성을 가지며, 삭제되지 않음

- 통합성(Integrated) : 기관, 조직이 보유한 대부분의 운영 시스템들에 의해 생성된 데이터들의 통합본

- 시계열성(Time Variant) : 운영 시스템들은 최신 데이터를 보유하고 있지만, 데이터 웨어하우스는 시간 순에 의한 이력 데이터를 보유

 

데이터 웨어하우스의 테이블 모델링 기법

- 스타스키마

: 조인스키마라고도 하며, 데이터 웨어하우스의 스키마 중 가장 단순함

: 단일 사실 테이블을 중심으로 한 다수의 차원 테이블들로 구성됨

: 스타 스키마의 사실 테이블은 보통 제 3정규형으로 모델링하며, 차원테이블들은 보통 비정규화된 제 2정규형으로 모델링하는 것이 일반적

장점 : 복잡도가 낮아 이해하기 쉽고, 쿼리 작성이 용이하고 조인 테이블 개수가 적음

단점 : 차원 테이블에 대한 비정규화에 따른 데이터 중복으로 인해 테이블을 적재할 때 상대적으로 많은 시간이 소요

- 스노우 플레이크 스키마

: 스타 스키마의 차원 테이블을 제 3정규형으로 정규화한 형태

장점 : 데이터의 중복이 제거돼 데이터 적재 시 시간 단축

단점 : 스타 스키마에 비해 스키마 구조의 복잡성이 증가하므로 조인 테이블의 개수가 증가하고 쿼리 작성의 난이도 상승

 

 

ODS와 DW의 비교

ODS

- 데이터의 내용 : 현재 또는 비교적 최신 데이터

- 데이터의 양 : 비교적 소규모 데이터

- 데이터의 갱신 : 지속적으로 갱신되어 현재의 DB 상태를 반영(Volatile)

- 기술적 요소 : 데이터베이스 처리의 모든 기능을 사용하도록 설계됨

DW

- 데이터의 내용 : 오래된 상세 데이터, 현재 상세 데이터, 요약 데이터, 2차로 가공된 고도로 요약된 데이터 등 다양한 구조의 데이터

- 데이터의 양 : 대규모 데이터

- 데이터의 갱신 : 데이터 축적 보관(Non-Volatile)

- 기술적 요소 : 단순한 적재(Load)와 접근(Access) 중심