A Query Proxy for Analytical and Fast Data
Author: Eric Sun | Source: Medium | Published: 2026-05-16
한 줄 요약
서비스 팀이 다양한 분석 백엔드(Snowflake, StarRocks, Iceberg 등)에 통일된 gRPC 인터페이스로 접근할 수 있도록 하는 Query Proxy 아키텍처 패턴.
핵심 주장/내용
- 온라인 서비스가 여러 분석 DB에 접근할 때 라이브러리·인증 파편화 문제를 Query Proxy로 해결
- gRPC + 서비스 간 인증으로 서비스 친화적 인터페이스 제공, Parquet + ZSTD 압축으로 대용량 결과 효율 전송
- 쿼리 셰이프별 가드레일(rate limit, quota)과 AI Agent 기반 파생 테이블 자동 생성으로 비효율 쿼리 최적화
- Hot/Warm 데이터 페더레이션: Postgres(최신) + Iceberg(과거)를 단일 API로 제공
- 향후 DuckDB/DataFusion을 내장 쿼리 엔진으로 통합하여 캐시된 Parquet 파일 위에서 쿼리 리라이트·페더레이션 강화 가능
주요 수치 / 사실
- ZSTD vs SNAPPY 벤치마크: SNAPPY가 캐시 생성 15~25% 빠르지만, 클라이언트 포함 E2E에서는 ZSTD 승리 (파일 크기 차이)
- 결과 파일을 30MB 단위 Parquet로 분할, 2~6개 동시 다운로드로 처리량 극대화
- Proxy 인스턴스는 Stateless — 메타데이터는 Postgres에 중앙 관리
관련 위키
Source: 원문 보기