SQLP

[SQLP] Selectivity & Cardinarity

songsua 2024. 7. 21. 23:42

1. 선택도 (Selectivity)★

전체 레코드 중에서 조건절에 의해 선택될 것으로 예상되는 레코드의 비율(%)
선택도에 따라서 옵티마이저 실행계획을 결정한다.
선택도가 1에 가까울수록 해당 컬럼은 행 고유의 값에 가깝다.


선택도 = 카디널리티 / 총 레코드 수
선택도는 데이터베이스에서 '인덱스를 어느 컬럼에 생성할지' 에 대한 정보를 알려준다.
컬럼의 선택도가 낮을수록 인덱스의 후보가 되기 좋다.

2.카디널리티(Cardinarity)

특정 데이터 집합의 Unique한 값의 개수이다.
카디널리티는 join,정렬,필터의 비용을 결정한다.

카디널리티 = 총 row의 수 / NDV

 

3.Plan Generator 

실행계획을 만들때 실행되는 역할
여러가지 실행계획을 생성하고, 비용을 산출한다.

 

4. Row source Generator

plan generator에서 실행계획을 작성 한뒤, 실행계획을 실행 가능한 코드, 형태로 포맷팅하는 작업을 하는 곳이다.

'SQLP' 카테고리의 다른 글

[SQLP] 인덱스 (INDEX)  (0) 2024.07.27
[SQLP] Hint 실습  (0) 2024.07.27
[SQLP] Hint  (1) 2024.07.26
[SQLP] 실행 계획 (Execution plan)  (0) 2024.07.22
[SQLP] 옵티마이저  (1) 2024.07.21