| 와이즈 토토 9.3.25 문서 | ||||
|---|---|---|---|---|
| 스포츠 토토 PostgreSQL : 문서 : 9.3 : 소개 | 토토 사이트 순위 : 문서 : 9.3 : 인덱스 | 11장. 인덱스 | PostgreSQL : 문서 : 9.3 : 멀티 컬럼 메이저 토토 사이트 | |
와이즈 토토여러 가지 제공 인덱스 유형: B-트리, 해시, GiST, SP-GiST 및 GIN. 각 인덱스 유형 다양한 유형에 가장 적합한 다른 알고리즘을 사용합니다. 쿼리의. 기본적으로는색인 생성명령은 가장 일반적으로 사용되는 B-트리 색인을 생성합니다. 상황.
B-트리는 데이터에 대한 동등성 및 범위 쿼리를 처리할 수 있습니다. 어떤 순서로 정렬됩니다. 특히,포스트그레SQL쿼리 플래너는 다음 사용을 고려할 것입니다. 인덱스화된 열이 비교에 포함될 때마다 B-트리 인덱스 다음 연산자 중 하나를 사용합니다.
| < | 
| <= | 
| = | 
| = | 
최적화 프로그램은 다음과 관련된 쿼리에 B-트리 인덱스를 사용할 수도 있습니다. 패턴 일치 연산자좋아요그리고~ if패턴은 일정하며 문자열의 시작 부분에 고정됨(예:col LIKE 'foo%'또는열 ~ '^foo'하지만 아님col LIKE '%bar'. 그러나 데이터베이스가 C 로케일을 사용하지 않는 경우에는 다음이 필요합니다. 지원할 특수 연산자 클래스를 사용하여 인덱스를 생성합니다. 패턴 일치 쿼리의 인덱싱; 참조섹션 11.9아래. 또한 가능하다 B-트리 인덱스를 사용하려면좋아요그리고~*, 그러나 패턴이 다음으로 시작하는 경우에만 해당됩니다. 알파벳이 아닌 문자, 즉 영향을 받지 않는 문자 대문자/소문자 변환으로.
B-트리 인덱스는 정렬된 데이터를 검색하는 데에도 사용할 수 있습니다. 주문. 이는 단순한 스캔 및 정렬보다 항상 빠른 것은 아니지만 종종 도움이 됩니다.
해시 색인은 단순 동등 비교만 처리할 수 있습니다. 는 쿼리 플래너는 인덱스가 생성될 때마다 해시 인덱스 사용을 고려합니다. 열은를 사용한 비교에 포함됩니다.=연산자. 다음 명령은 생성하는 데 사용됩니다. 해시 인덱스:
색인 생성이름켜짐테이블해시 사용 중(열);
| 주의 | 
| 
 해시 인덱스 작업은 현재 WAL에 기록되지 않으므로 해시 인덱스를 다시 작성해야 할 수도 있습니다.REINDEX데이터베이스 충돌 후 다음이 있는 경우 기록되지 않은 변경 사항. 또한 해시 인덱스에 대한 변경 사항은 복제되지 않습니다. 초기 기반 이후 오버스트리밍 또는 파일 기반 복제 백업하므로 이후에 사용하는 쿼리에 잘못된 답변을 제공합니다. 그들. 이러한 이유로 현재 해시 인덱스 사용은 낙담했다.  | 
GiST 인덱스는 단일 종류의 인덱스가 아니라 오히려 다양한 인덱싱 전략을 사용할 수 있는 인프라 구현됩니다. 따라서, 특정 연산자는 GiST 인덱스는 인덱싱 전략에 따라 다양하게 사용될 수 있습니다(연산자 클래스). 예를 들어, 표준 분포와이즈 토토다음을 위한 GiST 연산자 클래스를 포함합니다. 인덱스를 지원하는 여러 2차원 기하학적 데이터 유형 다음 연산자를 사용하는 쿼리:
| << | 
| &< | 
| & | 
| <<| | 
| &<| | 
| |& | 
| | | 
| @ | 
| <@ | 
| ~= | 
| && | 
GiST 인덱스도 최적화 가능"가장 가까운 이웃"다음과 같은 검색
SELECT * FROM 장소 ORDER BY 위치 <- 포인트 '(101,456)' LIMIT 10;
주어진 목표 지점에 가장 가까운 10개의 장소를 찾습니다. 는 이를 수행하는 능력은 다시 특정 운영자에 따라 달라집니다. 클래스가 사용되고 있습니다.
SP-GiST 인덱스는 GiST 인덱스와 마찬가지로 다음과 같은 인프라를 제공합니다. 다양한 종류의 검색을 지원합니다. SP-GiST는 구현을 허용합니다. 다양한 불균형 디스크 기반 데이터 쿼드트리, k-d 트리, 기수 트리(시도)와 같은 구조. 예를 들어, 표준 분포는와이즈 토토SP-GiST 연산자 클래스 포함 다음을 사용하여 색인화된 쿼리를 지원하는 2차원 점의 경우 다음 연산자:
| << | 
| ~= | 
| <@ | 
| <^ | 
| ^ | 
GIN 인덱스는 다음과 같은 값을 처리할 수 있는 반전된 인덱스입니다. 예를 들어 배열과 같이 두 개 이상의 키를 포함합니다. GiST와 마찬가지로 SP-GiST, GIN은 다양한 사용자 정의 인덱싱을 지원할 수 있습니다. 전략과 GIN 지수에 사용할 수 있는 특정 연산자 인덱싱 전략에 따라 다르게 사용됩니다. 예를 들어, 표준 분포포스트그레SQL다음에 대한 GIN 연산자 클래스를 포함합니다. 이를 사용하여 인덱스 쿼리를 지원하는 1차원 배열 연산자:
| <@ | 
| @ | 
| = | 
| && |