: 대량의 데이터에 INDEX를 설정하여 데이터 접근 시간을 줄여줄 수 있다.
Page
: 데이터를 저장하는 기본 단위(8kb)페이지 종류
- 데이터 페이지 : 데이터를 저장하기 위한 페이지
- 인덱스 페이지 : 인덱스를 저장하는 페이지
Extent
: 테이블이나 인덱스가 저장되는 기본단위, 8개의 페이지가 모여서 하나의Extent
가 된다.
: 인덱스는 B-tree구조로 구성된다.
: 원하는 컬럼에 Clustered index
를 만들게 되면 물리적으로 데이터를 정렬한다.(DEFAULT: ASC)
Clustered index
만 만들 수 있다.Clustered index
가 만들어진다. (기본키에는 Non clustered index
도 만들 수 도 있다.):원하는 컬럼에 Non clustered index
를 만들게 되면, 데이터페이지의 위치정보를 인덱스로 구성하게된다.(물리적의 데이터의 위치를 바꾸지 않는다)
Non clustered index
는 여러개가 가능Clustered index
보다 검색 속도가 느리다.CREATE TABLE tbl01(
aa INT PRIMARY KEY,
bb INT,
cc INT
);
EXEC SP_HELPINDEX tbl01;
인덱스에 대한 정보를 확인하기 위한 프로시저는
SP_HELPINDEX
이다.
CREATE TABLE tbl02(
aa INT PRIMARY KEY,
bb INT UNIQUE,
cc INT UNIQUE,
dd INT
);
EXEC SP_HELPINDEX tbl02;
UNIQUE 제약 조건으로 설정하게 되면
Non clustered index
자동으로 생성
CREATE TABLE tbl03(
aa INT PRIMARY KEY NONCLUSTERED,
bb INT UNIQUE,
cc INT UNIQUE,
dd INT
);
EXEC SP_HELPINDEX tbl03;
PK
에도Non clustered index
를 지정할 수 있다.
강의: ms sql 2014 제대로 배우기 2