목록 보기
DBT를 활용해 준실시간으로 클라이언트 Journey 파악하기
백엔드

DBT를 활용해 준실시간으로 클라이언트 Journey 파악하기

밸런스히어로
밸런스히어로
2025년 7월 11일

두줄요약

DBT와 CDC, Airflow로 클라이언트 여정을 추적하는 `data_logs` 테이블 구축 사례를 소개했습니다.복잡한 조인과 스캔 비용을 줄이기 위해 증분 모델링과 파티션 최적화를 적용했습니다.

핵심 내용

  • DBT와 CDC, Airflow를 활용해 클라이언트의 발자취를 준실시간으로 추적하는 data_logs 테이블 구축 사례
  • 여러 원천 테이블을 조인해야 하던 복잡한 조회 문제를, 클라이언트 ID와 추가 식별자를 묶은 단일 데이터 마트로 단순화
  • Base/Core/Access 레이어와 스타 스키마, 매크로, 증분 모델을 적용해 유지보수성과 실행 성능을 개선

구조와 흐름

  • CDC 테이블의 변경 이벤트를 원천 데이터로 사용해 DBT에서 모델링 후 데이터 웨어하우스에 적재
  • 비즈니스 기능별 테이블을 탐색해 액티비티 흐름을 파악하고, sequence diagram으로 DB 변경 문맥을 정리
  • data_logs에 table_name, log_at, description, pay_load, binlog_filename_position, dt 등을 포함해 조회성과 추적성 확보

성능/운영 포인트

  • 무거운 단일 쿼리를 베이스 테이블 분리와 스타 스키마로 정리해 중복 스캔과 조인 비용 축소
  • full refresh 대신 append, insert_overwrite 증분 전략을 적용해 하루 단위에서 시간 단위 파티션으로 세분화
  • 파티션 프루닝과 병렬 실행, 중복 로직 매크로화를 통해 스캔량과 빌드 시간을 감소

다음 읽기

#Airflow 주제를 이어서 읽기

Apache Iceberg 테이블 운영 실전기: 스냅샷 관리부터 Compaction까지

Iceberg 운영에서 스냅샷 폭증과 Small File 문제를 어떻게 다뤘는지 정리했습니다. 작업 이력 관리와 메인터넌스 정책으로 비용과 성능을 개선한 사례입니다.

밸런스히어로
밸런스히어로
백엔드

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...