커버링 인덱스(Covering index) & 복합 인덱스 Prac
Test_1
복합인덱스는 카디널리티가 낮은 순으로 인덱스 생성
커버링 인덱스 적용 X
select *
from book
where title = '가나'
group by category, babyCategory, title;
3회 test 평균 = 1m 24s...
Test_2
복합인덱스는 카디널리티가 낮은 순으로 인덱스 생성
커버링 인덱스 적용 O
select category, babyCategory, title
from book
where title = '가나'
group by category, babyCategory, title;
3회 test 평균 = 24s...
Test_1에 비해 검색 성능 약 3.3배 향상
Test_3
복합인덱스를 카디널리티가 높은 순으로 인덱스 생성
커버링 인덱스 적용 O
select title, babyCategory, category
from book
where title = '가나'
group by title, babyCategory, category;
3회 test 평균 = 약83ms
Test_2에 비해 검색 성능 약 290배 향상
Test_4
복합인덱스 = 카디널리티 높은 순
커버링 인덱스 적용 O
조건을 등호(=)가 아닌 like 사용
select title, babyCategory, category
from book
where title like '가나'
group by title, babyCategory, category;
3회 test 평균 = 약159ms
Test_3에 비해 검색성능 약 2배 저하
결론
복합인덱스 사용 시에는 카디널리티가 높은 순에서 낮은 순으로 인덱스를 생성해주는 것이 좋다
커버링 인덱스의 사용 시에는 조건에 like 사용보다는 등호(=)를 사용하는 것이 성능에 더 좋다
아직까지 커버링 인덱스의 동작원리와 성능 향상에 대한 지식이 부족한 것 같다
인덱스에 관련해 이론 공부를 더 해야겠다
728x90
'ssung_항해일지 > 항해99_실전 프로젝트' 카테고리의 다른 글
실전 프로젝트 - 20일차 (0) | 2023.03.30 |
---|---|
실전 프로젝트 - 18일차 (0) | 2023.03.28 |
실전 프로젝트 - 15일차 (0) | 2023.03.24 |
실전 프로젝트 - 14일차 (0) | 2023.03.24 |
실전 프로젝트 - 13일차 (0) | 2023.03.22 |