Precomputed Result

Materialized View는 미리 계산한 결과를 DBMS가 관리한다

요약 테이블을 직접 관리하는 대신 DBMS의 갱신과 쿼리 재작성 기능을 활용할 수 있다. 핵심은 언제 새로고침되는지다.

Base tablesorders, order_items, payments
MVmv_daily_sales에 일별 집계를 저장
Query대시보드가 원본 조인 대신 MV를 읽음
항목
선택지
확인할 것
Refresh
on commit, scheduled, manual
최신성 요구와 쓰기 부하
Rewrite
옵티마이저가 MV를 대신 사용할 수 있음
DBMS 지원 여부와 통계 최신성
Recovery
MV 재생성 또는 전체 재계산
원본과 결과 차이 감시

판단: MV는 읽기를 빠르게 만들지만 “얼마나 최신이어야 하는가”와 “틀렸을 때 어떻게 다시 만들 것인가”가 함께 설계되어야 한다.