[DB] chapter 10 인덱스

버버니야·2022년 3월 24일
0

Section 1 인덱스의 개요

인덱스의 개요

인덱스는 데이터베이스 성능에 아주 중요한 영향을 미치 때문에 없어서는 안 될 중요한 개체이다.
인덱스를 사용해 데이터베이스 튜닝 시 가장 큰 효과를 볼 수 있다. 한편 인덱스를 적절히 사용하면 시스템의 성능이 향상되지만 그렇지 않으면 오히려 성능이 떨어지기도 한다.

인덱스의 문제점

인덱스는 단점도 있기 때문에 효율적으로 사용하는 것이 간단하지만은 않다.
필요 없는 인덱스를 만드는 바람에 데이터베이스가 차지하는 공간만 늘어나고, 인덱스를 이용하여 데이터를 찾는 것이 전체 테이블을 찾아보는 것보다 훨씬 느린 경우가 있다.

인덱스의 장단점

인덱스의 장점

  • 검색 속도가 매우 빨라진다.
  • 쿼리의 부하가 줄어들어 결국 시스템 전체의 성능이 향상된다.

인덱스의 단점

  • 인덱스를 저장할 공간이 필요하다. (대략 데이터베이스 크기의 10퍼)
  • 처음 인덱스를 생성하는 데 많은 시간이 소요
  • 데이터의 변경 작업이 자주 일어날 경우 오히려 성능이 나빠질 수 있다.

인덱스를 잘 사용하면 검색 속도가 월등히 향상되고 시스템 성능이 좋아지지만 잘못 사용하면 더 나쁜 결과를 초래할 수도 있다.

Section 2 인덱스의 종류와 자동 생성

1. 인덱스의 종류

MySQL에서 사용하는 인덱스에는 클러스터형 인덱스와 보조 인덱스가 있다.

클러스터형 인덱스 - 영어사전과 비슷
보조 인덱스 - 찾아보기가 있는 책과 비슷

profile
안녕하세요

0개의 댓글