이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
다음에 대한 동일한 페이지를 보고 싶을 수도 있습니다.현재버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

53.2. 확장성

전통적으로 새로운 색인 액세스 방법을 구현한다는 것은 어려운 일이 많습니다. 내면을 이해하는 것이 필요했습니다. 잠금 관리자와 같은 데이터베이스 작동 및 미리 쓰기 로그.GiST인터페이스에는 높은 수준의 추상화가 있으므로 액세스가 필요합니다. 데이터의 의미를 구현하기 위한 메소드 구현자 유형에 액세스하고 있습니다.GiST계층 자체가 동시성, 로깅 및 검색을 관리합니다. 트리 구조.

이 확장성을 다음 확장성과 혼동해서는 안 됩니다. 다른 표준 검색 트리의 확장성 처리할 수 있는 데이터입니다. 예를 들어,포스트그레SQL확장 가능한 B-트리를 지원하며 해시 인덱스. 이는 다음을 사용할 수 있음을 의미합니다.포스트그레SQLB-트리 또는 해시를 구축하려면 원하는 모든 데이터 유형. 그러나 B-트리는 범위 술어만 지원합니다. (<, =, ), 해시 인덱스만 지원 평등 쿼리.

그러므로 예를 들어 이미지 컬렉션을 색인화한다면포스트그레SQLB-트리, 당신은 발행만 할 수 있습니다 다음과 같은 쿼리"imagex는 다음과 같습니다 이미지 같은", "imagex는 다음보다 작습니다 이미지 같은"그리고"imagex는 다음보다 큼 이미지 같은". 어떻게 정의하느냐에 따라"같음", "미만"그리고"보다 큼"이 맥락에서, 이것은 유용할 수 있습니다. 그러나 a를 사용하면GiST기반 색인을 사용하면 다음 방법을 만들 수 있습니다. 아마도 도메인 관련 질문을 해보세요."찾기 말의 모든 이미지"또는"모두 찾기 과다 노출된 이미지".

을 얻기 위해 필요한 모든 것GiST액세스 방법 실행은 여러 사용자 정의를 구현하는 것입니다. 트리의 키 동작을 정의하는 메서드입니다. 물론이다 멋진 쿼리를 지원하려면 이러한 방법이 꽤 멋져야 합니다. 하지만 모든 표준 쿼리(B-트리, R-트리 등)에 대해서는 비교적 간단합니다. 한마디로,지스트확장성과 함께 결합 일반성, 코드 재사용 및 깔끔한 인터페이스.