본문 바로가기
  • 저희는 평생 개발할 운명이걸랑요
Tech.log/데이터베이스

[Primary index vs Secondary index vs Composite index]

by SpaciousKitchen 2021. 5. 21.

Single Level Index

  • 정렬되어 있는 상태이기 때문에 이진 탐색에 좋다.
  • where key = 1003 인덱스가 걸린 컬럼의 where문 =(equality)(equality search)이 빠르다
  • 인덱스는  primary key에 걸면 Primary Index(기본 인덱스) 다른 컬럼에 걸면 Secondary Index(보조 인덱스) 이다.

 

 

Primary index 와 Secondary의 공통점

 

  • 테이블과 그에 대응되는 인덱스 (기본 또는 보조 인덱스)는 서로 분리된 구조로 존재한다.
  • 일반적으로 <인덱스 키, 행 주소> 형태이다.

 

 

Primary index 와 Secondary의 차이점

 

Primary index 

 

  • 기본 인덱스는 데이터 블록 안의 행들의 조직과 저장소에 영향을 미친다.
  • 데이터 블록들은 실제 행 데이터를 저장하는 디스크 블록들이다.
  • 각각의 데이터 블록은 인덱스 키 당 정렬된 순서에서의 행들을 포함한다
  • 각 파일을 구별할 수 있는 유일한 키이다.
  • 따라서 직접 접근이 가능하다.

Primary index  정렬 방식

보조 인덱스 (secondary index)

  • 보조 인덱스는 데이터 블록에서 실제로 조직화된 행들에 전혀 영향을 미치지 않는다.
  • 따라서 탐색이 매팅 함수를 사용하여 접근해야한다
  • 데이터 검색, 추가, 삭제가 일어날 때 더 많은 시간이 소모되며, 좀 더 많은 메모리가 필요하다

보조 인덱스 (secondary index) 정렬 방식

 

 

Composite index

결합 인덱스란 인덱스를 생성할 때 두 개 이상의 컬럼을 합쳐서 인덱스

ex)주로 SQL 문장에서 WHERE절의 조건 컬럼이 2개 이상 AND로 연결되어 함께 사용되는  성능에 좋다.

 

'Tech.log > 데이터베이스' 카테고리의 다른 글

[Statement VS Prepared Statement]  (0) 2021.05.22
[트랜잭션이란?]  (0) 2021.05.22
[정규화]  (0) 2021.05.21
[데이터 베이스]  (0) 2021.05.21
[ DB ] 관계 데이터 모델  (3) 2021.04.24

댓글