반정규화는 읽기 성능 대신 이상 현상을 다시 가져온다
성능 이득만 보지 말고 갱신, 삽입, 삭제 시 어떤 불일치가 생기는지와 대응 절차를 함께 설계한다.
상황
예시
위험
대응
갱신 이상
사용자 이름이 여러 주문 행에 복사됨
일부 행만 바뀌면 값이 갈라짐
원본 기준 동기화
삽입 이상
요약 행이 없으면 신규 주문이 대시보드에서 빠짐
읽기 결과 누락
재계산 트리거
삭제 이상
원본 삭제 후 스냅샷 의미가 흐려짐
이력 보존 실패
보존 정책 명시
원본 정의source of truth를 하나로 둔다.
동기화트리거, 배치, 이벤트 중 하나를 선택한다.
검증차이 감지 쿼리와 로그를 남긴다.
복구재계산 가능한 경로를 준비한다.