study
[SQL] Chapter 05. Index
yz
2022. 6. 17. 14:07
/*
1. 인덱스 (INDEX)
- 지정한 컬럼들을 기준으로 메모리 영역에 일종의 목차를 생성하는 것
- 테이블에 대한 검색 속도를 높여주는 기능
- 효율적인 인덱스 컬럼 설정 방법
. 중복되는 데이터가 최대한 적은 컬럼을 인덱스로 설정하는 것이 유리
ex) 남/여 구분을 관리하는 컬럼보다는 주민등록번호 데이터를 관리하는 컬럼에 인덱스 설정이 유리
. WHERE 절에 자주 사용되는 컬럼을 INDEX 로 설정하는 것이 유리
. ORDER BY 구문에 자주 사용되는 컬럼을 INDEX 로 설정하는 것이 유리
. 조인문의 ON, AND 구문에 자주 사용되는 컬럼을 INDEX 설정 유리
- 클러스터형 인덱스 (목차)
. 테이블당 한개만 생성이 가능
. 행 데이터를 지정한 열에 맞추어 자동으로 정렬
. 테이블의 데이터 자체가 순서대로 정렬됨
. 설정 시 테이블의 데이터를 전부 정렬하기 때문에 많은 양의 데이터가 존재하는 테이블에서 수정 시 시스템 부하가 발생
. 비클러스터형 인덱스보다 검색 속도가 빠르나 입력/수정/삭제가 느림
- 비클러스터형 인덱스 (찾아보기)
. 테이블당 여러 개 생성이 가능
. 테이블의 데이터는 그냥 둔 상태로 별도의 인덱스 페이지를 생성하여 관리
. 클러스터형 인덱스보다는 느리지만 입력/수정/삭제가 빠름
. 너무 많이 설정하면 오히려 성능을 저하
LIST