SQL 에디터
SQL 에디터는 GenD의 핵심 기능으로, Trino Federation SQL 엔진에 직접 쿼리를 작성하고 실행할 수 있는 웹 기반 IDE입니다. Monaco Editor(VS Code 동일 엔진)를 탑재하여 구문 강조, 자동 완성, 다중 탭 편집을 지원합니다.
쿼리 작성 화면

에디터 영역
화면 상단은 Monaco Editor 기반의 SQL 편집 영역입니다.
| 기능 | 설명 |
|---|---|
| 구문 강조 | SQL 키워드, 함수, 문자열, 숫자를 색상으로 구분 |
| 자동 완성 | 카탈로그, 스키마, 테이블, 컬럼명 자동 완성 제안 |
| 다중 탭 | 여러 쿼리를 탭으로 관리하며 동시에 작업 |
| 줄 번호 | 에러 위치를 빠르게 파악할 수 있는 줄 번호 표시 |
카탈로그 선택기
에디터 상단의 드롭다운에서 기본 카탈로그를 선택할 수 있습니다. 선택한 카탈로그는 쿼리의 기본 컨텍스트로 사용됩니다 (예: iceberg, tpch, sourcedb 등).
도구 모음 버튼
| 버튼 | 단축키 | 설명 |
|---|---|---|
| Run All | Ctrl+Enter | 에디터의 전체 SQL을 실행 |
| Save | Ctrl+S | 현재 쿼리를 저장된 쿼리(Saved Query)로 보관 |
| AI | — | AI Assistant를 호출하여 Text-to-SQL 또는 쿼리 최적화 요청 |
쿼리 결과 화면

Output 패널
쿼리 실행 후 하단의 Output 패널에 결과가 표시됩니다.
| 정보 | 설명 |
|---|---|
| 결과 테이블 | 쿼리 결과를 가상화된 테이블로 표시 (대용량 데이터도 부드러운 스크롤) |
| 행 수 (Rows) | 반환된 행의 총 개수 |
| 실행 시간 (Duration) | 쿼리 실행에 소요된 시간 (초 단위) |
| 상태 | succeeded, failed, running, cancelled |
결과 테이블은 @tanstack/react-table과 @tanstack/react-virtual을 사용하여 수만 행의 데이터도 효율적으로 렌더링합니다.
주요 기능
- Monaco Editor — VS Code 수준의 SQL 편집 경험 (구문 강조, 자동 완성, 미니맵)
- Federation SQL — 여러 카탈로그의 테이블을 하나의 쿼리에서 JOIN
- 다중 탭 관리 — 여러 쿼리를 탭으로 전환하며 동시 작업
- 쿼리 저장 — 자주 사용하는 쿼리를 저장하고 재사용
- AI 연동 — 자연어로 쿼리를 생성하거나 기존 쿼리를 최적화
- 결과 가상화 — 대용량 결과도 부드럽게 스크롤하며 탐색
샘플 쿼리 예시
TPC-H 벤치마크 데이터에서 고객별 주문 요약을 조회하는 Federation SQL 예시입니다.
SELECT
c.name AS customer_name,
c.mktsegment AS segment,
COUNT(o.orderkey) AS order_count,
SUM(o.totalprice) AS total_amount
FROM tpch.tiny.customer c
JOIN tpch.tiny.orders o
ON c.custkey = o.custkey
GROUP BY c.name, c.mktsegment
ORDER BY total_amount DESC
LIMIT 20;
실행 결과 예시:
customer_name segment order_count total_amount
──────────────────────────────────────────────────────────────
Customer#000000712 BUILDING 7 1,245,820.55
Customer#000000737 FURNITURE 8 1,198,407.23
Customer#000000631 AUTOMOBILE 6 1,087,315.44