안녕하세요! 오늘은 데이터베이스 물리속성 설계에 대해 알아보겠습니다. 데이터베이스를 효율적으로 관리하고 성능을 향상시키는 데 중요한 요소들을 살펴보겠습니다.
샤딩(Sharding)
파티셔닝의 장/단점
파티셔닝의 종류
분할 기준
파티션 생성 예제
CREATE TABLE orders (
id INT,
order_date DATE,
amount DECIMAL(10,2),
PRIMARY KEY (id, order_date)
)
PARTITION BY RANGE (YEAR(order_date))
SUBPARTITION BY HASH(MONTH(order_date)) (
PARTITION p0 VALUES LESS THAN (2010) (
SUBPARTITION s0,
SUBPARTITION s1,
SUBPARTITION s2
),
PARTITION p1 VALUES LESS THAN MAXVALUE (
SUBPARTITION s3,
SUBPARTITION s4,
SUBPARTITION s5
)
);
클러스터
인덱스(Index)
인덱스를 사용하는 이유
인덱스의 종류
인덱스의 구조
인덱스 컬럼의 선정
인덱스 생성 / 삭제 예제
생성
CREATE CLUSTERED INDEX idx_sales_date ON sales(sales_date);
삭제
DROP INDEX idx_sales_date ON sales;
뷰(View)
뷰의 장 / 단점
장점 | 논리적 데이터 독립성을 제공한다. |
동일 데이터에 대해 동시에 여러 사용자의 상이한 요구를 지원해 준다. |
|
단점 | 독립적인 인덱스를 가질 수 없다. |
ALTER VIEW문을 사용할 수 없다. |
뷰 생성 / 삭제 예제
생성
CREATE VIEW customer_orders AS
SELECT c.id, c.name, o.order_date, o.amount
FROM customer c
JOIN orders o ON c.id = o.customer_id;
삭제
DROP VIEW customer_orders;
시스템 카탈로그
시스템 카탈로그의 특징
시스템 카탈로그의 종류 (오라클 기준)
종류 | 설명 |
SYSTABLES | 기본 테이블 및 뷰 테이블의 정보를 저장하는 테이블 |
SYSCOLUMNS | 모든 테이블에 대한 정보를 열(속성) 중심으로 저장하는 테이블 |
SYSVIEW | 뷰에 대한 정보를 저장하는 테이블 |
SYSTABAUTH | 테이블에 설정된 권한 사항들을 저장하는 테이블 |
SYSCOLAUTH | 각 속성에 설정된 권한 사항들을 저장하는 테이블 |
이렇게 데이터베이스 물리적 설계에 대해 알아보았습니다. 각 요소의 특징과 장단점을 이해하고 데이터베이스 시스템을 효율적으로 구축하는 데 도움이 되기를 바랍니다. 2024년에 정보처리기사를 따기 위해 노력하는 모두에게 행운을 빕니다!
[정보처리기사 실기 공부] 키와 무결성 제약조건 (0) | 2024.04.17 |
---|---|
[정보처리기사 실기 공부] 관계 데이터베이스 구축 (0) | 2024.04.08 |
[정보처리기사 실기 공부] 물리적 데이터베이스 설계 (0) | 2024.03.26 |
[정보처리기사 실기 공부] 논리적 데이터베이스 설계 (0) | 2024.03.19 |
[정보처리기사 실기 공부] 데이터베이스 모델링 (0) | 2024.03.11 |