////
Search
Duplicate

인덱스의 필요성 - 지명

인덱스란?

DBMS에서 데이터 검색 속도를 높이기 위해 사용하는 데이터 구조
책의 색인과 유사하게, 데이터베이스의 특정 정보를 빠르게 찾을 수 있도록 돕는다.

인덱스의 종류

기본 인덱스 (Primary Index)
테이블의 기본 키(Primary Key)에 자동으로 생성되는 인덱스
보조 인덱스 (Secondary Index)
기본 키가 아닌 다른 컬럼에 생성되는 인덱스
여러 개를 생성할 수 있다.
유니크 인덱스(Unique Index)
인덱스의 모든 값이 고유해야 하는 경우 사용한다.
중복 값을 허용하지 않는다.
풀 텍스트 인덱스(Full Text Index)
텍스트 컨텐츠 검색을 위해 사용
텍스트 내에서 단어의 위치를 빠르게 찾을 수 있다.
복합 인덱스 (Composite Index)
두 개 이상의 컬럼을 결합하여 생성된 인덱스
복잡한 쿼리의 성능을 향상시키는데 유용하다.

인덱스의 필요성

1.
검색 속도 향상
a.
인덱스를 사용하면 데이터베이스 테이블의 전체 검색 없이도 필요한 데이터를 빠르게 찾을 수 있다.
b.
따라서 대용량 데이터 처리에 있어 중요한 요소이다.
2.
데이터베이스 효율성 증가
a.
인덱스를 통해 데이터 검색 시간이 단축되므로, 데이터베이스 시스템의 전반적인 효율성이 증가한다.
b.
리소스 사용을 최적화하여 처리량을 높일 수 있다.
3.
쿼리 최적화
a.
인덱스는 쿼리의 실행 시간을 단축시켜, 복잡한 쿼리나 조인이 많은 쿼리의 성능을 개선한다.
4.
정렬 및 그룹화 작업 향상
a.
인덱스는 데이터의 정렬 및 그룹화 작업을 보다 효율적으로 만든다.
b.
이미 정렬된 상태의 인덱스를 활용함으로써 작업의 속도를 향상시킨다.

인덱스 사용 시 고려할 점

인덱스의 오버헤드
인덱스는 데이터베이스의 성능을 향상시키지만, 추가적인 저장 공간을 필요로 하고, 데이터 변경 작업(삽입, 삭제, 수정) 시 오버헤드를 발생시킨다. 따라서 신중하게 생성하고 관리해야 한다.
오버헤드
적절한 인덱스 선택
모든 컬럼에 인덱스를 생성하는 것이 아니라, 검색이 자주 이루어지는 컬럼 위주로 인덱스를 구성해야 한다.
인덱스 자료구조의 종류(B-트리, 해시, 전문 검색 등)에 따라 사용 목적에 맞게 선택하는 것이 중요하다.