속도를 높이는 데 사용할 수있는 두 가지 종류의 인덱스가 있습니다. 텍스트 검색. 인덱스는 전체 텍스트에 필수적이지 않습니다 검색이지만 열이 일반에서 검색되는 경우 기준, 색인은 일반적으로 바람직합니다.
토토 사이트 추천 (일반 검색 트리) 기반 인덱스를 만듭니다. 그만큼열tsvector또는tsquery타입.
GIN (Generalized Index) 기반 인덱스를 만듭니다. 그만큼열tsvector타입.
둘 사이에는 실질적인 성능 차이가 있습니다 색인 유형이므로 이해하는 것이 중요합니다 형질.
토토 사이트 추천 지수는Lossy, 색인은 허위 일치를 생성 할 수 있으며 그러한 허위 일치를 제거하기위한 실제 테이블 행. (PostgreSQL이 경우 자동으로 수행합니다 필요한 것.) 각 문서가 있기 때문에 요점 인덱스가 손실됩니다 고정 길이 서명으로 인덱스에 표시됩니다. 서명 각 단어를 N- 비트로 단일 비트로 해싱하여 생성됩니다. 이 모든 비트가 OR-ED가 함께 N-Bit을 생산합니다. 문서 서명. 두 단어가 같은 비트 위치에 해시 할 때 허위 경기가있을 것입니다. 쿼리의 모든 단어에 일치하는 경우 (실제 또는 거짓) 그런 다음 테이블 행을 검색하여 일치는 맞습니다.
손실은 불필요한 성능 저하를 유발합니다 테이블 레코드를 가져옵니다. 부터 테이블 레코드에 대한 무작위 액세스는 느리므로 유용성을 제한합니다. 요점 인덱스. 허위 일치의 가능성은 여러에 따라 다릅니다 요인, 특히 고유 단어의 수, 따라서 사용 이 숫자를 줄이기위한 사전이 권장됩니다.
진 인덱스는 표준 쿼리에 대한 손실이 아니라 성능은 독특한 단어의 수에 따라 로그에 달려 있습니다. (그러나 Gin Indexes는의 단어 (lexemes) 만 저장합니다.tsvector값은 무게 라벨이 아닙니다. 따라서 a 관련된 쿼리를 사용할 때는 테이블 행 리 확인이 필요합니다. 무게.)
사용할 인덱스 유형, GIST 또는 GIN을 선택할 때 이것을 고려하십시오. 성능 차이 :
진 인덱스 조회는 토토 사이트 추천보다 약 3 배 빠릅니다
진 인덱스는 토토 사이트 추천보다 빌드하는 데 약 3 배 더 오래 걸립니다
진 인덱스는 토토 사이트 추천 인덱스보다 업데이트가 적당히 느려집니다. 그러나 빠른 업데이트 지원이 비활성화되면 약 10 배 느려집니다 (섹션 57.3.1자세한 내용)
진 인덱스는 토토 사이트 추천 인덱스보다 2-3 배 더 큽니다
경험상진인덱스는 조회가 더 빠르기 때문에 정적 데이터에 가장 적합합니다. 을 위한 동적 데이터, 토토 사이트 추천 인덱스는 업데이트가 더 빠릅니다. 구체적으로,토토 사이트 추천인덱스가 매우 좋습니다 동적 데이터와 고유 한 단어 (lexemes)의 수가 100,000 미만,진인덱스 100,000+ lexemes를 더 잘 처리하지만 업데이트가 느리게 처리됩니다.
참고gin인덱스 빌드 시간을 증가시켜 종종 개선 될 수 있습니다maintenance_work_mem, 하는 동안토토 사이트 추천인덱스 빌드 시간입니다 해당 매개 변수에 민감하지 않습니다.
큰 컬렉션의 파티셔닝 및 GIST의 적절한 사용 및 Gin Indexes는 매우 빠른 검색을 구현할 수 있습니다. 온라인 업데이트. 파티션은 데이터베이스 수준에서 수행 할 수 있습니다 테이블 상속 또는 서버를 통해 문서를 배포하여 를 사용하여 검색 결과 수집dblink모듈. 후자는 가능합니다 순위 기능은 로컬 정보 만 사용합니다.
이전 | 배트맨 토토 사이트 추천 : 문서 : 9.3 : 배트맨 토토 9.3.25 문서화 | 다음 |
테스트 및 디버깅 텍스트 검색 | up | PSQL지원 |