728x90
반응형
Index 란?
- DB 테이블의 검색속도를 향상시키키 위한 자료구조이다.
- 결국엔 하나의 테이블이다. - 책에 표지순서가 없으면 A에 대한내용이 나올때까지 다 찾아봐야 한다.
- 표지순서가 있다면 A를 금방 찾을수 있다.
클러스터(Cluster)
- 갑자기 클러스터가 나와서 뭐지? 싶었다.
- 인덱스 개념과 이어지기 때문에 알고 있는게 좋을것 같다. - 클러스터는 다중데이터베이스와 다중테이블이 조인되는것을 말한다.
- 클러스터키 값을 공유하는 테이블들의 레코드는 근처의 DB 블록에 함께 저장된다.
- 클러스터는 B-Tree 인덱스 또는 해쉬 테이블로 키화된다
장점
- 클러스터키 값을 공유하는 테이블들의 레코드는 근처의 DB 블록에 함께 저장된다.
- 디스크 I/O 를 줄여준다,. - Join 이 발생할 경우 처리시간이 단축된다.
- 클러스터키 값을 공유한다
- 한번만 저장이 된다.
비클러스터화된 인덱스
- 데이터는 임의의 순서로 존재하지만
- 논리적 순서는 인덱스에 의해 지정된다
- 데이터 열은 인덱스화된 컬럼 또는 표현의 값과는 상관없이 테이블 전체에 퍼져있다
클러스터화된 인덱스
- 클러스터링은 인덱스를 매칭시키기 위해서 데이터 블록을 어떤 분명한 순서로 바꾼다
- 이것은 열 데이터가 순서대로 저장되는 것으로 이어진다
- 클러스터화된 인덱스는 전반적인 불러오기 속도를 엄청나게 향상시킨다
Index의 종류
- Bitmap Index:
- Bit 를 이용하여 컬럼 값을 저장한다.
- ROWID 를 자동으로 생성한다. - Dense Index:
- 데이터 파일 내의 모든 레코드에 대한 키와 포인터 쌍을 가진파일이다.
- 중복키를 가진 클러스터스 인덱스에서 첫번째 레코드를 키로 가지고 있는다. - Sparse Index:
- 데이터 파일 내의 모든 블록에 대한 키와 포인터 쌍을 가진 파일이다.
- 키는 포인터로 정렬된 테이터 파일 내의 블록을 가르킨다.
- 클러스터드 인덱스에서 블록 내의 가장 빈도가 낮은 검색 키를 가르킨다. - Reverse Index:
키값을 뒤집어서 인덱스안에 저장한다.
Index의 장단점
장점
- 조회속도 및 성능향상
- 시스템 부하를 줄일수 있다.
단점
- Index를 따로 관리해야 되기때문에 추가적인 공간이 필요하다
- 인덱스를 관리하기 위한 추가작업이 필요하다.
- 인덱스를 잘못 사용할 경우 성능이 떨어진다.
728x90
반응형
'DataBase > DB 기초' 카테고리의 다른 글
[DB] Index 기본 (0) | 2023.02.09 |
---|---|
[DB] NoSQL (0) | 2021.08.19 |
[DB] GROUP BY (0) | 2021.08.05 |
[DB] Join (0) | 2021.08.05 |
[DB] 트랜잭션 (0) | 2021.07.21 |
댓글