2012-05-14 1 views
5

나는 SOLR 쿼리의 유형을 모방하고 싶습니다 : PostgreSQL의는 전체 텍스트 검색 기능을 사용하여와어떻게 Solr을 Postgresql 전체 텍스트 검색으로 "이 쿼리와 비슷합니다"에뮬레이션 할 수 있습니까?

http://wiki.apache.org/solr/MoreLikeThis

합니다.

순수 포스트 그레스와 함께 "이와 비슷한"쿼리를 수행하는 방법이 있습니까?

+0

정보를 추가 할 수 있습니까? 요구 사항은 무엇입니까? 서로 비슷한 문서를 찾으십니까? 전체 텍스트 검색으로 문서를 순위 매기기? 하이브리드 접근법의 일종? –

답변

1

나쁘지 않은 제품입니다. 두 tsvector를 비교하여 이들이 충분히 유사한 지 확인하거나 상위 n 개의 유사한 tsvector를 가져올 수도 있지만이 작업을 수행하는 기본 기능은 없습니다. 좋은 소식은 tsctor가 GIN 색인 생성을 지원하기 때문에 복잡한 부분이 수행된다는 것입니다.

당신이해야 할 것이라고 생각하는 것은 두 tsvector의 교차를 결정하는 C 함수를 만드는 것입니다. 여기에서 겹치는 지 여부와이 문제를 해결하는 연산자를 결정하는 함수를 만들 수 있습니다. 거기에서 가장 큰 겹침을 기반으로 순위를 작성하는 것이 너무 어렵지 않아야합니다.

물론 이것은 C와 같은 언어로하는 것이 가장 쉽다고 생각하지만 필요하다면 다른 절차 언어를 사용할 수도 있습니다.

PostgreSQL의 멋진 점은 무엇이든 가능하다는 것입니다. 물론 아래쪽은 핵심 기능에서 더 멀리 나아갈 때 직접 할 수 있다는 것입니다.

관련 문제