데이터 가공 및 품질 관리
1. dbt (data build tool)
dbt는 SQL만으로 데이터를 변환(Transform)하고, 테스트하며, 문서화할 수 있는 현대적 데이터 스택의 핵심 도구입니다.
dbt의 핵심 가치
- SQL 기반: 복잡한 Python/Spark 코드 없이 SQL로만 정교한 가공 로직 구현.
- 버전 관리: 모든 가공 로직이 Git으로 관리되며, 코드 리뷰가 가능함.
- 테스트 내장: 데이터의 고유성(Unique), 필수값(Not null) 등을 자동으로 검증.
- 자동 문서화: 데이터 간의 선후행 관계를 나타내는 리니지(Lineage) 그래프 자동 생성.
2. 데이터 품질 관리 (Data Quality)
파이프라인을 타고 들어오는 데이터가 올바른지 실시간으로 검증해야 합니다.
- 검증 항목: 스키마 일치 여부, 값의 범위(Range), 분포(Distribution) 등.
- 주요 도구: Great Expectations (Python 기반 데이터 검증 프레임워크).
3. 데이터 거버넌스 및 리니지
데이터의 투명성과 신뢰성을 확보하기 위한 체계입니다.
데이터 리니지 (Data Lineage)
특정 대시보드나 AI 모델이 사용하는 데이터가 어떤 원천 시스템의 어떤 컬럼에서 유래되었는지 추적하는 기술입니다.
- 효과: 원천 데이터 변경 시 영향도를 미리 파악하고, 장애 발생 시 원인 분석 속도를 획기적으로 높임.
데이터 카탈로그 (Data Catalog)
기업 내에 산재된 데이터를 검색하고 활용할 수 있는 포털입니다.
- 주요 도구: Amundsen (Lyft), DataHub (LinkedIn), OpenMetadata.
4. 데이터 메시 (Data Mesh)
데이터 관리를 중앙 집중식(IT 부서)이 아닌, 비즈니스 도메인(현업 부서) 중심으로 분산하는 조직 및 기술적 패러다임입니다.
- 목표: 데이터 처리 병목 현상을 해결하고 실질적인 도메인 지식을 가진 조직이 데이터를 직접 책임지고 서비스함.