피드로 돌아가기
Dev.toDatabase
원문 읽기

Aurora PostgreSQL의 Range Type을 활용한 SLA 정산 증명 시스템 구축
I made the database compute everything: building an SLA-credit system of record on Aurora PostgreSQL + Vercel
AI 요약
Context
분산된 5개 시스템의 데이터 불일치와 정산 과정의 수동 작업으로 인한 검증 불가능성 문제 발생. 단순 계산보다 결과의 정당성을 증명하는 Defensibility 확보가 핵심 요구사항으로 식별됨.
Technical Solution
- Application Layer의 계산 로직을 완전히 제거하고 Database 중심의 Compute 구조로 전환
- tstzmultirange 타입을 도입하여 장애 시간과 유지보수 시간의 집합 연산(Set Subtraction) 구현
- SQL Function 기반의 단일 진실 공급원(Single Source of Truth)을 구축하여 계산 과정의 투명성 확보
- Aurora PostgreSQL의 GiST Index와 RLS(Row Level Security)를 통한 데이터 격리 및 성능 최적화
- Vercel을 단순 렌더링 레이어로 활용하여 인프라 관리 비용 최소화 및 데이터베이스 로직 집중
- Append-only Ledger 구조를 채택하여 정산 수정 이력의 무결성 유지
실천 포인트
1. 시간 구간 연산이 필요한 경우 App 로직 대신 DB의 Range Type 검토
2. 결과의 증명이 중요한 금융/정산 시스템은 SQL Function 기반의 검증 경로 확보
3. 얇은 App 레이어와 두꺼운 DB 레이어 구조를 통한 비즈니스 로직의 응집도 향상 고려