(Database : Basic-15) INDEX

Posted by : at

Category : Database


  • 예를들어 게임유저의 id를 데이터베이스에서 검색할때 어떻게 해야할까?
  • 모든 유저의 데이터를 순차적으로 돌아야하나?
  • index(색인)라는것을 만들어 검색의 속도를 높인다.

  • index는 두 가지 종류가 있다.
    • clustered index : 대부분의 primary key, 테이블당 1개만 존재하며 빠르고 좋음
      • 사전에서 알파벳순서대로 정렬이 되어있는 개념이라 생각하면 된다.
      • db는 clustered index를 기준으로 데이터를 정렬해 둔다
    • non-clustered index : clustered index를 제외한 나머지 index, 별 다른 제한 없음

정리하자면

  • index : 데이터를 빨리 찾을 수 있게 보조해주는 고마운 친구
    • primary key(clustered index) : 물리적인 데이터 저장순서를 정리(사전을 정리한 개념)
    • 일반 index(non-clustered index) : 따로 관리하는 일종의 lookup 테이블(책에서 나오는 색인)
CREATE INDEX i1 ON accounts(accountName)

CREATE UNIQUE INDEX i2 ON accounts(accountName)

DROP INDEX accounts.i1

About Taehyung Kim

안녕하세요? 8년차 현업 C++ 개발자 김태형이라고 합니다. 😁 C/C++을 사랑하며 다양한 사람과의 협업을 즐깁니다. ☕ 꾸준한 자기개발을 미덕이라 생각하며 노력중이며, 제가 얻은 지식을 홈페이지에 정리 중입니다. 좀 더 상세한 제 이력서 혹은 Private 프로젝트 접근 권한을 원하신다면 메일주세요. 😎

Star
Useful Links