Index란?
- 데이터베이스(DB) 테이블에 대한 검색 속도를 향상시켜주는 자료구조
- 인덱스를 생성하고자 하는 컬럼의 데이터를 정렬한 후 별도의 메모리 공간에 데이터의 물리적 주소와 함께 저장
장점
- 테이블을 검색하는 속도와 성능이 향상 (정렬된 형태의 데이터를 가지고 있음)
- 시스템의 전반적인 부하를 줄일 수 있음
단점
- 인덱스를 관리하기 위한 추가 작업이 필요
- 추가 저장 공간 필요
- 잘못 사용하거나 무분별하게 사용할 경우에는 오히려 검색 성능이 저하
인덱스를 사용하면 좋은 경우
- 규모가 큰 테이블
- INSERT, UPDATE, DELETE 작업이 자주 발생하지 않는 컬럼
- WHERE나 ORDER BY, JOIN등이 자주 사용되는 컬럼
- 데이터의 중복도가 낮은 컬럼
728x90
'ssung_항해일지 > CS 지식 및 기술면접' 카테고리의 다른 글
제네릭 (generic) (0) | 2023.05.10 |
---|---|
JPA 영속성 컨텍스트 (0) | 2023.05.10 |
DI (Dependency Injection) (0) | 2023.05.09 |
REST API (0) | 2023.05.08 |
객체지향 프로그래밍(OOP) (0) | 2023.05.08 |