한 서비스, 여러 저장 기준

폴리글랏 퍼시스턴스는 DB 종류보다 데이터 역할을 먼저 나누는 설계다

주문 데이터는 상태가 틀리면 안 되고, 카탈로그는 구조가 자주 바뀌며, 추천 데이터는 연결을 빨리 따라가야 합니다. 같은 시스템 안에서도 저장 책임이 다르면 적합한 DB도 달라집니다.

핵심 비교: 같은 플랫폼이라도 무엇을 저장하고, 무엇을 먼저 보호해야 하는지에 따라 선택 기준이 갈라집니다.
데이터 역할
먼저 보호할 것
잘 맞는 저장소
주문 · 결제
재고와 금액 상태가 함께 맞아야 하는 트랜잭션 데이터
강한 일관성과 원자성
성공과 실패가 분리되면 비즈니스 상태가 바로 깨집니다.
관계형 DB
예: PostgreSQL
상품 카탈로그
상품마다 속성이 다르고 구조가 자주 바뀌는 데이터
유연한 스키마
필드가 자주 추가되어도 저장 구조를 빠르게 수용해야 합니다.
문서 DB
예: MongoDB
추천 · 관계 분석
사용자, 상품, 행동 사이 연결을 따라가며 읽는 데이터
관계 탐색 속도
조인보다 연결 경로 자체를 자연스럽게 따라가는 조회가 중요합니다.
그래프 DB
예: Neo4j
세션 · 장바구니
지금 상태를 매우 빠르게 읽고 짧게 보관하는 데이터
초저지연과 TTL
응답 직전 값을 즉시 꺼내고, 오래된 상태는 자연스럽게 만료해야 합니다.
키-값 / 인메모리
예: Redis
검색
단어 분석과 관련도 순위가 중요한 탐색용 데이터
전문 검색과 역색인
정확한 일치보다 빠른 검색 경험과 랭킹 계산이 더 중요합니다.
검색 엔진
예: Elasticsearch
정리: 폴리글랏 퍼시스턴스의 핵심은 DB를 많이 쓰는 것이 아니라 업무별로 다른 저장 책임을 분리하는 것입니다. 로그처럼 대량 쓰기가 핵심인 데이터도 같은 원리로 별도 저장소를 둘 수 있습니다.