
[데이터베이스] 인덱스를 타지 않고 풀스캔(Full Scan)을 하는 경우에 대해서 알아보자.
카테고리 없음
2019. 5. 15. 23:53
인덱스란 무엇인가? 인덱스란 아래 그림처럼 책의 목차라고 보면된다. 책에서 어떤 부분을 보고 싶을 때 목차가 없으면 어떠한가? 책의 모든 부분을 펼쳐보면서 내가 원하는 부분을 찾아야한다. 그런데 만약 목차가 있다면 목차만 보고 내가 보기 원하는 부분을 빠르게 찾을 수 있을 것이다. 데이터베이스 돌아와서 이야기하면 테이블은 책이고, 인덱스는 책의 목차인 셈이다. 그럼 인덱스를 무조건 생성하는 것이 좋은가? 결론 부터 말하자면 '아니오'이다. 인덱스는 물리적 디스크에 저장이 되기 때문에 컴퓨터의 용량을 차지한다. 또한 '삽입/수정/삭제'시에 인덱스를 생성해야 하기에 생성하지 않는 것보다 느려진다. 결국 인덱스는 삽입 / 수정 / 삭제에서 성능감수를 하고 조회에서 높은속도로 데이터를 조회하기 위한 일종의 '트..