|
9i까지는 Manual(Dictionary), Auto(Local) 선택가능
10g R2 부터는 무조건 Default로 Auto가 지정되어 있습니다.
<TBS를 만들때 MANUAL로 지정한 경우, 중간에 AUTO로 변경이 불가능합니다.>
----------------------------------------
오라클 8버전까지의 테이블스페이스내의 저장공간 할당에 관련된 정보를 Data Dictionary 내에 저장하고 관리 하였습니다. 하지만 이 방법은 때때로 I/O Bottleneck의 원인이 되기도 하죠.
1. DICTIONARY MANAGED TABLESPACE
지금까지 사용하여 왔던 전통적인 테이블스페이스 관리방식 입니다. 즉, 각 Objects(테이블,인덱스,…)의 Extents를 Data Dictionary Table들을 사용하여 관리하는 방식이죠.
만약, 어떤 테이블에 하나의 새로운 Extent가 필요할 때에는 해당 Data Dictionary Table을 참조하기 위한 여러 개의 Recursive SQL이 내부적으로 수행되어 집니다. 이것은 때때로 Performance의 저하를 초래하기도 합니다.
2. LOCALLY MANAGED TABLESPACES
테이블스페이스 내의 Free space, 또는 Extent를 관리하기 위해서 Data Dictionary Table을 사용하지 않습니다.
대신에 해당 테이블스페이스 내에서 Bitmap을 이용하여 해당 테이블스페이스내의 모든 Free space, 사용된 Extent의 할당 정보를 관리 합니다.
Locally Managed Tablespace는, 자체 extent에 대한 관리를 각각의 데이터파일에 비트맵 형식으로 저장하여 관리하는 테이블스페이스로, 데이터파일을 구성하는 블럭이 비어 있는지, 사용 중인지에 대한 정보를 관리 합니다.
비트맵의 각각의 비트는, 하나의 블럭 또는 블럭의 그룹에 해당하는 정보를 나타 냅니다.
|