Skip to main content
이 문서는 AI/BI 섹션의 일부입니다.

대시보드 공유 방법

스케줄 이메일 설정


대시보드 디자인 모범 사례


심화: 엔터프라이즈 대시보드 운영

이 섹션에서는 수백 명의 동시 사용자를 지원하는 대규모 환경에서의 대시보드 성능 최적화, 권한 관리, 프로그래밍 방식의 관리 방법을 다룹니다.

쿼리 성능 최적화

대시보드의 체감 성능은 결국 SQL 쿼리가 얼마나 빨리 실행되느냐 에 달려 있습니다.

Materialized View 활용

복잡한 집계 쿼리를 매번 실행하는 대신, Materialized View(Materialized View) 로 사전 계산된 결과를 활용하면 대시보드 로딩 시간을 획기적으로 줄일 수 있습니다.

파티션 프루닝과 Data Skipping

쿼리 캐싱 전략

Databricks SQL Warehouse는 결과 캐시(Result Cache)디스크 캐시(Disk Cache) 를 제공합니다.
⚠️ Gotcha: 대시보드에 매개변수(:date_start 등)를 사용하면, 매개변수 값이 다를 때마다 다른 쿼리로 인식 되어 Result Cache가 적중하지 않습니다. 자주 사용되는 날짜 범위(이번 달, 지난 7일 등)를 기본값으로 설정하면 캐시 적중률을 높일 수 있습니다.

새로고침(Refresh) 전략

대시보드 데이터의 신선도(Freshness)와 비용 사이의 균형을 잡는 것이 중요합니다.
⚠️ Gotcha — 새로고침 중 대시보드 접근: 대시보드가 스케줄 새로고침 중일 때 사용자가 접근하면, 마지막 새로고침 결과 가 표시됩니다. 실시간 데이터가 필요한 경우, 사용자가 수동으로 “Run” 버튼을 클릭하여 최신 데이터를 조회할 수 있습니다.

대규모 운영: 동시 사용자 대응

수백 명의 사용자가 동시에 대시보드를 조회하는 환경에서의 설계 전략입니다.

SQL Warehouse 사이징

💡 Serverless SQL Warehouse 를 사용하면 Auto Scaling이 더 빠르게 반응합니다 (스케일아웃 시간: 기존 수 분 → Serverless 10~20초). 대규모 동시 사용자 환경에서는 Serverless를 강력히 권장합니다.

쿼리 큐잉과 동시성

⚠️ Gotcha — “월요일 오전 9시” 문제: 전사 대시보드를 월요일 아침에 이메일로 배포하면, 수백 명이 동시에 대시보드를 열어 SQL Warehouse에 부하가 집중됩니다. 이메일 스케줄을 시차 배포(팀별로 9시, 9시 15분, 9시 30분)하거나, 스케줄 새로고침으로 사전 캐싱하세요.

권한 모델

대시보드 접근 권한

Unity Catalog 연동 — 데이터 접근 제어

대시보드의 데이터 접근은 두 가지 모드로 동작합니다.
⚠️ Gotcha — Owner Credentials의 보안 위험: Owner Credentials 모드에서는 소유자의 권한으로 쿼리가 실행되므로, 소유자가 접근 가능한 모든 데이터가 조회자에게 노출 될 수 있습니다. 민감 데이터가 포함된 대시보드는 반드시 Viewer Credentials를 사용하세요.

프로그래밍 방식 관리

REST API로 대시보드 관리

Lakeview 대시보드는 JSON 직렬화 형식 으로 정의되며, REST API를 통해 프로그래밍 방식으로 생성, 수정, 삭제할 수 있습니다.

Asset Bundles 연동 (IaC)

Databricks Asset Bundles(DABs)를 사용하면 대시보드를 코드로 관리(Infrastructure as Code) 할 수 있습니다.

CI/CD 파이프라인 예시

⚠️ Gotcha — 대시보드 JSON 충돌: 두 명이 동시에 같은 대시보드를 UI에서 수정하면, 나중에 저장한 사람의 변경만 반영됩니다. Asset Bundles + Git을 사용하면 변경 이력 추적과 충돌 해결 이 가능합니다.

정리


참고 링크