우리가 데이터베이스에서 특정 데이터를 찾을 때 데이터베이스 내의 모든 데이터를 조회하면서 찾으면 너무 오래 걸리니 데이터들을 특정 조건에 맞게 정렬해 놓은 자료구조를 인덱스라고 합니다.

인덱스란

인덱스의 사전적 정의는 색인이며 어떤 내용에 대해 빨리 찾아보기 위해 먼저 보는 것입니다.

예시로는 책에서의 목차라고 보시면 됩니다.

보디빌딩 백과의 목차

KakaoTalk_20230727_001757186.jpg

책에서 벤치프레스를 보고 싶은데 한페이지 한페이지씩 보면서 찾으면 너무 오래 걸리니 목차를 보고 찾아 가는게 훨씬 빠릅니다.

가슴 → 가슴 운동 → 벤치 프레스 328p

위와 같이 찾고자 하는 데이터가 특정 조건에 맞게 정렬되어 있고 데이터 각각의 위치도 저장되어 있는걸 인덱스라고 합니다.

인덱스의 특징

최신 정렬을 유지한다: 인덱스의 역할을 하기 위해서 데이터의 생성, 수정, 삭제를 반영해서 최신의 상태를 유지해야 함.

공간을 차지한다: 목차때문에 책이 더 두꺼워 지듯이 데이터베이스에서 공간을 차지하기에

무분별하게 생성하면 성능 저하를 일으킨다.