[CMPT 454] Week 7_3

June·2021년 3월 1일
0

CMPT 454

목록 보기
18/33

General Selection Conditions

An Example

clustered에서
1000 * 0.1인 이유는 10%가 matching term이기 때문이다.

unclustered에서는
한 rid를 follow해도 1개의 record만 얻을 수 있다. 10*0.1인 이유는 전체 data entries의 개수가 10개이기 때문이다. 그 중 10%가 A=6 조건을 만족한다. 그 후 각 data entry에 대해 data record를 가져와야하는데, 1000 pages for data records가 있고 100 records per page가 있다. 그중 10%가 조건을 만족한다.

An Example

A와 B 둘다 sorted된 상태이므로 빨간색으로 색칠된 곳만 보면된다.

Clustered에서 0.1이 두번 곱해진 것을 보자. 각 조건마다 10%만 만족하기 때문이다.

unclustered에서 I/O for data records에서 1000*100은 total number of record이다. 그리고 각 record마다 1 I/O가 든다.

An Example

여기에서 A와 C를 기준으로 정렬되어있지는 않다.

Cluster에서 option1은 A=6 하나만 사용하는 것이다. option2는 C>2조건을 데이터를 가져오기 전에 미리 체크하는 것이다. 따라서 두번 조건을 적용시킬 수 있다.

unclustered에서 option1은 불가능하다. 왜냐하면 이미 정렬된 것에 의존하고 있기 때문에.

An Example

option1은 A>=6만 사용하는 것이다

Option2는 data entries를 읽고, data records는 거르는 방식이다.

0개의 댓글