Databricks Intelligence Platform

AI Vibe Coding Workshop

Smart TV 데이터 플랫폼 시나리오

Databricks가 고객의 AI 여정을 돕는 방법

영역 Databricks 솔루션 적용 예시
데이터 기반 Unity Catalog + Delta Lake 시청/광고 로그 통합 거버넌스
데이터 파이프라인 Lakeflow (SDP) + Auto Loader Bronze→Silver→Gold 자동화
실시간 처리 Structured Streaming 이벤트 실시간 수집 → 분석
BI & 분석 AI/BI Dashboard + Genie 자연어로 데이터 탐색
ML/AI MLflow + Model Serving 개인화 추천, Feature Store
코드 자동화 Genie Code + AI Dev Kit 파이프라인/ML 자율 구축
AI 에이전트 Agent Bricks KA + Genie + Supervisor
앱 & 운영DB Apps + Lakebase 웹앱 배포, OLTP 저장소

신규 AI 도구 소개

Genie Code — Databricks 내장 AI 에이전트

별도 도구 설치 없이, Databricks 노트북에서 Cmd+I로 바로 사용

영역 자율 수행 내용
데이터 엔지니어링 파이프라인 설계, 품질 검증, 데이터 변환
ML/데이터 과학 모델 학습 → MLflow → 서빙 배포 (end-to-end)
대시보드 SQL 쿼리 → 차트 → 대시보드 자동 구성

AI Dev Kit — 로컬 AI 도구에 Databricks 능력 부여

Claude Code, Cursor 등에서 MCP Server(50+ 도구) + Skills(19개 패턴)

세 가지 학습 트랙

Track A Track B Track C
방식 노트북 Run All Claude Code + 자연어 Genie Code + 자연어
대상 코드 직접 확인 AI Dev Kit 체험 설치 없이 빠른 시작
도구 Databricks 노트북 Claude Code + AI Dev Kit Databricks 콘솔 (내장)
장점 셀 단위 디버깅 높은 커스터마이징 설치 불필요, 즉시 시작

세 트랙을 섞어서 진행해도 OK!

Track B — 간단 버전 프롬프트

Claude Code에 아래 문장을 그대로 붙여넣기하면 AI가 자동 실행

모듈 입력할 자연어
데이터 "Smart TV 시청 로그 50만건 가상 데이터 만들어줘"
파이프라인 "Bronze→Silver→Gold CTAS 변환 노트북 만들어줘"
대시보드 "Gold 테이블로 4페이지 AI/BI 대시보드 만들어줘"
Genie "Genie Space 만들고 15개 질문으로 테스트해줘"
ML "LightGBM 광고 클릭 예측 모델 학습하고 MLflow 기록해줘"
Agent "Supervisor + KA + Genie Agent 만들어줘"

더 정확한 결과가 필요하면 상세 버전 프롬프트 사용 → PROMPT_DETAILED.md

Track B — 상세 버전 프롬프트 (예시)

컬럼명, 건수, 분포 규칙, 제약 사항까지 구체적으로 지정

Smart TV 시나리오의 가상 데이터를 만들어줘.
카탈로그: current_user() 기반 동적 생성

bronze.devices (10,000건):
- model_name: OLED65C4 등 10개, region: Korea(25%) 등 8개
- has_fasttv: 80% true, price_tier: OLED→premium

bronze.viewing_logs (500,000건):
- 시간대별 현실적 분포: 평일 저녁 60% 집중
- duration: 로그정규분포 평균 45분, max 240분

각 테이블 생성 후 통계 확인, 참조 무결성 검증 포함.

오늘의 여정

