| 윈 토토 : 문서 : 9.4 | |||
|---|---|---|---|
| 토토 결과 : 문서 : 9.4 : Extensibility | 스포츠 토토 사이트 : 문서 : 9.4 : 진 인덱스 | 58장. GIN 인덱스 | PostgreSQL : 문서 : 9.4 : 진 팁 및 스포츠 토토 베트맨 | 
내부적으로, a진인덱스에는 키에 대해 구성된 B-트리 인덱스가 포함되어 있습니다. 여기서 각 키는 하나 이상의 인덱스 항목(예: 배열의 멤버)의 요소이고 리프 페이지의 각 튜플에는 힙 포인터의 B-트리에 대한 포인터(a"게시 트리") 또는 간단한 힙 포인터 목록(a"게시 목록") 목록이 키 값과 함께 단일 인덱스 튜플에 들어갈 만큼 작은 경우.
현재포스트그레SQL9.1, null 키 값이 인덱스에 포함될 수 있습니다. 또한 자리 표시자 Null은 다음에 따라 null이거나 키를 포함하지 않는 색인 생성된 항목의 색인에 포함됩니다.추출값. 이를 통해 빈 항목을 찾아야 하는 검색이 가능해집니다.
다중 열진색인은 복합 값(열 번호, 키 값)에 대해 단일 B-트리를 구축하여 토토 핫됩니다. 다양한 열의 키 값은 다양한 유형일 수 있습니다.
업데이트 중진인덱스는 반전된 인덱스의 본질적인 특성으로 인해 느린 경향이 있습니다. 하나의 힙 행을 삽입하거나 업데이트하면 인덱스에 많은 삽입이 발생할 수 있습니다(인덱싱된 항목에서 추출된 각 키에 대해 하나씩). 현재토토 핫 8.4, 진은 보류 중인 항목의 정렬되지 않은 임시 목록에 새 튜플을 삽입하여 이 작업의 대부분을 연기할 수 있습니다. 테이블이 정리되거나 보류 목록이 너무 커지는 경우(보다 큰 경우)work_mem), 항목이 기본으로 이동됩니다.진초기 색인 생성 중에 사용된 것과 동일한 대량 삽입 기술을 사용하는 데이터 구조입니다. 이로 인해 크게 개선되었습니다.진색인 업데이트 속도, 추가 진공 오버헤드 계산 포함. 또한 오버헤드 작업은 포그라운드 쿼리 처리 대신 백그라운드 프로세스로 수행될 수 있습니다.
이 접근 방식의 주요 단점은 검색이 일반 색인 검색 외에도 보류 중인 항목 목록을 검색해야 하므로 보류 중인 항목 목록이 많으면 검색 속도가 상당히 느려진다는 것입니다. 또 다른 단점은 대부분의 업데이트가 빠르지만 보류 목록이 발생하는 업데이트입니다."너무 큽니다"즉시 정리 주기가 발생하므로 다른 업데이트보다 훨씬 느립니다. Autovacuum을 적절하게 사용하면 이러한 문제를 모두 최소화할 수 있습니다.
업데이트 속도보다 일관된 응답 시간이 더 중요하다면 다음을 꺼서 보류 중인 항목의 사용을 비활성화할 수 있습니다.빠른 업데이트a에 대한 저장 매개변수진색인. 참조색인 생성자세한 내용은.
GIN이 지원할 수 있습니다"부분 일치"쿼리는 하나 이상의 키에 대한 정확한 일치를 결정하지 않지만 가능한 일치는 합리적으로 좁은 범위의 키 값(에 의해 결정된 키 정렬 순서 내에서)에 속하는 쿼리입니다.비교지원 방법).추출쿼리메소드는 정확히 일치할 키 값을 반환하는 대신 검색할 범위의 하한인 키 값을 반환하고 다음을 설정합니다.pmatch플래그가 참입니다. 그런 다음 키 범위는를 사용하여 스캔됩니다.비교부분방법.비교부분일치하는 인덱스 키에 대해서는 0을 반환해야 하고, 검색할 범위 내에 있는 불일치에 대해서는 0보다 작은 값을 반환해야 하며, 인덱스 키가 일치할 수 있는 범위를 벗어나면 0보다 큰 값을 반환해야 합니다.