파라미터화된 쿼리 템플릿을 캐싱해 Text2SQL 레이턴시를 80% 줄인 아키텍처를 다룬다. LLM이 매번 SQL을 생성하는 대신 구조만 캐싱하고 엔티티만 교체하는 방식으로 25~30초 응답 시간을 5초 이하로 단축했다. 캐시 미스로 새로 생성된 SQL이 검증 후 자동으로 캐시에 추가되는 자가 확장 루프가 핵심이다.
핵심 포인트- 완전한 답변 캐싱 대신 SQL 구조(템플릿)만 캐싱해 데이터 변경에도 안전한 캐시를 구현했다.
- 엔티티 추출→시멘틱 템플릿 매칭→파라미터 채우기→검증→응답 생성의 5단계 파이프라인이다.
- 시멘틱 매칭이 리프레이징을 처리해 "Q3 매출"과 "3분기 수익"이 동일 템플릿으로 라우팅된다.
- 캐시 히트 시 레이턴시 80% 감소, 토큰 소비 90% 감소, 60% 히트율 기준 전체 토큰 50% 이상 절감.
- 신규 생성 SQL이 검증 통과 후 자동으로 캐시에 추가되어 실사용 패턴에 따라 커버리지가 유기적으로 확장된다.
상세 정리- 문제: LLM 기반 Text2SQL은 요청당 60,000 토큰 입력·15~20초 응답으로 사용자 이탈이 발생한다. 응답이 25~30초면 참여율이 크게 떨어진다.
- 완전 캐싱의 한계: 답변 자체를 캐싱하면 기저 데이터 변경 시 stale 결과를 반환한다. 구조만 캐싱하는 이유다.
- 엔티티 추출: Amazon Nova 2 Lite 같은 경량 모델이나 커스텀 NER 모델로 날짜·상품명·카테고리·수치 등을 추출한다. 대화 히스토리와 사용자 컨텍스트도 반영한다.
- 시멘틱 매칭: 질문을 임베딩 벡터로 변환해 유사도 검색으로 캐시 템플릿을 찾는다. 표현 방식이 달라도 동일 의미면 같은 템플릿으로 매핑된다.
- SQL 인젝션 방지: 엔티티를 문자열 치환이 아닌 파라미터화된 쿼리(prepared statement)로 채워 보안을 확보한다.
- 검증 단계: 결과가 비어있지 않은지, 요청 필드가 포함됐는지, 질문을 충분히 커버하는지 확인하고, Claude Haiku 4.5가 결과를 대화형으로 요약한다.
- 리랭킹 보완: 임베딩 유사도만으론 정확도가 부족할 때 느슨한 임계값으로 후보를 넓게 가져온 뒤 전문 리랭커로 재점수를 매긴다.
- 확장성: 반복 질의 패턴이 있는 모든 도메인(BI 대시보드, 챗봇, 내부 검색)에 동일 패턴이 적용 가능하다.
왜 읽나Text2SQL·RAG 시스템의 운영 비용과 레이턴시를 동시에 줄이고 싶은 데이터 엔지니어·ML 팀에게 실제 운영 수치와 함께 적용 가능한 캐싱 아키텍처 레퍼런스.