사용자 도구

사이트 도구


dbms:oracle:concept:highwatermark

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
dbms:oracle:concept:highwatermark [2008/02/14 01:11]
starlits
dbms:oracle:concept:highwatermark [2008/02/14 02:16] (현재)
starlits
줄 1: 줄 1:
 ====== Oracle HWM(High Water Mark) ====== ====== Oracle HWM(High Water Mark) ======
 +
 +
 +
 +
  
 ===== HWM(High Water Mark)란? ===== ===== HWM(High Water Mark)란? =====
-  - HWM(High Water Mark)란 저장공간을 갖는 세그먼트 영역에서 사용한 적이 있는 Block과 사용한 적이 없는 Block 의 경계점을 의미한다.+  - HWM(High Water Mark)란 저장공간을 갖는 세그먼트 영역에서 사용한 적이 있는 Block과 사용한 적이 없는 Block 의 경계점을 의미한다. \\ Block은 위에서 부터 채워진다. 
 +  - 데이타파일은 HWM을 가지지 않으며, 세그먼트만이 HWM를 가진다. 
 + 
 +{{dbms:oracle:concept:highwatermark.jpg|}}
  
 ===== 특성 ===== ===== 특성 =====
줄 11: 줄 18:
   - Table의 Full Scan량과 동일하다.   - Table의 Full Scan량과 동일하다.
   - **USER_TABLES.AVG_SPACE**의 기준이 된다.   - **USER_TABLES.AVG_SPACE**의 기준이 된다.
 +
 +
 +
  
 ===== 관련 Data Dictionary ===== ===== 관련 Data Dictionary =====
  
-^ USER_TABLES.BLOCKS | HWM와 같은 값으로 단위는 block 이다. | +^ USER_TABLES.BLOCKS | HWM와 같은 값으로 단위는 block 이다. \\ segment에 의해 사용된 적이 있는 block 수 
-^ USER_TABLES.EMPTY_BLOCKS | 할당된 블록 중에서 HWM 위에 미사용으로 남아있는 공간의 블록 수. |+^ USER_TABLES.EMPTY_BLOCKS | 할당된 블록 중에서 HWM 위에 미사용으로 남아있는 공간의 블록 수. \\ HWM 위의 block |
 ^ USER_TABLES.AVG_SPACE | 한 블록당 평균 FREE SPACE SIZE. \\ 단위는 Byte 이다. \\ Header Block을 제외한 HWM 안에 있는 Block들에 대해서 평균을 구하므로 오차가 있을 가능성이 많다. | ^ USER_TABLES.AVG_SPACE | 한 블록당 평균 FREE SPACE SIZE. \\ 단위는 Byte 이다. \\ Header Block을 제외한 HWM 안에 있는 Block들에 대해서 평균을 구하므로 오차가 있을 가능성이 많다. |
  
-^ 테이블 사이즈 계산 | 테이블 사이즈 = (blocks + empty_block + 1) = 사용블록 + 비어있는블록 + segment head block |+^ 테이블 사이즈 계산 | 테이블 사이즈 = (blocks + empty_blocks + 1) = 사용블록 + 비어있는블록 + segment head block(1) |
  
 +===== HWM 측정방법 =====
 +  - 특정테이블의 HWM를 알기 위해서는 **ANALYZE TABLE** 명령을 수행하여 통계정보를 수집한다. \\ <code sql> ANALYZE TABLE <tablename> ESTIMATE/COMPUTE STATISTICS; </code>
 +  - 수집한 통계정보를 가지고 HWM를 측정한다. <code sql>
 +SELECT blocks, empty_blocks, num_rows
 +FROM   user_tables
 +WHERE table_name = <tablename>;
 +</code>
 +  - 레코드를 삭제하는 것은 HWM의 위치를 아래로 옮기지 않는다. \\ 그러므로, 레코드를 삭제하는 것은 EMPTY_BLOCKS 의 수치를 늘리지 않는다.
  
 ===== TUNING ===== ===== TUNING =====
dbms/oracle/concept/highwatermark.1202919094.txt.gz · 마지막으로 수정됨: 2008/02/14 01:11 저자 starlits