🧩 뷰 (View)
- 뷰는 데이터베이스에서 자주 사용하는 쿼리를 저장해 두고, 테이블처럼 사용할 수 있는 가상 테이블.
- 뷰는 실제 데이터를 저장하지 않고, 실행 시점에 쿼리 결과를 반환.
뷰 생성
CREATE VIEW view_name AS
SELECT column1, column2
FROM table_name
WHERE condition;
뷰 사용
- 뷰는 테이블처럼 SELECT 쿼리에서 사용할 수 있음.
SELECT * FROM view_name;
🔄 물리적 설계 (Partitioning)
- 파티셔닝은 큰 테이블을 작은 논리적 단위로 분할하여 관리할 수 있도록 하는 기능.
- 데이터의 처리 성능을 향상시키고 관리가 용이해짐.
파티셔닝 유형
- Range Partitioning: 값의 범위에 따라 데이터를 나눔.
- List Partitioning: 값의 목록에 따라 데이터를 나눔.
- Hash Partitioning: 해시 값을 기준으로 데이터를 나눔.
예시:
CREATE TABLE orders (
order_id SERIAL,
order_date DATE,
customer_id INT
) PARTITION BY RANGE (order_date);
CREATE TABLE orders_2020 PARTITION OF orders FOR VALUES FROM ('2020-01-01') TO ('2020-12-31');
CREATE TABLE orders_2021 PARTITION OF orders FOR VALUES FROM ('2021-01-01') TO ('2021-12-31');
🧑💻 커스텀 데이터 타입 (Custom Data Types)