Oracle/Admin2010. 4. 27. 09:26

-- CREATE INDEX 시에 하기 쿼리로 SPACE 를 추적 가능
-- CREATE INDEX XAK1MIG_TEST2 ON MIG_TEST2 ( A2, B ) ;
-- 병렬로 생성 가능
-- CREATE INDEX XAK1MIG_TEST2 ON MIG_TEST2 ( A2, B ) PARALLEL 10 ;
-- 병렬로 인덱스 리빌드 가능
-- ALTER INDEX XAK1MIG_TEST2 REBUILD TABLESPACE USERS PARALLEL 10 ;

-- 병렬 체크
select a.sql_text
from v$sqltext a, v$session b
where a.address=b.sql_address and
a.hash_value=b.sql_hash_value and
b.sid in (select sid from v$px_session) ;

-- Sort Usage 체크
select   se.username
        ,se.sid
        ,su.extents
        ,su.blocks * to_number(rtrim(p.value)) as Space
        ,tablespace
        ,segtype
from     v$sort_usage su
        ,v$parameter  p
        ,v$session    se
where    p.name          = 'db_block_size'
and      su.session_addr = se.saddr
order by se.username, se.sid ;

 

병렬 작업 후 반드시 해당 인덱스의 DEGREE 를 1로 변경 해준다.

 

ALTER INDEX XAK_CHECK_PARALLEL PARALLEL (DEGREE 1 ) ;

 

확인은

SELECT OWNER,INDEX_NAME,TABLE_NAME, DEGREE FROM DBA_INDEXES

WHERE INDEX_NAME ='XAK_CHECK_PARALLEL';

 

병렬 쿼리 인덱스 관련 정보

2. Space 의 관리

(1) Create table .. as select, create index 작업의 저장 영역


Parallel 하게 table 이나 index를 생성하는 경우 create 명령의
storage 절의 initial 값으로 temporary segment를 생성한다.
Initial 값이 5M이고 parallel degree 를 10으로 설정하여 table을
생성하는 경우는 5M 씩 10개의 temporary segment가 만들어지면서
data를 저장한다. 그리고 Parallel coordinator 가 temporary
segment를 병합한다.


(2) Temporary segment 의 free space 관리


Data의 loading 작업이 끝난 후에 각 temporary segment에서
사용되지 않은 free space를 가진 extent가 tablespace level에서
설정한 minimum extent 값보다 크면 parallel coordinator 가
모든 temporary segment를 병합할 때 사용하지 않은 영역은 잘라낸다.
잘려진 영역은 datafile의 free space로 돌려지며 다른 object에 의해
사용될 수 있다. 그러나 연속된 영역이 아니므로 하나의 큰 segment로
합쳐질 수 없다. (external fragmentation)
위의 경우에서 free space를 가진 extent가 minimum extent 값보다
작으면 parallel coordinator 가 모든 temporary segment를 병합할 때
사용하지 않은 영역도 포함시킨다. 이 부분은 후에 data가 insert될 때
사용된다. (internal fragmentation)

'Oracle > Admin' 카테고리의 다른 글

[펌] TNS-12546: TNS:permission denied  (0) 2010.05.28
session kill 하는 SQL  (0) 2010.05.21
alert_SID.log  (0) 2010.03.24
index rebuild 작업  (0) 2010.02.25
Globalization  (0) 2010.01.11
Posted by 자수성가한 부자