데이터베이스 성능
데이터베이스 성능은 일반적으로 데이터베이스 데이터의 검색 시간으로 판단됩니다.
이 경우 인덱스는 검색 시간을 줄이기 위해 사용됩니다.
인덱스와 B-TREES
인덱스(INDEX): 데이터를 쉽고 빠르게 찾기 위한 데이터 구조. B. 책 색인 또는 사전.
- 삽입 및 삭제는 데이터베이스 작업 중에 발생하지만 노드에 순차적으로 쌓이지 않습니다.
그래서 노드가 비었을 때 노드를 채워 빈 공간이 없도록 하고 노드 구조로 데이터를 찾는 구조를 가지고 있습니다. - B-TREE 구조로 저장할 경우 검색 시간은 비선형 로그 함수를 갖지만 일정 시점 이후에는 검색 시간이 더 이상 증가하지 않는다는 장점이 있다.
인덱스 생성
- 인덱스는 WHERE 절에서 일반적으로 사용되는 속성이어야 합니다.
- 인덱스는 조인에서 일반적으로 사용되는 속성이어야 합니다.
- 단일 테이블에 인덱스가 많으면 속도가 느려질 수 있습니다(테이블당 4-5개 권장).
- 속성을 처리할 때 사용되지 않습니다.
- 속성의 선택도가 낮을 때 유리함(속성의 모든 값이 다를 때)
- 기본 문법
CREATE (REVERSE)┃(UNIQUE) INDEX 인덱스이름)
ON 테이블이름 (컬럼 (ASC┃DESC) ({, 컬럼 (ASC | DESC)} …))(;)