2026.04 ~ 진행 중
AI 데이터 접근 플랫폼 구축 (Dataroom Service / Query Store)
운영 Aurora MySQL과 분리된 Data DB를 기반으로 AI가 안전하게 데이터를 조회하고 업무용 엑셀 산출물까지 생성할 수 있는 데이터 접근 플랫폼 구축
- 역할
- 설계 및 개발
- 팀
- 전기차충전사업부문 개발팀
- 인원
- 백엔드 1인
사용기술
Java 21, Spring Boot, Spring AI, MCP Server, AWS RDS Aurora MySQL, Aurora MySQL Binary Log Replication, MyBatis, Flyway, Redis, AWS S3, MinIO, Docker, SQL, NL2SQL, Agent Harness Design, Context Engineering, Prompt Tuning, Excel Automation
주요 업무
- dataroom-service 구축: AI Agent용 MCP 서버와 일반 웹 클라이언트용 API를 함께 제공하는 백엔드 서비스 개발
- dataroom-service MCP 서버 구현 완료, 사내 AI 클라이언트 온보딩은 별도 적용 단계로 분리
- Query Store 구축: 자연어 데이터 요청을 인터뷰, LLM SQL 후보 생성, SQL 검증 Hook, 샘플 검증, 본 실행, 결과 파일 저장, PR 이력화 흐름으로 표준화
- 운영 Aurora MySQL과 AI/분석 조회 환경을 분리하기 위해 데이터 전용 Aurora MySQL 클러스터 구성
- dump 기반 초기 적재와 Aurora MySQL binary log replication을 활용해 운영 데이터를 Data DB에 동기화하는 구조 적용
- 운영 라이브 테이블을 직접 조회하지 않고 mart / snapshot / freeze 데이터셋을 우선 사용하는 데이터 조회 정책 설계
- 개인정보 등 민감 데이터가 LLM에 전달되지 않도록 AI 전용 계정, 권한 분리, Masked View 기반 조회 구조 구성
- 비즈니스 용어와 DB 컬럼/조건을 연결하는 Domain Dictionary, WHERE Rule, SQL 작성 규칙 문서화
- freeze 데이터로 확인 불가능한 항목은 제한된 live table 조회 경로를 별도로 정의하고, allowlist와 조건 규칙을 통해 통제
- live table 조회 시 LIMIT 기반 샘플 확인과 EXPLAIN 기반 실행 계획 점검을 거친 뒤 실행 여부를 판단하는 안전장치 설계
- 조회 결과를 단순 CSV가 아니라 업무용 Excel 산출물로 저장하고, SQL/추출 이력은 PR로 관리하는 workflow 구성
- 중요 사업보고 및 외부 제출 자료는 개발자 검토를 거치도록 Human-in-the-loop 운영 원칙 적용
프로젝트 성과
반복적인 데이터 추출 요청을 자연어 기반 요청, LLM SQL 후보 생성, SQL 검증 Hook, 샘플 확인, 엑셀 산출물 생성 흐름으로 표준화했습니다. 운영 DB를 직접 조회하지 않고 별도 Data DB, mart, snapshot, freeze 계층을 거치도록 구성해 AI 질의로 인한 운영 부하와 민감정보 노출 리스크를 줄이는 구조를 마련했습니다.
경험 및 성장
AI를 단순 코드 작성 도구가 아니라 운영 데이터와 업무 시스템 사이의 안전한 실행 파이프라인으로 설계하는 경험을 했습니다. LLM의 후보 생성 능력과 백엔드의 권한, 검증, 감사, 성능 통제를 분리해 AI 데이터 플랫폼 관점의 설계 역량을 확장했습니다.