수업 1분석을 위한 차원 모델 설계: 팩트와 차원 매핑분석을 위한 차원 모델링을 탐구합니다. 비즈니스 프로세스를 팩트 테이블에 매핑하고, 차원과 그레인을 정의하며, 다대다 관계를 처리하고, 셀프서비스 BI와 고성능 쿼리를 지원하는 스키마를 설계합니다.
비즈니스 프로세스 및 팩트 식별팩트 테이블 그레인 선택일치 차원 설계다대다 관계 처리스타 vs 스노우플레이크 스키마 트레이드오프수업 2fact_user_activity: 스키마 필드 (event_id, user_id, course_id, event_type, timestamp, duration, device, session_id, ingestion_metadata)행동 분석을 위한 fact_user_activity 테이블을 모델링합니다. 각 필드를 정의하고, 이벤트 그레인을 선택하며, 세션과 디바이스를 캡처하고, 수집 메타데이터를 저장하여 퍼널, 참여도, 유지율 보고를 지원합니다.
이벤트 수준 그레인 정의event_type 및 분류 모델링세션 및 디바이스 귀속ingestion_metadata 필드 사용퍼널 및 유지율 지원수업 3파생 메트릭 및 집계: 일일 활성 사용자(DAU), 코스별 활성 사용자, 국가별 코스 완료율, 코스 및 코호트별 수익팩트 테이블에서 파생 메트릭과 집계를 구축하는 방법을 배웁니다. DAU, 코스별 활동, 완료율, 코호트 수익을 계산하며, 재현 가능한 정의와 효율적인 물리화 패턴을 강조합니다.
DAU 및 MAU 일관된 정의코스별 활성 사용자 메트릭세그먼트 및 국가별 완료율코스 및 코호트별 수익웨어하우스에서 집계 물리화수업 4느리게 변하는 차원(SCD Type 1/2) 처리와 시간 여행/버전 관리느리게 변하는 차원과 시간 여행을 관리하는 방법을 배웁니다. SCD Type 1과 Type 2를 비교하고, 효과 날짜 범위를 설계하며, 버전 메타데이터를 저장하고, 웨어하우스 기능을 사용해 과거 차원 상태를 쿼리합니다.
SCD Type 1 vs Type 2 사용 시기효과 날짜와 현재 플래그SQL 및 dbt에서 SCD 구현웨어하우스 시간 여행 기능 사용과거 차원 정확성 테스트수업 5근실시간 KPI를 위한 데이터 신선도와 윈도잉 전략근실시간 KPI를 위한 신선도 전략을 설계합니다. 지연 예산, 워터마킹, 스트리밍 메트릭 윈도잉, 늦게 도착한 데이터 처리, 대시보드를 신뢰할 수 있고 실행 가능하게 유지하기 위한 신선도 모니터링을 다룹니다.
신선도 및 지연 목표 정의워터마크와 늦은 데이터 처리터블링, 슬라이딩, 세션 윈도우근실시간 KPI 계산신선도 모니터링 및 경고수업 6데이터 정제 단계: 파싱, 타입 강제, 타임스탬프 정규화, 중복 제거, 보강모델링 전에 원시 데이터를 체계적으로 정제하는 방법을 배웁니다. 반구조화 필드 파싱, 데이터 타입 강제, 타임존 간 타임스탬프 정규화, 레코드 중복 제거, 참조 및 조회 데이터로 데이터셋 보강을 다룹니다.
JSON, CSV, 중첩 필드 파싱타입 강제와 스키마 검증타임존 정규화와 표준레코드 중복 제거 전략보강을 위한 참조 데이터 조인수업 7dim_course: 스키마 필드 (course_id, title, author_id, category, price, published_date)코스 분석을 지원하는 dim_course 차원을 설계합니다. 각 필드를 정의하고, 대리 키를 논의하며, 가격 및 카테고리 변경을 처리하고, 정확한 과거 및 카탈로그 보고를 가능하게 하는 발행 날짜를 모델링합니다.
dim_course 각 필드의 비즈니스 의미자연 키 vs 대리 course_id코스 가격 및 카테고리 변경 처리발행 및 미발행 상태 모델링BI 쿼리를 위한 dim_course 인덱싱수업 8dim_user: 스키마 필드 (user_id, email_hash, signup_date, country, subscription_status, cohort)사용자 분석 및 세분화를 위한 dim_user 차원을 설계합니다. 각 필드를 정의하고, 민감 데이터를 해싱하며, 가입 및 코호트를 추적하고, 성장, 유지, 수익화 보고를 지원하는 구독 상태를 모델링합니다.
사용자 식별자와 대리 키이메일 해싱과 프라이버시 제어signup_date 및 코호트 모델링subscription_status 라이프사이클국가 및 지역화 속성수업 9변환 패턴: ELT vs ETL, 증분 변환, 배치 vs 스트림 변환핵심 변환 패턴과 적용 시기를 이해합니다. ETL과 ELT를 비교하고, 증분 파이프라인을 설계하며, 배치와 스트리밍 변환을 대비하여 비용, 지연, 관찰 가능성, 운영 트레이드오프에 중점을 둡니다.
ETL과 ELT 아키텍처 비교증분 변환 설계배치 처리 장단점스트리밍 및 마이크로 배치 패턴SLA와 비용에 따른 패턴 선택수업 10변환 도구: dbt, Spark/Databricks, Beam/Flink, SQL 기반 변환 프레임워크주요 변환 도구를 조사하고 선택 기준을 배웁니다. dbt, Spark, Databricks, Beam, Flink, SQL 프레임워크를 비교하며, 확장성, 오케스트레이션, 테스트, 현대 데이터 스택 통합에 중점을 둡니다.
SQL 중심 변환용 dbt빅데이터용 Spark 및 Databricks스트리밍 작업용 Beam 및 FlinkSQL 기반 변환 프레임워크도구 선택 기준과 트레이드오프수업 11fact_payments: 스키마 필드 (payment_id, user_id, course_id, amount, currency, payment_method, status, timestamp, invoice_id)수익 분석을 위한 fact_payments 테이블을 모델링합니다. 각 필드를 정의하고, 멱등 수집, 통화 처리, 결제 상태, 환불을 논의하며, 다운스트림 보고를 위해 사용자, 코스, 송장에 결제를 연결합니다.
fact_payments 그레인 및 기본 키결제 상태 및 라이프사이클 모델링다중 통화 금액 처리사용자 및 코스에 결제 연결환불 및 차지백 캡처