◆ Row Chaining

위처럼 Row Chaining 현상이 일어나면 블록을 생각했던 것 이상으로 끌어올리게 될 수 있기 때문에 성능이 좋지 않다. 하지만 Row Chaining 현상이 어쩔 수 없이 일어나는 경우도 있다.
블록 하나의 크기가 8K인데, 게시판의 게시글 총 크기가 9K라면 그때는 할 수 없이 Row Chaining이 일어난다.


◆ Row Migration


◆ PCTFREE와 PCTUSED
PCTFREE를 적게 주면 이사가 많다.
PCTFREE를 많이 주면 공간 낭비가 심하다.
8i까지는 PCTFREE와 PCTUSED를 써주어 관리를 했어야 하나, 귀찮으면 ASSM으로 만들면 오라클이 알아서 관리한다.


◆ 면접 예상 질문
테이블 만들 때는 있는데, 인덱스 만들 때는 없는 옵션이 무엇일까? 답은 PCTUSED이다.
그렇다면 왜 없을까?
PCTUSED는 데이터가 블록에서 지워지면 몇% 이하가 되었을 때 재활용하기 위해 쓰여지는 옵션이다.
그러나 인덱스는 테이블에서 데이터가 지워져도 인덱스에 데이터는 그대로 남아있기 때문에 PCTUSED가 쓰일 일이 없다.



◆ 데이터 블록 관리방법 2가지
  ◇ FLM
    - 프리리스트 하나로 데이터파일 전체를 관리하는 방법.
    - 8i는 FLM방식이었다.
    - 속도가 느리다.
  ◇ ASSM
    - 9i부터 도입된 관리방식. FLM도 물론 쓸 수 있다. 기본적으로 FLM임.
    - 테이블스페이스 생성시 'SEGMENT SPACE MANAGEMENT AUTO'옵션을 주면 적용됨.


◆ 저장공간 관련 조회 데이터 딕셔너리
  - DBA_EXTENTS
  - DBA_SEGMENTS
  - DBA_TABLESPACES
  - DBA_DATA_FILES
  - DBA_FREE_SPACE

'오라클 > Admin' 카테고리의 다른 글

[Admin] Rowid  (0) 2010.09.02
[Admin] Undo Management  (0) 2010.09.02
[Admin] Database Block  (0) 2010.09.01
[Admin] Types of Segments  (0) 2010.09.01
[Admin] Temporary Tablespace  (0) 2010.08.30
Posted by 겨울섬
,