조회 수 16384 추천 수 0 댓글 0

(10g) 자동 통계정보 수집(AUTOMATIC OPTIMIZER STATISTICS COLLECTION)
게시일: 2007. 2. 19 오후 6:49
Click to report abuse...   이 글타래에 댓글을 올리려면 클릭하십시오 댓글
제품 : ORACLE SERVER

작성날짜 : 2006-07-21

PURPOSE



이 문서는 10g의 new feature인 자동 통계정보 수집(Automatic Optimizer
Statistics Collection)에 대한 소개와 기능에 대한 자료이다.

Explanation



1. 개요

Optimizer statistics는 GATHER_STATS_JOB에 의해서 자동으로
수집된다. 이 JOB은 SYS 소유로서 OBJECT_TYPE이 JOB이다.
이 JOB은 통계정보가 없거나 stale 상태의 통계정보를 갖는 DB 내의
모든 OBJECT들에 대한 통계정보들을 수집한다.

2. 자동 통계정보 수집을 위한 설정과 방식

1) STATISTICS_LEVEL = TYPICAL | ALL

2) 통계정보들은 predefined GATHER_STATS_JOB에 의해 수집된다.

3) JOB이 수행될 때 JOB은 다음과 같은 사항들을 결정한다.

- missing 또는 stale 상태의 통계정보를 갖는 object를 결정한다.

- 좋은 통계정보를 생성하기 위해 필요한 적당한 sampling percentage.

- histogram과 histogram의 사이즈를 요구하는 적절한 column.

- 통계정보 수집에 대한 parallelism의 degree.

- 어느 object에 대한 통계정보를 수집할지에 대한 우선순위

3. GATHER_STATS_JOB에 대한 설명

이 job은 데이타베이스 생성 시점에 생성되고 스케줄러에 의해 관리된다.
GATHER_STATS_JOB 은 DBMS_STATS.GATHER_DATABASE_STATS_JOB_PROC procedure를
call함으로써 통계정보를 수집한다.

이 프로시져는 'GATHER AUTO' 옵션을 사용한 DBMS_STATS.GATHER_DATABASE_STATS
procedure와 아주 유사한 형태로 동작한다. 이것과 다른 점은
GATHER_DATABASE_STATS_JOB_PROC procedure는 통계정보를 수집해야 할
Object에 대해 우선순위를 두고 순서대로 처리한다. 즉, 가장 많이
통계정보가 update가 되어야 할 object를 가장 먼저 처리하는 것이다.
이것은 maintenance window가 close되기 전에 가장 필요한 통계정보가
먼저 수집되도록 하기 위함이다.

4. Dictionary Objects에 대한 통계정보

1) Oracle Database 10g부터 최적의 performance 결과를 얻기 위해 dictionary
table들에 대한 통계정보도 수집할 수 있다.
언제라도, DBMS_STATS.GATHER_{SCHEMA|DATABASE}_STATS procedure를 사용하여
dictionary table들에 대한 통계정보를 수집하는 것이 가능하다.
이 때 GATHER_SYS argument는 TRUE로 셋팅되어 있어야 한다.

2) DBMS_STATS.GATHER_DICTIONARY_STATS라 하는 새로운 procedure도 사용
하는 것이 가능하다. 이것을 사용하기 위해서는 ANALYZE ANY DICTIONARY
라는 새로운 system privilege가 있어야 한다.
이 권한은 만약 어떤 user가 SYSDBA 권한이 없는 경우 dictionary object와
fixed object들을 analyze할 수 있도록 한다.

3) GATHER_DATABASE_STATS라는 프로시져는 GATHER_FIXED라 불리우는 새로운
argument를 가진다. 이 값은 default로 FALSE로 셋팅된다. 즉, 기본적으로
fixed table들에 대해서는 통계정보를 생성하지 않도록 한다.
전형적인 System WorkLoad가 있는 동안에는 fixed table들에 대하여
한번만 analyze하면 충분하다.

4) GATHER_FIXED_OBJECTS_STATS라는 procedure를 사용하여 fixed table들에
대한 통계정보를 모으는 것도 가능하다. 또한 모든 fixed table들에 대하여
통계정보를 delete하는 것도 가능하고, fixed table에 통계정보를
export 또는 import하는 것도 가능하다.


Example


none

Reference Documents


<Note:266040.1>


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 Q&A Oracle관련 게시물만 Sean 2014.04.09 84911
58 TM windows에서 Opatch 진행시 oci.dll 에러 조치 1 이현정 2012.03.26 37489
57 TM audit 관련 2 이현정 2012.03.29 26593
56 TM check whether crs auto start is enable or disable 담벼락 2012.10.12 26299
55 TM 오라클 디렉토리 변경 송기성 2010.12.16 25829
54 TM 테이블과 인덱스의 관계 및 인덱스 종류 및 생성 방법. Tech1 2012.03.28 25538
53 TM (10gR2)Full UNDO tablespace Tech1 2012.04.04 23936
52 TM 과도한 CPU 및 UNDO REDO 많이 사용하는 세션 찾기 1 고구마 2010.05.19 23790
51 TM oracle client 와 database 간 상호 호환성(version) 1 담벼락 2011.01.24 23203
50 TM 테이블 생성방법 및 각종옵션 Tech1 2012.03.20 20831
49 TM Oracle Silent Install Guide 3 file 송기성 2011.03.13 20252
48 TM 11g 데이타베이스 에러수집방법 2 perfstat 2011.11.02 20159
47 TM MEMORY TARGET 1 도로시 2013.01.03 19619
46 TM 백업이 필요없는 대용량 table skip하고 export 받기 고구마 2011.06.14 18793
45 TM 11 newfeature(Upgrade) 10.2.0.5 to 11.2.0.3 1 file 윤현 2012.01.12 18388
44 TM long type column 1 담벼락 2011.10.11 17687
43 TM openvms command perfstat 2011.05.31 17534
42 TM TDE tablespace 1 윤현 2011.06.09 17302
41 TM upgrade 시 sorting 문제 담벼락 2012.03.16 16599
» TM (10g) 자동 통계정보 수집(AUTOMATIC OPTIMIZER STATISTICS COLLECTION) 담벼락 2010.12.16 16384
39 TM UPDATABLE SNAPSHOT 구축하기 고구마 2010.08.23 15507
Board Pagination Prev 1 2 3 Next
/ 3