반응형
인덱스는 데이터 조회(SELECT) 시 빠르게 접근하도록 도와주는 역할을 합니다.
인덱스의 존재 유무에 상관없이 데이터 조회의 결과는 동일하지만, 조회 속도를 향상할 수 있습니다.
책에서 목차가 인덱스에 해당한다고 생각하면 됩니다.
책의 목차를 통해 책에서 원하는 페이지를 빠르게 찾을 수 있습니다.
인덱스를 잘 사용하면 효과적이지만, 반대로 잘못 설계한다면 성능을 떨어뜨릴 수도 있습니다.
예를 들어, 동일한 데이터가 많이 존재하며 분산되어 있는 경우, 데이터 조회 시 인덱스 테이블에서 검색을 하는 것이 성능이 더 느릴 수도 있습니다.
또한, 데이터의 변경 작업이 자주 일어날 경우, 인덱스를 사용하는 것이 성능을 떨어뜨릴 수도 있습니다.
인덱스는 처음 생성하는데 많은 시간이 소요될 수 있습니다.
인덱스를 저장하기 위한 공간이 필요합니다. 보통 데이터베이스의 10%가 필요합니다.
인덱스는 크게 클러스터형 인덱스(Clustered Index)와 보조 인덱스(Secondary Index)로 나뉩니다.
클러스터형 인덱스(Clustered Index)
- 테이블당 한 개만 생성이 가능합니다.
- 데이터를 인덱스로 지정한 필드에 맞춰서 자동 정렬합니다.
- 기본 키(Primary Key)로 지정한 필드에 대해 클러스터형 인덱스가 자동으로 생성됩니다.
- 인덱스 테이블의 key_name 필드가 PRIMARY로 생성됩니다.
- 예시) 영어사전
보조 인덱스(Secondary Index)
- 테이블당 여러 개를 생성할 수 있습니다.
- Unique 속성으로 지정한 필드에 대해 보조 인덱스가 자동으로 생성됩니다.
- 인덱스 테이블의 key_name 필드가 필드 이름으로 생성됩니다.
- 예시) 책의 목차
반응형
'IT 지식 > 데이터베이스(DB Database)' 카테고리의 다른 글
H2 Database Table 삭제 (0) | 2022.05.12 |
---|---|
[DB] Database 요약 & 정리 DDL SQL (0) | 2021.03.20 |
[DB] Database 요약 & 정리 DDL, DML, DCL (0) | 2021.03.20 |
[DB] Database 요약 & 정리 Additional Relational Data Model (0) | 2021.03.11 |
[DB] Database 요약 & 정리 Relational Algebra (0) | 2021.03.10 |