Skip to content

Latest commit

 

History

History
26 lines (20 loc) · 1.25 KB

index.md

File metadata and controls

26 lines (20 loc) · 1.25 KB

📌 인덱스(index)

인덱스

  • 인덱스(index)는 데이터베이스의 테이블에 대한 검색 속도를 향상시켜주는 자료구조
  • 테이블의 특정 컬럼(Column)에 인덱스를 생성하면 해당 컬럼의 데이터를 정렬한 후 별도의 메모리 공간에 데이터의 물리적 주소와 함께 저장된다.
  • 컬럼의 값과 물리적 주소를 (key, value) 쌍으로 저장한다.

인덱스의 장단점

  • 장점

    • 테이블을 검색하는 속도와 성능이 향상
    • 기존에 where문으로 특정 조건의 데이터를 찾기 위해서 테이블의 전체를 조건과 비교해야 하는 풀 테이블 스캔 작업이 필요
    • 인덱스를 이용하면 데이터들이 정렬되어 있기 때문에 조건에 맞는 데이터를 빠르게 찾을 수 있음
    • ORDER BY 문이나 min/max 같은 경우도 이미 정렬되어 있기 때문에 빠르게 수행할 수 있음
  • 단점

    • 인덱스를 관리하기 위한 추가 작업이 필요
    • 추가 저장 공간 필요
    • 잘못 사용하는 경우 오히려 검색 성능 저하

인덱스의 자료 구조

해시테이블

  • 해시테이블은 key와 value를 한 쌍으로 데이터를 저장하는 자료구조