소요 시간: ~1.5시간 | 사전 조건: 03. SDP 파이프라인 완료 (Gold 테이블 10개 필요) MCP 필수: Genie Space 생성에는 AI Dev Kit MCP 연결이 필요합니다 (Section 3 참조). MCP가 안 되면 UI 대안 경로를 사용하세요. 대시보드는 MCP 없이도 Genie Code 사이드 패널에서 생성 가능합니다. 핵심 메시지: “대시보드는 ‘알려진 질문’에 답하고, Genie는 ‘아직 모르는 질문’에 답한다”
이 모듈에서 사용하는 Databricks 기능
| 기능 | 설명 | 공식 문서 |
|---|---|---|
| AI/BI Dashboard | 코드 없이 SQL 기반 대시보드를 만드는 기능. KPI 카운터, 차트, 필터를 조합하여 비즈니스 대시보드를 구성합니다. Genie Code로 자연어 한 줄로 생성할 수 있습니다. | docs |
| Genie Space | 비개발자가 자연어로 질문하면 AI가 자동으로 SQL을 생성하여 데이터를 분석하는 공간입니다. 테이블을 등록하고, 비즈니스 용어와 규칙을 가르치면 정확도가 올라갑니다. | docs |
| AI Dev Kit MCP | Genie Space를 Genie Code에서 자연어로 생성/관리하려면 AI Dev Kit MCP 연결이 필요합니다. Section 3에서 구성한 manage_genie, manage_dashboard 도구를 사용합니다. | GitHub |
개요
Gold 테이블을 기반으로:- AI/BI 대시보드: 경영진과 운영팀이 일상적으로 확인하는 KPI 대시보드
- Genie Space: 비개발자가 자연어로 데이터를 탐색하는 공간
- Genie 정확도 고도화: 샘플 질문, 조인 관계, 쿼리 힌트 등으로 Genie의 SQL 생성 정확도를 끌어올리는 방법
Part A: AI/BI 대시보드
대시보드 1: Smart TV Operations Dashboard
디바이스 운영팀이 매일 확인하는 운영 현황 대시보드
Genie Code 프롬프트
대시보드 생성 확인
대시보드 2: Ad Performance Dashboard
광고 사업팀이 확인하는 광고 성과 대시보드
Genie Code 프롬프트
대시보드 3: Content & Engagement Dashboard
콘텐츠 전략팀이 확인하는 콘텐츠/시청 분석 대시보드
Genie Code 프롬프트
Part B: Genie Space 생성
Genie Space란?
비개발자가 자연어로 질문하면 Genie가 자동으로 SQL을 생성하여 답변하는 공간입니다. 대시보드가 “미리 정의된 질문”에 답한다면, Genie Space는 **“아직 정의되지 않은 질문”**에 답합니다.💡 대시보드 vs Genie Space: 대시보드는 “이번 달 시청자가 몇 명?”처럼 미리 정의한 질문에 답합니다. Genie Space는 “65인치 OLED에서 넷플릭스 시청 시간이 드라마 장르에서 얼마나 되지?”처럼 즉석에서 떠오르는 질문에 자연어로 답합니다.
Genie Space 1: TV 시청 분석
Genie Code 프롬프트 (AI Dev Kit MCP 필요)
Genie Space 생성 확인 & 첫 테스트
Genie Space 2: 광고 성과 분석
Genie Code 프롬프트
Genie Space 3: 디바이스 운영/건강
Genie Code 프롬프트
Part C: Genie 정확도 고도화 ⭐
이 섹션이 가장 중요합니다. Genie Space를 만드는 것은 쉽지만, 정확한 답변을 내놓게 만드는 것은 튜닝이 필요합니다.
Genie 정확도를 결정하는 5가지 요소
| # | 요소 | 영향도 | 설명 |
|---|---|---|---|
| 1 | 테이블/컬럼 코멘트 | ★★★★★ | Genie가 테이블/컬럼의 의미를 이해하는 핵심 |
| 2 | 샘플 질문 (Curated Q&A) | ★★★★★ | 검증된 SQL 패턴을 Genie에게 가르침 |
| 3 | General Instructions | ★★★★☆ | 비즈니스 규칙, 용어 정의, 계산 공식 |
| 4 | 테이블 간 관계 (Joins) | ★★★★☆ | 올바른 조인 경로를 안내 |
| 5 | 인증된 쿼리 | ★★★☆☆ | 자주 쓰는 패턴을 사전 검증 |
Step 1: 테이블/컬럼 코멘트 추가
Genie Code 프롬프트
Step 2: 샘플 질문 (Curated Questions) 등록 ⭐⭐⭐
Genie 정확도를 가장 크게 올리는 방법입니다. 검증된 SQL을 샘플로 등록하면, 비슷한 질문이 들어올 때 해당 패턴을 참고합니다.
샘플 질문 등록 방법:MCP로 일괄 등록하는 프롬프트:
- 방법 1 (AI Dev Kit MCP): 아래 프롬프트로 Genie Code에서 등록
- 방법 2 (UI): Genie Space 화면 → 우측 상단 ⚙️ Settings → “Example questions” → ”+ Add” 버튼
시청 분석 Genie Space — 샘플 질문 15개
Genie Space 설정 화면에서 아래 질문과 SQL 쌍을 등록합니다: 질문 1: 최근 7일간 가장 많이 시청된 프로그램 Top 10은?광고 Genie Space — 샘플 질문 5개
질문 11: 이번 달 CTR이 가장 높은 광고 형식은?참고:ad_campaign_kpi에는 시간대(hour) 컬럼이 없어hourly_engagement와event_date기준으로 조인합니다. 이 방식은 근사값이며, 정확한 시간대별 분석이 필요하면silver.ad_funnel테이블의 timestamp를 직접 사용하세요.
Genie Space 설정 UI 상세 가이드
Genie Space를 생성한 뒤, 정확도를 높이려면 Settings 화면에서 여러 항목을 구성해야 합니다. 아래는 단계별 UI 경로입니다.설정 화면 접근 방법
- Databricks 왼쪽 사이드바 → SQL → Genie
- 생성한 Genie Space 클릭 (예: “LG Smart TV 시청 분석”)
- 화면 우측 상단 ⚙️ Configure 클릭
- 아래 6개 탭이 나타납니다:
| 탭 | 용도 | 설정 내용 |
|---|---|---|
| About | 기본 정보 | 이름, 설명, SQL Warehouse 연결 확인 |
| Data | 연결된 테이블 | 테이블 추가/제거, 테이블별 설명(Description), 동의어(Synonyms) |
| Instructions | 비즈니스 규칙 | 용어 정의, 계산 규칙, 출력 형식 (아래 Step 3에서 상세 설명) |
| Joins | 테이블 관계 | 테이블 간 조인 키와 관계 유형 (1:N, N:1) 정의 |
| SQL Expressions | 사전 정의 수식 | Filter, Measure, Dimension 등록 |
| SQL Queries | 샘플 질문 | Example Query (검증된 SQL), SQL Function 등록 |
📸 [스크린샷]: Genie Space Configure 화면 — 6개 탭
Joins 탭 설정
+ Add 버튼을 클릭하여 테이블 간 관계를 정의합니다:| Left Table | Right Table | Join Key | 관계 |
|---|---|---|---|
| daily_viewing_summary | devices | device_id | Many to One |
| content_popularity | daily_viewing_summary | event_date | Many to Many |
| user_engagement_360 | devices | device_id | One to One |
💡 왜 Joins를 설정하나? Genie가 “65인치 OLED의 시청 시간”을 물어보면,daily_viewing_summary와devices를 어떤 키로 조인해야 하는지 알아야 합니다. Joins를 설정하지 않으면 Genie가 잘못된 조인을 하거나 조인 자체를 못 합니다.
SQL Expressions 탭 — 재사용 가능한 비즈니스 로직 등록
| 유형 | 이름 | SQL | 설명 |
|---|---|---|---|
| Filter | 프라임타임 시청 | is_primetime = true | 프라임타임(20~23시) 필터 |
| Measure | 평균 시청 시간 | ROUND(AVG(total_viewing_min), 1) | 소수점 1자리 평균 |
| Dimension | 분기 구분 | CASE WHEN MONTH(event_date) BETWEEN 1 AND 3 THEN 'Q1' ... END | 날짜를 분기로 변환 |
📸 [스크린샷]: SQL Expressions → Filter/Measure/Dimension 추가 화면
SQL Queries 탭 — 샘플 질문 등록
+ Add → Example query 클릭:- Question: 질문을 입력 (예: “최근 7일간 인기 프로그램 Top 10”)
- SQL answer: 검증된 SQL을 붙여넣기 (아래 Step 2의 15개 SQL 참조)
- Save
📸 [스크린샷]: Example query 등록 화면 — Question + SQL answer 입력
Benchmarks — 정확도 측정 (선택)
질문과 정답 SQL을 등록하면, Genie가 생성한 SQL이 정답과 얼마나 일치하는지 자동 평가합니다. + Add benchmark 클릭 → Question과 Ground truth SQL answer 입력 → Run all benchmarks💡 이 기능을 활용하면 “Genie 정확도 80% → 95%“와 같은 정량적 개선을 추적할 수 있습니다.
Step 3: General Instructions 상세 설정
⚠️ 중요: General Instructions를 변경한 후에는 반드시 New Chat 버튼을 클릭하여 새 대화를 시작하세요. 기존 대화에는 이전 지침의 컨텍스트가 남아 있어, 변경된 지침이 즉시 반영되지 않을 수 있습니다.
시청 분석 Genie Space
Genie Space 설정 → General Instructions에 아래 내용을 추가합니다:💡 임의 정의 방지 규칙: General Instructions에 아래 내용을 반드시 추가하세요. 이를 넣지 않으면 Genie가 “프라임타임”, “활성 사용자” 등의 기준을 임의로 정의해서 분석할 수 있습니다.
Step 4: Genie 성능 테스트 & 반복 튜닝
Genie Code 프롬프트: 테스트 실행
반복 튜닝 프로세스
Genie Space Agent Mode 활용 — 인사이트 도출 체인
Genie Space에서 Chat 모드 대신 Agent 모드를 선택하면, 단순 질의를 넘어 다단계 분석과 인사이트 도출이 가능합니다.실습: 3단계 인사이트 체인
1단계 — 데이터 탐색:💡 Chat vs Agent: Chat 모드는 단일 SQL 질의에 최적화되어 있고, Agent 모드는 여러 쿼리를 조합한 복합 분석과 리서치에 적합합니다.
Step 5: 고급 — 인증된 쿼리(Trusted Assets) 등록
자주 사용되는 복잡한 쿼리를 인증된 쿼리로 저장하면, Genie가 해당 쿼리를 직접 재사용합니다.Genie Code 프롬프트
핵심 포인트 정리
| 배운 것 | 왜 중요한가 |
|---|---|
| AI/BI 대시보드 생성 | 자연어로 12개 위젯 대시보드를 5분만에 생성 |
| Genie Space 생성 | 비개발자가 SQL 없이 데이터 탐색 가능 |
| 테이블/컬럼 COMMENT | Genie가 스키마를 “이해”하는 핵심 |
| 샘플 질문 등록 | 정확도를 가장 크게 올리는 방법 — 검증된 SQL 패턴 학습 |
| General Instructions | 비즈니스 용어와 계산 규칙을 명시 |
| 반복 테스트/튜닝 | 5~10번 반복하면 정확도 80% → 95%+ 가능 |
보너스: 대시보드를 Databricks App으로 배포
만든 대시보드를 독립적인 웹 애플리케이션으로 배포할 수 있습니다. Genie Code에서 한 줄이면 됩니다:실행 중 Code execution 블록이 나타나면 Run을 눌러 계속 진행합니다. 배포가 완료되면 앱 URL이 표시됩니다. 화면이 정상적으로 나타나지 않으면 증상을 요약하여 Genie Code에 디버깅을 요청하세요.
다음 단계
- 05. 에이전트 개발 — Knowledge Assistant, Genie Agent, Supervisor Agent 구축