Index

  • Primary Key 설정하면 자동으로 Index 생성
  • Unique 설정하면 자동으로 Index 생성
  • Index 테이블에 접근할 때 효율성적으로 접근하기 위해 B-Tree(Balanced Tree)를 활용

  • 임의로 Index 테이블을 만들때는 WHERE 절에 많이 접근 되는 컬럼을 생성
    • Index 테이블을 사용하지 않고 scan 할때는 Table Scan
    • SELECT * FROM tab;은 Index Scan (전체 데이터를 가져와야 할 때)

B-Tree (Balanced Tree)

  • Index Table에서 효율적으로 접근하기 위해 사용되는 방법

  • 트리 구조를 활용함

  • O(logN)의 성능을 가짐

  • root node를 제외하고 항상 최소 2개 이상의 자식 노드를 가짐

  • Leaf Node들은 같은 Level에 있어야함

  • Leaf Node는 최소 [M/2]-1개 의 key를 가지고 잇어야함

  • 운영중인 DB로는 Index를 생성하지 않음

    • 과부하로 시스템의 문제가 생길 수 있기 때문