지속적으로 데이터 용량이 증가하는 논리적 테이블을 여러 개의 물리적 공간으로 나눈 테이블이다. 이렇게 나뉜 파티션 테이블은 별개의 세그먼트에 저장된다. 이 때문에 개별적으로 파티션 테이블을 관리할 수 있다.
파티션 테이블은 다음과 같은 장점이 있다.
파티션 테이블을 생성하기 위해서는 CREATE TABLE 문을 사용할 때 파티션의 정보를 정의함으로써 파티션된 테이블을 만들 수 있다.
다음은 파티션 테이블을 생성하는 예이다.
CREATE TABLE PARTITIONED_TABLE1 (C1 NUMBER, C2 CLOB, C3 NUMBER) PARTITION BY RANGE (C1, C3) ( PARTITION PART1 VALUES LESS THAN (30, 40), PARTITION PART2 VALUES LESS THAN (50, 60), PARTITION PART3 VALUES LESS THAN (60, 70) );
파티션 테이블을 추가하고 삭제하기 위해서는 ALTER TABLE 문을 사용할 때 파티션과 관련된 옵션을 사용함으로써 가능하다.
다음은 파티션 테이블을 추가하는 예이다.
ALTER TABLE PARTITIONED_TABLE1 ADD PARTITION PART3 VALUES LESS THAN (70, 80);
다음은 파티션 테이블을 삭제하는 예이다.
ALTER TABLE PARTITIONED_TABLE1 DROP PARTITION PART1;
파티션을 정의할 때 다음과 같은 주의 사항이 있다.
Tibero RDBMS에서는 파티션 테이블의 정보를 제공하기 위해 다음 표에 나열된 정적 뷰를 제공하고 있다. DBA나 일반 사용자 모두 사용할 수 있다.
정적 뷰 | 설명 |
---|---|
DBA_PART_TABLES | Tibero RDBMS 내의 파티션된 모든 테이블의 정보를 조회하는 뷰이다. |
USER_PART_TABLES | 현재 사용자에 속한 파티션된 테이블의 정보를 조회하는 뷰이다. |
ALL_PART_TABLES | 사용자가 접근 가능한 파티션된 테이블의 정보를 조회하는 뷰이다. |
- 강좌 URL : http://www.gurubee.net/lecture/2085
- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.