PostgreSQL여러 가지 제공 인덱스 유형: B-트리, R-트리, Hash 및 GiST. 각 인덱스 유형은 다음을 사용합니다. 다양한 유형에 가장 적합한 다른 알고리즘 쿼리. 기본적으로는색인 생성명령은 가장 일반적인 토토 꽁 머니에 맞는 B-트리 토토 꽁 머니를 생성합니다. 상황.
B-트리는 동등성 및 범위 쿼리를 처리할 수 있습니다. 어떤 순서로 정렬될 수 있는 데이터입니다. 특히,포스트그레SQL쿼리 플래너는 인덱스된 열이 있을 때마다 B-트리 인덱스 사용을 고려하십시오. 다음 연산자 중 하나를 사용하여 비교에 포함됩니다.
| < |
| <= |
| = |
| = |
최적화 프로그램은 쿼리에 B-트리 토토 꽁 머니를 사용할 수도 있습니다 패턴 일치 연산자 관련좋아요, 좋아요, ~및~*, if패턴이 다음에 고정되어 있습니다. 문자열의 시작, 예:열 좋아요 '푸%'또는col ~ '^foo'하지만 아님col LIKE '%bar'. 그러나 서버의 경우 인덱스를 생성하는 데 필요한 C 로케일을 사용하지 않습니다. 패턴 일치의 인덱싱을 지원하는 특수 연산자 클래스 쿼리. 보다PostgreSQL : 문서 : 8.0 : 운영자 롤 토토아래.
R-트리 인덱스는 공간 쿼리에 적합합니다. 데이터. R-트리 인덱스를 생성하려면 다음 형식의 명령을 사용하십시오.
색인 생성이름켜짐테이블RTREE 사용 중 (열);
그포스트그레SQL쿼리 플래너 인덱스된 열이 있을 때마다 R-트리 인덱스 사용을 고려할 것입니다. 다음 연산자 중 하나를 사용하여 비교에 포함됩니다.
| << |
| &< |
| & |
| @ |
| ~= |
| && |
해시 색인은 단순 동등성만 처리할 수 있습니다. 비교. 쿼리 플래너는 해시 토토 꽁 머니 사용을 고려합니다. 인덱싱된 열이 비교에 포함될 때마다=연산자. 다음 명령은 해시 인덱스를 생성하는 데 사용됩니다.
색인 생성이름켜짐테이블해시 사용(열);
참고:테스트 결과 표시됨PostgreSQL14403_14606
GiST 토토 꽁 머니는 단일 종류의 토토 꽁 머니가 아니라 오히려 다양한 인덱싱 전략이 포함된 인프라 구현될 수 있습니다. 이에 따라 특정 사업자들은 사용할 수 있는 GiST 토토 꽁 머니는 인덱싱에 따라 다릅니다. 전략(the연산자 클래스). 더 알아보기 정보 참조PostgreSQL : 문서 : 8.0 : 사설 토토 Indexes.
B-트리 인덱스 방법은 Lehman-Yao의 구현입니다. 동시성이 높은 B-트리. R-트리 인덱스 방법은 다음을 구현합니다. Guttman의 2차 분할 알고리즘을 사용하는 표준 R-트리. 는 해시 인덱스 방법은 Litwin의 선형 구현입니다. 해싱. 우리는 다음을 나타내기 위해서만 사용되는 알고리즘을 언급합니다. 이러한 모든 인덱스 방법은 완전히 동적이므로 반드시 그럴 필요는 없습니다. 주기적으로 최적화됩니다(예를 들어 정적 해시 방법).