Database

[Database] Index란 무엇인가?

Jesse 2021. 10. 22. 21:35

Index란 무엇인가?

데이터베이스에서 인덱스는 책의 맨 뒤에 있는 색인 같습니다. 정보를 찾을때 더 빠르게 찾을수 있게 도와줍니다. 만약 제가 색인 없이 책에서 "cat"이라는 단어를 찾아야 된다면, 전체 페이지를 하나 하나 훑으면서 cat이란 단어를 찾아야 됩니다.

 

쿼리문

CREATE INDEX index_name ON table_name (column_name);

이렇게 하나의 column에 대해 생성할수도 있고

CREATE INDEX index_name ON table_name (column_name1, column_name2);

이렇게 2개의 column에 대해서도 index를 생성할수 있습니다.

 

언제 사용해야 될까?

  • 정렬이 되어 있지 않은 column을 찾아야 될때
  • index는 메모리를 사용하기 때문에 검색이 빠른 작은 테이블 보다는 큰 테이블에서 사용하는게 낫다
  • UPDATE, INSERT, DELETE를 자주 사용해야 될 경우 데이터 뿐만 아니라 index도 같이 변경해야 되서 효율성을 떨어 뜨린다