* extent 할당 관리 방법 (오라클에서 default : LMT )
DMT (Dictionary Managed Tablespace) : central 관리
- extent를 data dictionary 에서 관리함
- used extent, free extent 에 대한 정보를 기록
- extent들의 변경 내용들을 undo segment에 기록도 해야 하므로 변경 내용이 많을 경우 data dictionary 내에서 performance problem 인 contention(경합)이 발생할 수 있다.
- 하나의 tablespace에 속하는 공간은 data Dictionary table에서 관리한다.
- 새로운 extent의 할당이 필요한 시점에 오라클은 data dictionary table에 쿼리를 실행하여 할당 가능한 extent에 이를 할당하는 기법이다.
LMT (Locally Managed Tablespace) : local 관리
- 8i 부터 사용함
- 기본적으로 차지되는 공간이 크다
- extent 관리를 tablespace의 header에서 관리함. (bitmaps 이용)
- 지역적으로 관리되는 locally managed 방법이다.
- 각 data 파일에 저장되는 비트맵이 extent를 관리하는데 사용된다.
- 하나의 extent를 얻디 위해서는 하나의 비트를 '1'로 설정하면 full 을 의미하고 '0'을 설정하면 empty가 된다.
- DMT 보다 수행 속도가 훨씬 뛰어나다
LMT인지 DMT인지 구별 방법
- segment_space_management가 Manual = DMT / auto = LMT
SQL> select TABLESPACE_NAME, segment_space_management from user_tablespaces where segment_space_management = 'MANUAL' OR segment_space_management = 'AUTO';
TABLESPACE_NAME SEGMEN
------------------------------ ------
SYSTEM MANUAL
SYSAUX AUTO
PSAPGPD700 AUTO
PSAPGPD AUTO
PSAPGPDUSR AUTO
PERFSTAT AUTO
PSAPUNDO2 MANUAL
PSAPTEMP2 MANUAL
8 rows selected.