5. 데이터 카탈로그 소개
데이터 카탈로그가 가져야할 기능
데이터 카탈로그 제품 서베이
데이터허브 소개
Contents
1. 데이터 카탈로그 기능 정의
2. 데이터 카탈로그 제품 서베이
3. DataHub 데모
데이터 카탈로그는 주요 데이터 기술 스택!
In its 2022 report on emerging data management technologies, Gartner said cataloging tools are at the "early mainstream" level of maturity and estimated that they're currently being used by 5% to 20% of the potential user base.
많은 회사들이 데이터 카탈로그를 메인 데이터 거버넌스 툴로 사용
Pinterest, Udemy, LinkedIn, Uber, …
데이터 카탈로그
데이터 자산 메타 정보 중앙 저장소
데이터 거버넌스의 첫 걸음
- 많은 회사에서 데이터 카탈로그를 데이터 거버넌스 툴로 사용하거나 데이터 카탈로그 위에 커스텀 기능을 구현
데이터 카탈로그의 중요한 기능
- (반)자동화된 메타 데이터 수집!
- 데이터 보안! 보통 메타 데이터만 읽어옴
데이터 자산의 종류
테이블 (데이터베이스)
대시보드
문서/메세지 (슬랙, JIRA, Github, …)
ML 피쳐
데이터 파이프라인
사용자 (HR 시스템)
데이터 카탈로그 : 데이터 자산의 효율적인 관리 프레임웍
다양한 관점에서 데이터를 조직적으로 관리
비지니스/데이터 용어 vs. 태그
데이터 오너 (Business & Technical)
표준화된 문서 템플릿
데이터 카탈로그 검색 화면 (1)

데이터 카탈로그 검색 화면 (2)

일반적인 데이터 카탈로그 아키텍처

Uber의 Databook 아키텍처
데이터 카탈로그 주요 기능
주요 데이터 플랫폼 지원
비지니스 용어집 (Business Glossary)
주석/문서/태그 등 협업 기능
데이터 리니지
데이터 모니터링, 감사, 트레이싱
강력한 검색 기능 (통합 검색, NLP 검색)
데이터 추천 기능
데이터 유저 퍼소나 (예: 마케팅 분석가)

데이터 카탈로그 기능 - 주요 데이터 플랫폼 지원 (1)
Data Warehouses & Data Lakes: Redshift, Snowflake, BigQuery
BI Tools: Looker, Tableau, Redash, Power BI, Mode, Superset
ELT: DBT, Spark, Hive, PrestoDB
ETL Orchestration: Airflow
NoSQL and others
- Cassandra, Druid, Elastic Search, Kafka Schema Registry, CSV
Users: Azure AD, LDAP, …
잠깐! DBT 소개: ELT
DBT provides an easy way to implement Transformation in ELT

잠깐! DBT는 Template화된 SQL
DBT 코드 = SQL + Jinja template = Template화된 SQL
개발자가 작성한 DBT 코드를 타켓 시스템에 맞는 SQL로 바꾸어 실행해줌
모델부터 작성하는데 이는 하나의 SELECT 문이라고 보면 됨
A model == A SELECT statement
여기에 다양한 검증 방법 추가 가능
Generic tests
One-off tests
테이블의 스냅샷 추가 가능
데이터 카탈로그 기능 - 주요 데이터 플랫폼 지원 (2)

데이터 카탈로그 기능 - 비지니스 용어집 (Business Glossary)
권한이 있는 사람만 용어 정의가 가능
계층구조로 관리할 수 있다면 더 유용
DataHub의 경우 terms와 terms group 존재

데이터 카탈로그 기능 - 비지니스 용어와 Entity 연결
나중에 다른 entity등과 연결 가능

데이터 카탈로그 기능 - 협업 - 태그
태그 vs. 비지니스 용어
전자는 좀더 비공식적인 데이터 분류 방법
보통 후자는 계층 구조 형태의 분류체계를 따라감

데이터 카탈로그 기능 - 협업 - 문서화 표준 제공

❖ 데이터 카탈로그 기능 - 데이터 리니지
Dataset-to-dataset
보통 SQL 파싱으로 일어남
Pipeline
입력 데이터셋 -> Data Pipeline -> 출력 데이터셋
Airflow에 lineage backend라는 것이 존재
Dashboard-to-chart
하나의 차트가 여러 대시보드에 소속가능하기에 필요한 리니지
Chart-to-dataset
Job-to-dataflow
DBT에 특별한 리니지
데이터 거버넌스 관점에서 데이터 카탈로그의 중요성
우리가 갖고 있는 데이터 자산에 대한 통합 뷰를 제공
생산성 증대: 설문이나 데이터 티켓의 감소로 확인
위험 감소: 잘못된 결정과 개인정보등의 전파 방지
인프라 비용 감소: 불필요한 정보의 생성 방지와 안 쓰이는 데이터셋 삭제
데이터 티켓 감소
데이터 변경으로 인한 이슈 감소
컬럼 레벨 리니지와 CI/CD 프로세스 연동
데이터 카탈로그 이후 다음 스텝은?
자동화된 데이터 거버넌스 관련 웍플로우를 추가
일단 시작으로 품질 관련 경보 시스템 구현
중요 메타데이터 변경이나 데이터 품질 이슈 발생시 경보
내가 관심있는 데이터 자산의 오너 변경시 경보 (예: 매출 정의 변경)
데이터 관련 지표 리뷰 미팅 운영
'Airflow 고급 기능, dbt, Data Catalog' 카테고리의 다른 글
| 요약 (0) | 2024.01.05 |
|---|---|
| 데이터 카탈로그 제품 서베이 (0) | 2024.01.05 |
| DBT 요약 (0) | 2024.01.05 |
| DBT Tests, Documentation, Expectations (0) | 2024.01.05 |
| DBT Snapshots (0) | 2024.01.05 |