1._SQL과_옵티마이저
2012.04.05 17:36
. 4세대 언어 : DBMS에 명령을 날릴 대도 SQL이라고 하는 구조화된 질이된어를 통해 원하는 결과 집합을 요구할뿐 그
결과집합을 얻기 위한 처리 절차를 개발자가 직접 기숙하지 않기 때문
. 옵티마이저 : 우리를 대신해 프로그래밍해주는 존재
. 실행 계획 : 옵티마이저에 의해 생성된 처리 절차를 사용자가 확인할 수 있도록 트리 구조로 표현한 것
Execution Plan
--------------------------------------------------------------------------------
0 SELECT STATEMENT Optimizer=ALL_ROWS (Cost=250 Card=367 Bytes=51K)
1 0 UNION-ALL
2 1 PX COORDINATOR
3 2 PX SEND (QC (RANDOM)) OF 'SYS.:TQ10006' (Cost=247 Card=366 Bytes=51K) (PARALLEL_TO_SERIAL) (QC (RANDOM))
4 3 HASH (GROUP BY) (Cost=247 Card=366 Bytes=51K) (PARALLEL_COMBINED_WITH_PARENT)
5 4 PX RECEIVE (Cost=247 Card=366 Bytes=51K) (PARALLEL_COMBINED_WITH_PARENT)
6 5 PX SEND (HASH) OF 'SYS.:TQ10005' (Cost=247 Card=366 Bytes=51K) (PARALLEL_TO_PARALLEL) (HASH)
7 6 HASH (GROUP BY) (Cost=247 Card=366 Bytes=51K) (PARALLEL_COMBINED_WITH_PARENT)
. 최소 비용 최적의 경로를 선택하여 사용자가 원하는 작업을 가장 효율적으로 수행할수 있는 프로시저를 자동으로
생성해주는 DBMS의 핵심기능(CBO)
. 옵티마이저의 최적화 수행단계
1. 사용자가 던진 쿼리를 위해, 후보군이 될만한 실행계획을 찾음
2. 데이터 딕셔너리에 미리 수집해 놓은 오브젝트 통계 및 시스템 통계정보를 이용해 각 실행계획의 예상비용을 산정
3. 각 실행계획의 비용을 비교해서 최소 비용을 갖는 하나를 선택
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
46 | 9._Static_vs._Dynamic_SQL | 남송휘 | 2012.05.07 | 5588 |
45 |
2._User_Call_vs._Recursive_Call
![]() | 정찬호 | 2012.05.07 | 4596 |
44 |
1._Call_통계
![]() | 정찬호 | 2012.05.07 | 4488 |
43 |
5장._데이터베이스_Call_최소화_원리
![]() | 운영자 | 2012.05.07 | 5116 |
42 | 11._Static_SQL_구현을_위한_기법들 | dasini | 2012.05.06 | 3948 |
41 |
4._커서_공유
![]() | 남송휘 | 2012.04.26 | 16512 |
40 | 6._바인드_변수의_부작용과_해법 | 시와처 | 2012.04.22 | 4812 |
39 | 5._바인드_변수의_중요성 | 시와처 | 2012.04.22 | 4505 |
38 | 8._애플리케이션_커서_캐싱 | 박영창 | 2012.04.21 | 5438 |
37 | 7._세션_커서_캐싱 | 박영창 | 2012.04.21 | 8120 |
36 |
10._V$SQL
![]() | 정찬호 | 2012.04.09 | 6805 |
35 |
9._ASH(Active_Session_History)
![]() | 정찬호 | 2012.04.09 | 6288 |
34 | 4장._라이브러리_캐시_최적화_원리 | dasini | 2012.04.08 | 2938 |
33 |
12._데이터베이스_성능_고도화_정석_해법
![]() | 남송휘 | 2012.04.08 | 4744 |
32 | 11._End-To-End_성능관리 | 남송휘 | 2012.04.08 | 3240 |
31 | 3._라이브러리_캐시_구조 | dasini | 2012.04.05 | 5383 |
30 | 2._SQL_처리과정 | dasini | 2012.04.05 | 21945 |
» | 1._SQL과_옵티마이저 | dasini | 2012.04.05 | 3824 |
28 | 5._V$SYSSTAT | AskZZang | 2012.04.03 | 4772 |
27 | 4._DBMS_XPLAN_패키지 | AskZZang | 2012.04.03 | 5773 |