데이터 전처리: 데이터 통합

ㅁ 데이터 통합

ㅇ 정의:
서로 다른 출처의 데이터를 하나의 일관된 형식과 구조로 결합하여 분석이나 활용이 가능하도록 만드는 과정.

ㅇ 특징:
– 데이터 소스가 다양(관계형 DB, 로그 파일, API 등)
– 스키마 매핑, 중복 제거, 형식 변환 등의 과정 필요
– 배치 또는 실시간 방식 모두 가능

ㅇ 적합한 경우:
– 여러 시스템에서 생성된 데이터를 통합 분석할 때
– 데이터 웨어하우스, 데이터 레이크 구축 시

ㅇ 시험 함정:
– 데이터 통합과 데이터 변환을 혼동
– ETL과 ELT의 처리 순서를 바꿔서 묻는 문제

ㅇ 시험 대비 “패턴 보기” 예시:
O: “여러 데이터 소스를 하나의 통합된 뷰로 제공한다.”
X: “데이터 통합은 데이터 품질 검증과 무관하다.”

================================

1. ETL

ㅇ 정의:
Extract(추출), Transform(변환), Load(적재)의 순서로 데이터 웨어하우스나 분석 시스템에 적재하는 전통적 데이터 통합 방식.

ㅇ 특징:
– 변환을 적재 전에 수행
– 배치 처리 중심
– 데이터 품질 및 일관성 확보 용이

ㅇ 적합한 경우:
– 데이터 변환 로직이 복잡하고 사전 정제가 필요할 때
– 데이터 웨어하우스 환경

ㅇ 시험 함정:
– ETL에서 변환이 적재 후에 이루어진다고 오답 유도
– 실시간 처리와 혼동

ㅇ 시험 대비 “패턴 보기” 예시:
O: “ETL은 변환을 적재 전에 수행한다.”
X: “ETL은 변환을 적재 후에 수행한다.”

================================

2. ELT

ㅇ 정의:
Extract(추출), Load(적재), Transform(변환)의 순서로, 원시 데이터를 먼저 적재한 후 대상 시스템 내에서 변환하는 방식.

ㅇ 특징:
– 변환을 적재 후에 수행
– 클라우드 기반, 대규모 데이터 처리에 유리
– 대상 시스템의 처리 성능 활용

ㅇ 적합한 경우:
– 데이터 웨어하우스/데이터 레이크가 강력한 처리 능력을 가질 때
– 다양한 분석 목적에 따라 변환 로직이 자주 변경될 때

ㅇ 시험 함정:
– ETL과 순서를 혼동
– ELT를 ETL의 오타로 생각하게 하는 문제

ㅇ 시험 대비 “패턴 보기” 예시:
O: “ELT는 변환을 적재 후에 수행한다.”
X: “ELT는 변환을 적재 전에 수행한다.”

================================

3. 데이터 파이프라인

ㅇ 정의:
데이터의 수집, 이동, 변환, 적재 과정을 자동화한 일련의 처리 흐름.

ㅇ 특징:
– 배치 및 스트리밍 모두 지원 가능
– 모듈화, 재사용성 높음
– 모니터링 및 에러 처리 기능 포함

ㅇ 적합한 경우:
– 지속적 데이터 흐름이 필요한 환경
– 데이터 처리 자동화와 안정성이 중요한 경우

ㅇ 시험 함정:
– 파이프라인과 단순 스크립트 작업을 혼동
– 파이프라인이 반드시 실시간만 지원한다고 오해

ㅇ 시험 대비 “패턴 보기” 예시:
O: “데이터 파이프라인은 배치와 실시간 처리를 모두 지원할 수 있다.”
X: “데이터 파이프라인은 실시간 처리만 가능하다.”

================================

4. CDC(Change Data Capture)

ㅇ 정의:
데이터베이스에서 변경된 데이터(삽입, 수정, 삭제)를 실시간 또는 근실시간으로 감지하여 다른 시스템으로 전송하는 기술.

ㅇ 특징:
– 변경분만 전송하여 효율성 높음
– 로그 기반, 트리거 기반 등 구현 방식 다양
– 실시간 데이터 동기화 가능

ㅇ 적합한 경우:
– 운영 DB와 분석 DB 간 실시간 동기화 필요 시
– 이벤트 기반 아키텍처 구현 시

ㅇ 시험 함정:
– CDC를 전체 데이터 복제와 혼동
– CDC가 배치 처리만 가능하다고 오답 유도

ㅇ 시험 대비 “패턴 보기” 예시:
O: “CDC는 변경된 데이터만을 전송한다.”
X: “CDC는 전체 데이터를 항상 전송한다.”

ㅁ 추가 학습 내용

ETL과 ELT의 장단점 비교
– ETL: 데이터 추출(Extract) → 변환(Transform) → 적재(Load) 순서로 진행. 변환이 데이터 웨어하우스 외부에서 이루어지므로 변환 과정에서 성능 부담이 적으나, 대량 데이터 처리 시 변환 단계가 병목이 될 수 있음.
– ELT: 데이터 추출(Extract) → 적재(Load) → 변환(Transform) 순서로 진행. 원본 데이터를 먼저 데이터 웨어하우스나 데이터 레이크에 저장한 뒤, 내부 컴퓨팅 자원을 활용해 변환 수행. 클라우드 환경에서 저장소와 컴퓨팅 자원의 확장성이 뛰어나고 다양한 변환 시나리오를 지원하므로 선호됨.

데이터 파이프라인 주요 도구
– Apache Airflow: 워크플로우 스케줄링 및 오케스트레이션 도구
– AWS Glue: 서버리스 ETL 서비스
– Google Dataflow: 스트리밍 및 배치 데이터 처리 서비스

배치 처리 vs 스트리밍 처리
– 배치 처리: 일정량의 데이터를 모아 한 번에 처리, 지연이 있지만 대량 데이터 처리에 효율적
– 스트리밍 처리: 데이터가 발생하는 즉시 실시간 처리, 지연이 거의 없으나 시스템 설계 복잡도가 높음

CDC(Change Data Capture) 유형
– 로그 기반 CDC: 데이터베이스의 트랜잭션 로그를 읽어 변경 사항 추적, 성능 영향이 적고 실시간성 우수
– 트리거 기반 CDC: 데이터베이스 트리거를 사용해 변경 사항 기록, 구현이 간단하나 성능 부하 가능성 있음

CDC 구현 도구 예시
– Kafka Connect
– Debezium

데이터 통합 시 중요 요소
– 스키마 매핑: 서로 다른 데이터 구조를 일치시키는 과정
– 데이터 품질 관리: 정확성, 일관성, 완전성 확보
– 메타데이터 관리: 데이터의 구조, 출처, 변환 이력 등을 체계적으로 관리

답글 남기기

Your email address will not be published. Required fields are marked *.

*
*