×

1. 게시판에 자주 글을 남긴다.
2. [ Oracle Database ] 기술문서 게시판에 반드시 주 1회 이상 셀프 스터디한 내용을 올린다.
3. 타인의 질문에 적극적으로 답변한다.

오라클 리오그 방법

  • 윌리엄
    (WilliamR)
  • 윌리엄's Avatar 이 글의 작성자
  • Offline
  • Newbie
  • Newbie
더보기
23 Feb 2021 11:19 - 19 Jan 2022 03:11 #5193 작성자: 윌리엄
윌리엄 님의 글: 오라클 리오그 방법
RE-ORGANIZATION 작업이 필요한 경우

- data tablespace에 index존재
- extents발생
- chained rows발생


리오그의 필요성

- 데이터베이스를 물리적으로 저장하기 위하여는 Disk Space가 필요하며
- 빈번한 DATA의 신규생성, 삭제, 변경작업으로 물리적으로 tablepace의 단편화 및 segment(table, index)자체의 many extent 발생 필연적임.
- 이에 따른 적절한 관리 및 개선작업을 통한 성능향상 방안으로서 Reorg가 요구됨.


단편화의 유형

1) Tablespace Freespace Fragmentation
- 신규데이이타의 유입은 신규 EXTENT생성을 의미함.
- EXTENT는 연속된 FREE SPACE를 요구하며, 빈번한 EXTENNT의 생성 및 삭제는 Tablespace 단편화 초래
Tablespace에 작은 size의 freespace가 산재하여 space 활용측면에서 낭비적 요소 발생

2) Segment Fragmentation
- 신규데이타의 유입은 신규 EXTENT생성을 의미함.
- 신규데이타 유입으로 EXTENT가 신규segment에 추가적으로 Attach됨
- 불규칙하게 산재되어 있는 다수의 extent에 대한 access로 IO 성능저하 발생가능성

3) Index Leaf Block Fragmentation
- 데이터가 삭제됨에도 불구하고 branch block은 삭제되지 않기 때문에 빈 branch block을 가질 수 있음.
- index 해당하는 column의 삭제로 Index Leaf Block 삭제되며 단편화의 원인이 됨.

4) Row Fragmentation
- 실제 data 저장되는 단위는 Block
- block의 크기가 작아 큰 size의 data 가 2개 이상의 block에 결쳐서 저장되는 현상(row chaining)


RE-ORGANIZATION 작업 방법

1. 해당 user의 모든 정보를 re-organization

단 한번의 export/import로 해당 segment를 포함한 user의 모든 정보를 재구축해준다. 방법이 간단하고 시간도 오래 걸리지 않으며 사용자가 없는 시간대에 작업할 수 있도록 한다

2. 해당 table만 re-organization

해당 segment를 조사하여 개별적으로 재구축작업을 해 준다. 해당 segment를 사용하고 있지 않아야 하며 작업이 가능하다
Time to create page: 0.051 seconds
Powered by Kunena Forum