시간 모듈 핵심 Databricks 기능
09:00 Module 0 환경 설정 AI Dev Kit, Databricks CLI
09:30 Module 1 가상 데이터 생성 Unity Catalog, Delta Lake
10:30 Module 2 데이터 파이프라인 CTAS, SDP, Expectations
12:00 점심
13:00 Module 3 대시보드 & Genie AI/BI Dashboard, Genie Space
14:30 Module 4 실시간 처리 Structured Streaming, Auto Loader
15:30 Module 5 MLOps & ML 모델 Feature Store, LightGBM, SHAP
16:30 Module 6 Agent Bricks Supervisor → KA + Genie + UC Function
17:30 Module 7 Apps & Lakebase Databricks Apps, Lakebase

시나리오: Smart TV 데이터 플랫폼

비즈니스 목표

  • 광고 수익 극대화 (FastTV)
  • 시청 데이터 기반 개인화 추천
  • 실시간 이벤트 분석
  • AI 기반 고객 지원 자동화

데이터 소스 (170만건+)

데이터 건수 핵심 활용
디바이스 마스터 10,000 기준 테이블, 세그먼트
시청 로그 500,000 추천 모델, 콘텐츠 편성
클릭 이벤트 1,000,000 UX 분석, 퍼널
광고 노출/클릭 200,000 광고 수익 최적화

Module 0

AI Dev Kit 설치 & 환경 구성

AI Dev Kit — 설치 3단계

