하나의 큰 orders 테이블
5년치 주문 1억 건이 한 테이블에 모여 있으면, 연도 조건이 있어도 전체 범위를 건드리기 쉬워집니다.
핵심은 테이블을 여러 개로 늘리는 것이 아니라, 같은 orders 데이터를 order_date 범위 기준으로 잘라 읽기와 운영 범위를 줄이는 데 있습니다.
5년치 주문 1억 건이 한 테이블에 모여 있으면, 연도 조건이 있어도 전체 범위를 건드리기 쉬워집니다.
연도별 구간을 먼저 정해 두면, 데이터와 운영 단위가 같은 기준으로 움직입니다.
PARTITION BY RANGE (order_date) p2022 < DATE '2023-01-01' p2023 < DATE '2024-01-01' p2024 < DATE '2025-01-01'
조회 조건이 2023년이면, DBMS는 다른 연도 대신 해당 파티션만 우선 읽습니다.