인덱스
적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance
사용 가능한 인덱스 유형
다음 표에서는 SQL Server에서 사용할 수 있는 인덱스의 유형을 나열하고 추가 정보에 대한 링크를 제공합니다.
인덱스 유형 | 설명 | 추가 정보 |
---|---|---|
해시 | 해시 인덱스로 메모리 내 해시 테이블을 통해 데이터에 액세스합니다. 해시 인덱스는 버킷 수의 함수인 고정된 양의 메모리를 사용합니다. | 메모리 액세스에 최적화된 테이블의 인덱스 사용 지침 해시 인덱스 디자인 지침 |
메모리 최적화 비클러스터형 | 메모리 최적화 비클러스터형 인덱스의 경우, 메모리 사용량은 행 수와 인덱스 키 열의 크기에 따라 달라집니다. | 메모리 액세스에 최적화된 테이블의 인덱스 사용 지침 메모리 최적화 비클러스터형 인덱스 디자인 지침 |
클러스터형 | 클러스터형 인덱스는 클러스터형 인덱스 키를 기준으로 테이블 또는 뷰의 데이터 행을 순서대로 정렬하여 저장합니다. 클러스터형 인덱스는 클러스터형 인덱스 키 값에 따라 행의 빠른 검색을 지원하는 B-트리 인덱스 구조로 구현됩니다. | 클러스터형 및 비클러스터형 인덱스 설명 클러스터형 인덱스 만들기 클러스터형 인덱스 디자인 지침 |
비클러스터형 인덱스 | 비클러스터형 인덱스는 클러스터형 인덱스가 있는 테이블 또는 뷰에 정의하거나 힙에 정의할 수 있습니다. 비클러스터형 인덱스의 각 인덱스 행에는 비클러스터형 키 값과 행 로케이터가 있습니다. 이 로케이터는 클러스터형 인덱스 또는 키 값이 포함된 힙의 데이터 행을 가리킵니다. 인덱스의 행은 인덱스 키 값 순서로 저장되지만 테이블에 클러스터형 인덱스를 만들지 않는 한 데이터 행은 특정 순서로 유지되지 않습니다. | 클러스터형 및 비클러스터형 인덱스 설명 비클러스터형 인덱스 만들기 비클러스터형 인덱스 디자인 지침 |
고유한 | 고유 인덱스는 인덱스 키에 중복 값이 없으므로 테이블 또는 뷰의 모든 행이 어떤 식으로든 고유합니다. 고유성은 클러스터형 인덱스와 비클러스터형 인덱스의 속성일 수 있습니다. |
고유 인덱스 만들기 고유 인덱스 디자인 지침 |
columnstore | 메모리 내 columnstore 인덱스는 열 기반 데이터 스토리지 및 열 기반 쿼리 처리를 사용하여 데이터를 저장하고 관리합니다. Columnstore 인덱스는 주로 대량 로드 및 읽기 전용 쿼리를 수행하는 데이터 웨어하우징 워크로드에 적합합니다. columnstore 인덱스를 사용하면 기존의 행 기반 스토리지보다 최대 10배의 쿼리 성능 이익과 압축되지 않은 데이터 크기보다 최대 7배의 데이터 압축 을 얻을 수 있습니다. |
Columnstore 인덱스 가이드 Columnstore 인덱스 디자인 지침 |
포함된 열 포함 인덱스 | 키 열 외에 키가 아닌 열을 포함하도록 확장되는 비클러스터형 인덱스입니다. | 포괄 열을 사용하여 인덱스 만들기 |
계산 열의 인덱스 | 하나 이상의 다른 열 또는 특정 결정적 열의 값에서 파생되는 열의 인덱스입니다. | 계산 열의 인덱스 |
필터링됨 | 특히 데이터의 잘 정의된 하위 집합에서 선택하는 쿼리를 처리하는 데 적합한 최적화된 비클러스터형 인덱스입니다. 이 인덱스에서는 필터 조건자를 사용하여 테이블의 일부 행을 인덱싱합니다. 잘 디자인되고 필터링된 인덱스는 전체 테이블 인덱스에 비해 쿼리 성능을 개선하고, 인덱스 유지 관리 비용을 절감하며, 인덱스 storage 비용을 줄일 수 있습니다. | 필터링된 인덱스 만들기 필터링된 인덱스 디자인 지침 |
공간 | 공간 인덱스는 기하학 데이터 형식의 한 열에 있는 공간 개체(공간 데이터)에서 특정 작업을 더 효율적으로 수행할 수 있는 기능을 제공합니다. 공간 인덱스는 상대적으로 비용이 많이 드는 공간 작업을 적용해야 하는 개체 수를 줄입니다. | 공간 인덱스 개요 |
XML | xml 데이터 형식 열에 있는 XML BLOB(Binary Large Object)의 조각화된 지속형 표현입니다. | XML 인덱스(SQL Server) |
전체 텍스트 | SQL Server용 Microsoft 전체 텍스트 검색 엔진에서 작성 및 유지 관리하는 특수한 유형의 토큰 기반 인덱스입니다. 문자 문자열 데이터에서 정교한 단어 검색을 효율적으로 지원합니다. | 전체 텍스트 인덱스 채우기 |
참고 항목
SQL Server 설명서는 인덱스를 지칭할 때 B-트리라는 용어를 사용합니다. rowstore 인덱스에서 SQL Server는 B+ 트리를 구현합니다. 이는 columnstore 인덱스나 메모리 내 데이터 저장소에는 적용되지 않습니다. 자세한 내용은 SQL Server 및 Azure SQL 인덱스 아키텍처 및 디자인 가이드를 참조하세요.