사용자 도구

사이트 도구


study:oracle:datadb:2week_1:chap1

차이

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

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
study:oracle:datadb:2week_1:chap1 [2010/05/13 10:43]
newys
study:oracle:datadb:2week_1:chap1 [2010/05/13 16:48] (현재)
newys
줄 5: 줄 5:
   -   SQL과 Optimizer의 관계   -   SQL과 Optimizer의 관계
     *  SQL은 결과에 대한 요구     *  SQL은 결과에 대한 요구
-    * 옵티마이져는 없는 길을 생성해 주는 것이 아님. 이미 존재하는 길을 단지 찾아줄 뿐  \\ => 사용자가 부여한 영향 요소에 따라 논리적으로 존재하는 최적이 달라>+    * 옵티마이져는 없는 길을 생성해 주는 것이 아님. 이미 존재하는 길을 단지 찾아줄 뿐  \\ => 사용자가 부여한 영향 요소에 따라 논리적으로 존재하는 최적이 달라짐
  
  
 ==== 3.1.1 옵티마이져와 우리의 역할  ==== ==== 3.1.1 옵티마이져와 우리의 역할  ====
  
-  - 숫자 목록 관계형 데이터베이스의 출현배경 \\ : 데이터들 간에 물리적인 연결고리를 가지지 않아도 논리적인 연결고리만 있다면 원하는 데이터를 액세스 할 수 있다. \\ =>논리적인 방법만으로 데이터를 찾을 수 있는 장치가 필요+  - 관계형 데이터베이스의 출현배경 \\ : 데이터들 간에 물리적인 연결고리를 가지지 않아도 논리적인 연결고리만 있다면 원하는 데이터를 액세스 할 수 있다. \\ =>논리적인 방법만으로 데이터를 찾을 수 있는 장치가 필요
   - SQL? 요구서에 불과함. 표준언어로 채택한 것   - SQL? 요구서에 불과함. 표준언어로 채택한 것
   - 옵티마이져 ? 사용자의 요구에 따라 그 때마다 최적의 경로를 찾아 주는 역할 책임자   - 옵티마이져 ? 사용자의 요구에 따라 그 때마다 최적의 경로를 찾아 주는 역할 책임자
-  - 옵티마이져 실행계획에 영향을 주는 것들      {{:study:oracle:datadb:2week_1:1.jpg|}} +  - 옵티마이져 실행계획에 영향을 주는 것들     
   - 옵티마이져는 단지 이미 존재하는 길들 중에서 하나를 선택해 주는 역할 => 사용자의 역할이 중요   - 옵티마이져는 단지 이미 존재하는 길들 중에서 하나를 선택해 주는 역할 => 사용자의 역할이 중요
 + {{:study:oracle:datadb:2week_1:1.jpg|}} 
  
  
  
  
-==== 3.1.2. 옵티마이져의 형태 ==== 
  
-=== 규칙기반 옵티마이져 (RBO : Rule_based Optimizer) === 
-  -  인덱스 구조나 사용 연산자에 부여된 순위로써 최적경로 결정 <code> 
-① ROWID로 1로우 액세스 
-② 클러스터 조인에 의한 1로우 액세스 
-③ Unigue HASH Cluster에 의한 1로우 액세스 
-④ Unique INDEX에 의한 1로우 액세스 
-⑤ CLUSTER 조인 
-⑥ Non Unique Hash Cluster Key 
-⑦ Non Unique Cluster Key 
-⑧ Non Unique 결합 인덱스 
-⑨ Non Unique 한 컬럼 인덱스 
-⑩ 인덱스에 의한 범위처리 
-⑪ 인덱스에 의한 전체범위 처리 
-⑫ Sort Merge 조인 
-⑬ 인덱스 컬럼의 MIN, MAX처리 
-⑭ 인덱스 컬럼의 ORDER BY 
-⑮ 전체 테이블 스캔 
-</code> 
-  * 단점 
-    - 통계정보를 전혀 가지지 않음 
-    - 경우에 따라 비현실적인 처리경로 수립 
- 
-<code> 
-EX> 1,000,000 로우를 가지는 TAB1테이블과 100로우를 가지는 TAB2테이블의 로우수를 알지 못하기 때문에  
-     어느쪽이 전체 테이블 스캔 하는것이 유리한지 구별할 수 없다. 
-      
-EX> 2종류의 값만 가지고 있어 평균분포도가 50%인 컬럼 A로 구성된 인덱스와  
-    10,000종류를 가지고 있어 0.01%의 평균 분포도를 
-    가진 컬럼 B로 구성된 인덱스가 존재. A='10' AND B LIKE '123%'을 주었을때  
-    무조건 ‘=’로 사용한 컬럼A를 사용하는 것이 더 유리하다고 판단. 
-</code> 
- 
-  * 장점 
-    - 수립될 처리경로 예측가능 
-    - 사용자가 원하는 처리경로로 유도하기가 용이 
-    - 일반적인 보편타당성이 있음(신뢰성) 
  
study/oracle/datadb/2week_1/chap1.1273714995.txt.gz · 마지막으로 수정됨: 2010/05/13 10:43 저자 newys