NHN AppGuard는 Trino를 도입하여 타임아웃 문제를 해결함
MySQL을 OBS와 Trino 기반의 DataQuery로 대체하여 집계 쿼리 성능 10배 향상
데이터 저장 기간 60일 → 1년 연장, 내부 집계 시간 43% 단축
Trino는 Coordinator와 Worker 노드로 구성되어 분산 쿼리 처리를 수행한다. Coordinator는 쿼리 분석, 계획, 최적화를 담당하고, Worker는 병렬로 데이터 처리 작업을 실행한다. 따라서 복잡한 쿼리도 빠르게 처리 가능하며, ANSI SQL을 지원하여 기존 쿼리 호환성을 제공한다.
MySQL은 행(row) 기반 조회에서 빠르지만, 집계 쿼리에서는 Trino가 압도적인 성능을 보인다. DataQuery를 사용한 결과, 집계 쿼리에서 10배 이상의 성능 향상을 달성했다. 반면, 데이터가 적은 경우 MySQL이 더 빠르므로, 상황에 맞는 엔진 선택이 중요하다.
NHN AppGuard는 MySQL에서 OBS와 Trino 기반의 DataQuery로 전환하여 데이터 저장 기간을 1년으로 연장했다. Parquet 파일 포맷을 사용하고, MySQL을 활용한 Tier Down 방식을 통해 데이터 로딩 파이프라인을 구축했다. 따라서, 데이터 양에 따라 적절한 쿼리 엔진을 선택하는 것이 중요하다.