데이터 설정
위젯에 실제 데이터를 연결하고 시각화하는 방법을 설명합니다. D.Hub 대시보드는 두 가지 데이터 모드를 지원합니다.
데이터 소스
D.Hub 대시보드는 분석 데이터베이스를 통해 데이터를 조회합니다. D.Hub에 등록된 데이터셋은 자동으로 분석 테이블로 동기화되어 빠른 분석 쿼리가 가능합니다.
간편 모드 (Simple Mode)
간편 모드 데이터 설정 화면 — 데이터셋·메트릭·그룹화 셀렉터가 보여야 합니다.
코드를 작성하지 않고 UI에서 데이터셋과 필드를 선택하여 시각화합니다. 모드를 Simple ↔ Query 사이에서 전환하면, 간편 모드의 선택이 SQL로 자동 변환되어 양방향으로 동기화됩니다.
설정 방법
- 데이터 소스 선택: 연결할 데이터셋을 선택합니다.
- 메트릭(Metric) 설정:
- 값 필드: 시각화할 데이터 필드를 선택합니다. (예:
price,count) - 집계 방식:
SUM,AVG,COUNT,MIN,MAX중 선택합니다.
- 값 필드: 시각화할 데이터 필드를 선택합니다. (예:
- 그룹화 (Group By): 데이터를 그룹화할 기준 필드를 선택합니다. (예:
category,date)- X축/Y축: 차트 유형에 따라 축에 매핑될 필드를 지정합니다.
지원 집계 함수
| 함수 | 설명 | 예시 |
|---|---|---|
SUM | 합계 | 총 매출액 |
AVG | 평균 | 평균 주문 금액 |
COUNT | 개수 | 주문 건수 |
MIN | 최소값 | 최저 가격 |
MAX | 최대값 | 최고 가격 |
COUNT DISTINCT | 고유 개수 | 고유 고객 수 |
쿼리 모드 (Query Mode) — Monaco SQL 에디터 + AI 어시스턴트
쿼리 모드 — Monaco SQL 에디터 + 우측 AI 어시스턴트 패널. 인라인 AI(Cmd+K / Ctrl+K)도 함께 보여주세요.
AI 어시스턴트가 자연어 프롬프트로 SQL을 제안하는 모습. Accept / Reject 버튼이 보여야 합니다.
SQL 쿼리를 직접 작성하여 복잡한 데이터 가공이 필요한 경우 사용합니다. 이전 버전의 단일 textarea는 Monaco 기반 SQL 에디터로 대체되었습니다.
기본 사용법
- 데이터 모드를
Query로 변경합니다. - Monaco SQL 에디터에 쿼리를 작성합니다 — 구문 강조·자동완성·줄 번호·Format 지원.
- 쿼리 테스트(Test Query) 버튼으로 결과를 미리 확인합니다. 실행 시간과 조회된 행 수가 표시됩니다.
- 결과 컬럼을 X축, Y축 등 차트 속성에 매핑합니다.
AI 어시스턴트
코드 편집기와 동일한 인라인 AI 흐름을 사용합니다.
- 인라인 AI:
⌘K/Ctrl+K로 자연어 프롬프트를 열어 SQL을 생성·수정할 수 있습니다. - 선택 영역 편집: SQL 일부를 선택하면 그 부분만 AI가 다듬도록 요청할 수 있습니다.
- Accept / Reject: 제안된 SQL은 검토 후 수락 또는 거부합니다.
Simple → SQL 동기화
간편 모드의 선택은 SQL로 자동 변환됩니다. Simple → SQL로 전환할 때 사용자가 간편 모드에서 직접 고른 데이터셋·필드·집계는 유지되며, SQL을 직접 수정한 뒤 다시 Simple로 돌아오면 변환 가능한 부분만 매핑됩니다(불일치 부분은 안내 메시지로 표시).
쿼리 예시
-- 카테고리별 매출 합계
SELECT
category,
SUM(amount) as total
FROM sales_data
GROUP BY category
ORDER BY total DESC
-- 일별 주문 추이
SELECT
toDate(order_date) as date,
COUNT(*) as order_count,
SUM(amount) as revenue
FROM orders
GROUP BY date
ORDER BY date
-- 시간대별 트래픽 분석
SELECT
toHour(timestamp) as hour,
COUNT(*) as visits
FROM page_views
WHERE toDate(timestamp) = today()
GROUP BY hour
ORDER BY hour
유용한 SQL 함수
전체 SQL 함수 레퍼런스는 참조 > SQL 쿼리 가이드를 참고하세요.
| 함수 | 설명 | 예시 |
|---|---|---|
toDate() | 날짜 변환 | toDate(timestamp) |
toHour() | 시간 추출 | toHour(timestamp) |
today() | 오늘 날짜 | WHERE date = today() |
yesterday() | 어제 날짜 | WHERE date = yesterday() |
toStartOfWeek() | 주 시작일 | toStartOfWeek(date) |
toStartOfMonth() | 월 시작일 | toStartOfMonth(date) |
formatDateTime() | 날짜 포맷팅 | formatDateTime(date, '%Y-%m') |
DRS (Dashboard Range Selector) — 전역 날짜 범위
상단 툴바의 DRS (Dashboard Range Selector) 는 대시보드 전역 날짜 범위입니다. 별도의 Date Range 위젯을 캔버스에 두지 않아도, 위젯에 명시적 시간 컬럼/범위 설정이 없는 경우 DRS의 값이 자동으로 위젯 쿼리에 주입됩니다(ADR-0054). 위젯별로 별도 기간을 잠가야 할 때만 위젯 설정에서 명시합니다.
설정 방법
- 캔버스 상단 DRS에서 프리셋(최근 7일·30일·사용자 지정) 또는 사용자 지정 범위를 선택합니다.
- 각 위젯의 데이터 설정에서 시간 컬럼이 자동 추론되면 별도 설정 없이 DRS가 적용됩니다.
- 위젯이 시간 컬럼을 추론하지 못하는 경우(예: 비정형 스키마), 위젯 데이터 설정의 Time field에서 컬럼을 명시합니다.
DRS 잠금과 자동 새로고침
- DRS를 사용자 지정 고정 범위로 잠그면, 시청자가 특정 시점을 분석 중이라고 판단하여 자동 새로고침이 비활성화됩니다.
- DRS가 프리셋(
최근 7일등 상대 범위)일 때만 자동 새로고침이 작동합니다.
쿼리 모드에서 날짜 필터 사용
쿼리 모드에서는 $from과 $to 변수를 사용하여 날짜 범위를 적용할 수 있습니다:
SELECT
toDate(order_date) as date,
SUM(amount) as revenue
FROM orders
WHERE order_date >= $from AND order_date <= $to
GROUP BY date
ORDER BY date
데이터 새로고침
- 자동 새로고침: 대시보드 Settings 모달에서 자동 새로고침 주기를 지정합니다 (
사용 안 함/30초/1분/5분/15분등). 변경 사항은 편집기·뷰어에 동시 broadcast되어 즉시 적용됩니다. - 수동 새로고침: 대시보드 상단의 새로고침 버튼을 클릭하여 즉시 데이터를 갱신합니다.
- DRS 잠금 시 비활성화: DRS가 사용자 지정 고정 범위로 잠긴 동안에는 자동 새로고침이 비활성화됩니다.