단계 명령어
1. uv + Claude Code curl -LsSf https://astral.sh/uv/install.sh | sh
npm install -g @anthropic-ai/claude-code
2. Databricks CLI databricks configure --profile MY_WORKSPACE
3. AI Dev Kit bash <(curl -sL https://...ai-dev-kit/.../install.sh)

설치 후 claude 실행 → "시청 로그 테이블 만들어줘" → 자동 실행

Module 1

Foundation & 가상 데이터 생성

Unity Catalog & Delta Lake

3단계 네임스페이스: Catalog > Schema > Table

수준 예시 역할
Catalog {user}_smarttv_training 환경/도메인 격리
Schema bronze / silver / gold Medallion 레이어
Table devices, viewing_logs 개별 데이터셋

Delta Lake — 왜 필요한가?

Parquet/CSV Delta Lake
트랜잭션 깨질 수 있음 ACID 보장
업데이트 전체 재작성 UPDATE, DELETE, MERGE
Time Travel 불가 VERSION AS OF
스키마 검증 없음 타입 불일치 자동 차단

Module 2

데이터 파이프라인

방법 1: CTAS — SQL 한 문장으로 변환

가장 직관적인 ETL. SQL만 알면 파이프라인 구축 가능

CREATE OR REPLACE TABLE silver.devices_ctas AS
SELECT device_id, UPPER(model_name) AS model_name,
       CASE WHEN model_name LIKE 'OLED%' THEN 'premium'
            WHEN model_name LIKE 'QNED%' THEN 'mid'
            ELSE 'entry' END AS price_tier
FROM bronze.devices WHERE device_id IS NOT NULL;
  • OR REPLACE로 재실행해도 멱등성 보장
  • 익숙한 SQL: JOIN, GROUP BY, 윈도우 함수 그대로
  • 한계: 매번 전체 재계산, 증분 처리 불가, 의존성 수동 관리

방법 2: SDP — 선언적 파이프라인

"무엇을 만들 것인가"만 선언 → 실행 방식은 엔진이 자동 결정

from pyspark import pipelines as dp

@dp.table(name="devices_sdp")
@dp.expect_or_fail("valid_id", "device_id IS NOT NULL")
def devices_sdp():
    return spark.read.table("bronze.devices")
           .withColumn("price_tier", ...)
  • 자동 의존성 해결: spark.read.table()만 쓰면 순서 자동 감지
  • 증분 처리: 새로 추가된 데이터만 처리 (10~100x 빠름)
  • Expectations 내장: @dp.expect로 데이터 품질 검증

CTAS vs SDP — 핵심 차이

CTAS (수동) SDP (선언적)
증분 처리 전체 재계산 새 데이터만 처리
의존성 관리 수동 (실행 순서 직접 관리) 자동 해결
데이터 품질 별도 체크 코드 필요 @dp.expect 내장
모니터링 직접 구현 파이프라인 UI에서 시각화
적합한 경우 일회성 분석, 프로토타입 운영 파이프라인

Module 3

AI/BI Dashboard & Genie Space

AI/BI Dashboard — 10+ 차트 유형

차트 유형 용도 페이지
Counter KPI 숫자, WoW 변화율 Executive
Line 시계열 추이 Overview, Viewing, Ad
Pie / Donut 비율/구성 Overview, Viewing
Bar (V/H/Grouped) 비교, 랭킹 전체
Stacked Bar/Area 구성 요소별 누적 Overview, Ad
Heatmap 시간x요일 밀도 Viewing
Scatter / Bubble 상관관계, 다차원 Ad, Funnel
Funnel 전환율 분석 Funnel

핵심: "이런 것도 표현할 수 있다"를 보여주는 것이 목표!

Genie Space — 자연어로 데이터 탐색

비즈니스 사용자가 SQL 없이 자연어 질문만으로 데이터를 탐색

사용자: "이번 달 인기 콘텐츠 Top 10은?"
Genie:  SELECT channel_or_app, SUM(daily_unique_viewers) AS total
        FROM gold.content_rankings
        WHERE viewing_date >= DATE_ADD(current_date(), -30)
        GROUP BY 1 ORDER BY 2 DESC LIMIT 10;

Genie Space — 15개 비즈니스 질문 실습

영역 질문 예시
시청 "프라임타임 인기 장르?", "주말 vs 평일 차이?", "완료율 높은 콘텐츠?", "Korea 프라임타임?"
광고 "CTR 높은 형식?", "수익 높은 시간대?", "쿠팡 광고 성과?", "native vs banner 전환율?"
사용자 "premium vs entry?", "heavy viewer 특성?", "음성 명령 사용률?", "지역별 인기 장르?"
심화 "광고 CTR 높은 사용자의 시청 콘텐츠?", "OLED vs 일반 TV?", "성장 콘텐츠?"

Module 4

Structured Streaming

End-to-End 실시간 흐름

단계 구성 요소 역할
1 Databricks App (이벤트 생성기) 시청/클릭/광고 이벤트를 JSON 생성
2 UC Volume (/landing/*.json) 파일 랜딩존
3 Auto Loader (cloudFiles) 새 파일 자동 감지 → Bronze
4 SDP Silver Table 정제 + 디바이스 JOIN (증분)
5 Gold Materialized View 집계 자동 갱신

Auto Loader 핵심 장점

  • 새 파일 자동 감지 (폴링 불필요)
  • 스키마 추론 + 진화 자동 처리
  • Exactly-once 보장 (체크포인트)

Module 5

MLOps 전체 라이프사이클

MLOps 파이프라인 — End-to-End

단계 Databricks 기능 운영 환경
Feature Store UC Delta Table + Online Store Offline: 배치, Online: 실시간
모델 학습 LightGBM + MLflow Tracking 운영 주1회, 개발 일4회
모델 설명 SHAP 피처 기여도 시각화
모델 등록 UC Model Registry Champion/Challenger
배치 예측 Spark 분산 스코어링 일 4회 전체 사용자
실시간 서빙 Model Serving REST API, Scale to zero
모니터링 Lakehouse Monitor Drift 감지 → 재학습 트리거

Feature Store — Offline vs Online

Offline Store Online Store
저장소 Delta Table (UC) Cosmos DB / DynamoDB
응답 시간 초~분 밀리초
데이터 양 전체 히스토리 최신 값만
사용처 배치 학습, 배치 예측 실시간 서빙 (Model Serving)
동기화 Offline → Online 자동 Sync

왜 Feature Store인가?

  • 피처 중복 방지: 한번 정의 → 모든 팀이 재사용
  • 학습/서빙 일관성: 동일 피처 정의로 skew 방지
  • 리니지 추적: "이 모델은 어떤 피처로 학습되었는가?"

Module 6

Agent Bricks

Agent Bricks란? — AI 에이전트를 쉽게 만드는 프레임워크

"코드 없이(또는 최소 코드로) 엔터프라이즈 AI 에이전트를 구축"

핵심 3가지 구성 요소

구성 요소 하는 일 비유
Knowledge Assistant (KA) 문서를 읽고 질문에 답변 제품 매뉴얼을 읽은 상담원
Genie Space (Agent) 테이블을 SQL로 조회 데이터 분석가
Supervisor Agent 질문을 분석하고 적절한 담당자에게 전달 콜센터 교환원

기존 챗봇과 뭐가 다른가?

  • 자연어 피드백만으로 품질 자동 개선 (ALHF)
  • Unity Catalog 거버넌스 상속 (에이전트도 권한 준수)
  • 멀티 에이전트 조합: 하나의 질문에 여러 도구 활용

Knowledge Assistant — 문서 기반 Q&A

작동 원리 (RAG: Retrieval-Augmented Generation)

사용자: "FastTV에서 무료 채널 뭐 있어?"
         │
    ① 질문을 벡터로 변환 (임베딩)
    ② UC Volume의 문서에서 관련 부분 검색
    ③ 검색된 문서 조각 + 질문을 LLM에게 전달
    ④ 문서 기반 답변 생성 (환각 방지)
         │
답변: "FastTV에서는 뉴스(YTN, MBN), 스포츠,
       영화, 키즈 등 100개+ 무료 채널을 제공합니다..."

만드는 방법

  1. UC Volume에 가이드 문서 업로드 (마크다운, PDF)
  2. Agent Bricks UI에서 KA 생성 (문서 자동 인덱싱)
  3. Instructions 설정 (한국어 답변, 환각 방지 규칙)

Genie Space — SQL 데이터 탐색 에이전트

작동 원리

사용자: "이번 주 광고 수익 Top 5 지역은?"
         │
    ① 자연어를 SQL로 자동 변환
    ② Gold 테이블에서 쿼리 실행
    ③ 결과를 비즈니스 관점으로 해석
         │
답변: "1위 Korea $1,234, 2위 US $987..."
      + 시각화 차트 제안

KA와의 차이

Knowledge Assistant Genie Space
데이터 문서 (마크다운, PDF) 테이블 (Delta Lake)
답변 문서 기반 텍스트 SQL 실행 → 숫자/차트
질문 예시 "리모컨 고장 어떻게?" "CTR 가장 높은 광고 형식?"

Supervisor Agent — 모든 것을 하나로 통합

핵심 아이디어: "하나의 입구, 여러 전문가"

사용자는 하나의 챗봇에만 질문하면 됨
Supervisor가 질문을 분석하여 최적의 전문가에게 자동 라우팅

           사용자 질문
               │
        ┌──────┴──────┐
        │  Supervisor  │  ← "이 질문은 어디로 보내야 할까?"
        └──────┬──────┘
    ┌──────┬───┴───┬──────┐
    │      │       │      │
   KA    Genie   UC함수  UC함수
 (문서)  (SQL)  (광고분석) (설정변경)

라우팅 규칙 예시

사용자 질문 라우팅 대상
"리모컨이 안 돼요" KA (사용 가이드 문서)
"이번 달 시청률 Top 5" Genie (SQL 쿼리)
"쿠팡 광고 2월 성과" UC Function (광고 분석)

Supervisor + Lakebase — 운영까지 연결

왜 Lakebase가 필요한가?

Supervisor Agent가 Delta Lake(분석) 뿐만 아니라
**Lakebase(운영 DB)**도 읽고 쓸 수 있으면 → 실제 서비스 가능

UC Function Delta Lake에서 Lakebase에서
광고 분석 ad_performance 조회
사용자 설정 user_preferences 읽기/쓰기
추천 서빙 recommendation_cache 조회
피드백 수집 user_feedback 저장
ML 재학습 Jobs API 트리거

시나리오: "맞춤형 광고 꺼줘"

→ Supervisor → KA: "설정 방법은..." (안내)
            → UC Function: Lakebase UPDATE (실행)

Module 7

Databricks Apps & Lakebase

Apps + Lakebase — 운영 레이어

구성 요소 프레임워크 역할
챗봇 App Gradio Supervisor Agent 연동
대시보드 App Streamlit Gold 테이블 시각화
포탈 App FastAPI REST API + Lakebase CRUD
Delta Lake (분석) Lakebase (운영)
용도 대용량 분석, 배치 빠른 읽기/쓰기, 트랜잭션
응답 초 단위 밀리초 단위
패턴 ML 학습 → 결과 생성 캐싱 → 빠른 서빙

조합: ML 결과를 Lakebase에 캐싱 → App에서 밀리초 응답

전체 아키텍처 요약

스마트TV 로그 → Volume → Auto Loader → SDP Pipeline
                                       Bronze → Silver → Gold
                                             │
               ┌─────────────────────────────┼──────────────────────┐
               │                             │                      │
         AI/BI Dashboard              ML Pipeline             Agent Bricks
         + Genie Space          Feature Store → LightGBM    Supervisor Agent
               │                  MLflow → Serving           ┌─────┼─────┐
               │                       │                     KA  Genie  UC Func
               └───────────────────────┼─────────────────────────┘
                                       │
                              Databricks Apps + Lakebase

오늘 체험한 Databricks 기능

기능 한 줄 요약
Unity Catalog 모든 데이터를 하나의 카탈로그에서 거버넌스
Delta Lake ACID + Time Travel + 스키마 보장
SDP (Lakeflow) 선언적 파이프라인, 증분 처리, Expectations
Auto Loader 새 파일 자동 감지, Exactly-once
AI/BI Dashboard 10+ 차트 유형으로 시각화
Genie Space 자연어 → SQL, 비기술자 데이터 탐색
Feature Store Offline/Online 피처 관리, 학습/서빙 일관성
MLflow 실험 관리, 모델 레지스트리, SHAP 설명
Model Serving REST API, Scale to zero
Agent Bricks Supervisor → KA + Genie + UC Function
Databricks Apps 웹 앱 원클릭 배포
Lakebase PostgreSQL 호환 OLTP, 밀리초 응답

다음 단계

바로 적용할 수 있는 것

  1. Genie Code로 기존 데이터에 대시보드 만들기 (설치 불필요)
  2. AI Dev Kit으로 파이프라인 자동화 (Claude Code / Cursor)
  3. Genie Space로 팀원들 자연어 데이터 탐색
  4. Agent Bricks로 고객 지원 챗봇 구축

참고 자료

감사합니다!

질문은 언제든지 환영합니다.

AI Dev Kit: claude → 자연어로 질문하세요
Genie Code: 노트북에서 Cmd+I → 바로 시작

📸 스크린샷: Genie Code 화면 (노트북에서 Cmd+I)

📸 스크린샷: Claude Code에서 상세 프롬프트 → 정확한 코드 생성

📸 스크린샷: AI Dev Kit 설치 완료 + 첫 질의 화면

📸 스크린샷: Unity Catalog Explorer 트리 구조

📸 스크린샷: SDP 파이프라인 실행 UI (DAG + Expectations 바)

📸 스크린샷: 완성된 4페이지 대시보드

📸 스크린샷: Genie Space 대화 화면 (질문 → SQL → 결과)

📸 스크린샷: Auto Loader Streaming 모니터링

📸 스크린샷: MLflow Experiment UI (3개 Run 비교) + SHAP Plot

📸 스크린샷: KA 생성 UI + 테스트 대화 화면

📸 스크린샷: Supervisor 대화에서 복합 라우팅

📸 스크린샷: Apps 배포 화면 + Lakebase 테이블