와이즈 토토B-Tree, HASH, GIST, SP-GIST, GIN, BRIN 및 EXTENSION을 제공합니다.사설 토토 PostgreSQL : 문서 : 10 : F.5. 꽃. 각 인덱스 유형은 다른 유형의 쿼리에 가장 적합한 다른 알고리즘을 사용합니다. 기본적으로색인 생성
명령은 가장 일반적인 상황에 맞는 b- 트리 색인을 생성합니다.
B- 트리는 일부 순서로 정렬 할 수있는 데이터의 평등과 범위 쿼리를 처리 할 수 있습니다. 특히와이즈 토토쿼리 플래너는 인덱스 된 열이 이러한 연산자 중 하나를 사용하여 비교에 관여 할 때마다 B-Tree 인덱스 사용을 고려합니다.
< |
<= |
= |
= |
|
|사이
andin
, B-Tree Index 검색으로도 구현할 수도 있습니다. 또한, Ais null
또는인덱스 열의 조건은 B- 트리 색인과 함께 사용할 수 있습니다.
Optimizer는 패턴 일치 연산자와 관련된 쿼리에 B- 트리 색인을 사용할 수도 있습니다Like
and~
if패턴은 상수이며 문자열의 시작 부분에 고정됩니다 - 예를 들어col like 'foo%'
또는col ~ '^foo'
하지만Col Like '%bar'
. 그러나 데이터베이스가 C 로케일을 사용하지 않으면 패턴 매칭 쿼리의 인덱싱을 지원하기 위해 특수 연산자 클래스를 사용하여 인덱스를 작성해야합니다. 보다토토 캔 : 문서 : 10 : 11.9. 운영자 수업 및 운영자 가족아래. B-Tree Indexes를 사용하는 것도 가능합니다ilike
and~*
, 그러나 패턴이 비 알파벳 문자, 즉 상류/소문자 변환에 영향을받지 않는 문자로 시작하는 경우에만.
B- 트리 인덱스를 사용하여 정렬 된 순서로 데이터를 검색 할 수도 있습니다. 이것은 간단한 스캔 및 정렬보다 항상 빠르지는 않지만 종종 도움이됩니다.
해시 인덱스는 간단한 평등 비교 만 처리 할 수 있습니다. 쿼리 플래너는 인덱스 된 열이를 사용하여 비교에 관여 할 때마다 해시 색인 사용을 고려합니다.=
운영자. 다음 명령은 해시 색인을 만드는 데 사용됩니다.
색인 생성이름
on테이블
해시 사용 (열
);
GIST 인덱스는 단일 종류의 인덱스가 아니라 많은 다른 인덱싱 전략을 구현할 수있는 인프라입니다. 따라서 GIST 지수를 사용할 수있는 특정 연산자는 인덱싱 전략에 따라 다릅니다 (운영자 클래스). 예를 들어,의 표준 분포와이즈 토토이 연산자를 사용하여 인덱스 된 쿼리를 지원하는 여러 2 차원 기하학적 데이터 유형에 대한 GIST 연산자 클래스가 포함되어 있습니다.
<< |
&< |
& |
|
<< | |
& <| |
| & |
| |
@ |
<@ |
~ = |
&& |
(참조PostgreSQL : 문서 : 10 : 9.11. 스포츠 토토 기능 및 스포츠 토토이러한 연산자의 의미는 표준 분포에 포함 된 GIST 연산자 클래스가에 문서화되어 있습니다.표 62.1. 다른 많은 Gist 운영자 클래스는에서 사용할 수 있습니다.Contrib
수집 또는 별도의 프로젝트. 자세한 내용은 참조PostgreSQL : 문서 : 10 : 62 장 젠 토토 인덱스.
GIST 인덱스도 최적화 할 수 있습니다“가장 가까운 곳”와 같은 검색
선택 * 위치별로 주문에서 <- 포인트 '(101,456)'제한 10;
주어진 목표 지점에 가장 가까운 10 개의 장소를 찾습니다. 이를 수행하는 능력은 다시 사용되는 특정 운영자 클래스에 달려 있습니다. 안에표 62.1, 이러한 방식으로 사용할 수있는 연산자는 열에 나열되어 있습니다“주문 연산자”.
GIST 인덱스와 같은 SP-Gist 인덱스는 다양한 종류의 검색을 지원하는 인프라를 제공합니다. SP-Gist는 Quadtree, K-D 트리 및 Radix Trees (TRIE)와 같은 다양한 비 균형 잡힌 디스크 기반 데이터 구조의 구현을 허용합니다. 예를 들어,의 표준 분포와이즈 토토이 연산자를 사용하여 인덱스 된 쿼리를 지원하는 2 차원 지점에 대한 SP-Gist 연산자 클래스가 포함되어 있습니다.
<< |
|
~ = |
<@ |
<^ |
^ |
(참조PostgreSQL : 문서 : 10 : 9.11. 스포츠 토토 기능 및 스포츠 토토이러한 연산자의 의미는 표준 분포에 포함 된 SP-Gist 연산자 클래스가에 문서화되어 있습니다.표 63.1. 자세한 내용은 참조PostgreSQL : 문서 : 10 : 63 장 스포츠 토토 결과 색인.
GIST 및 SP-GIST와 마찬가지로 Gin은 다양한 사용자 정의 인덱싱 전략을 지원할 수 있으며 GIN 인덱스를 사용하는 특정 연산자는 인덱싱 전략에 따라 다릅니다. 예를 들어,의 표준 분포와이즈 토토배열 용 진 연산자 클래스가 포함되어 있으며,이 연산자를 사용하여 인덱스 된 쿼리를 지원합니다.
<@ |
@ |
= |
&& |
(참조PostgreSQL : 문서 : 10 : 9.18. 사설 토토 사이트 기능 및 연산자이러한 연산자의 의미는 표준 배포에 포함 된 진 운영자 클래스가에 문서화되어 있습니다.표 64.1. 다른 많은 진 운영자 클래스는에서 사용할 수 있습니다.Contrib
수집 또는 별도의 프로젝트. 자세한 내용은 참조토토 결과 : 문서 : 10 : 64 장.
브린 인덱스 (블록 범위 인덱스의 속도) 테이블의 연속 물리적 블록 범위에 저장된 값에 대한 요약. GIST, SP-GIST 및 GIN과 마찬가지로 Brin은 다양한 인덱싱 전략을 지원할 수 있으며 Brin Index를 사용할 수있는 특정 연산자는 인덱싱 전략에 따라 다릅니다. 선형 정렬 순서가있는 데이터 유형의 경우 인덱스 된 데이터는 각 블록 범위에 대한 열의 값의 최소 및 최대 값에 해당합니다. 이 연산자를 사용하여 인덱스 된 쿼리를 지원합니다.
< |
<= |
= |
= |
|
표준 분포에 포함 된 브린 오퍼레이터 클래스는에 문서화되어 있습니다.표 65.1. 자세한 내용은 참조스포츠 토토 : 문서 : 10 : 65 장. Brin Indexes.