문자열 간의 퍼센테이지 일치를 찾기 위해 응용 프로그램에서 SOLR을 테스트하려고합니다.Solr Lucene 퍼지 일치가 잘못된 결과를 반환 함
솔라를 구성하고 지금은 first_name과 일치하는 스키마 만 정의 했으므로 schema (solr 3.3)에서 text_general 데이터 유형을 사용했습니다. 내 문서/CSV에서
내가 단어 "rushik"를 유지하고 SOLR 쿼리에 나는 "rushk"로 검색하는 것을 시도하고있다 - 의도적으로 제거 "i"가 levenshtein 알고리즘을 이상적으로
거리 1 위의 두 사이의 문자열입니다 따라서 문자열 사이의 일치율은 (1 - distance/maxLen (string1, string2)) (1 - 1/6) = 0.83이어야합니다 - 이는 두 문자열이 모두 83 % 일치 함을 의미합니다.
하지만 솔직히 내가 rushk ~ 0.79를 제공 할 때까지 일치합니다. ~ 0.80, 0.81 등을 사용할 때 문서와 일치하지 않습니다.
levenshtein 문자열 일치 계산이 잘못되었거나 문제의 위치를 정확히 결정할 수 있는지 확실하지 않습니다.
여기에 도움을 주시면 매우 감사하겠습니다.
감사합니다. Rushik.
감사합니다. Jayendra,하지만이 계산에서 MAX Length를 사용하는 ppl을 찾은 대부분의 사람들은 SOLR이 MIN으로 설정되는 정확한 이유를 알고 있습니까? – Rushik
확실하지 않습니다. 소스를 확인할 수 있습니다 @ http://svn.apache.org/repos/asf/lucene/dev/trunk/lucene/src/java/org/apache/lucene/search/FuzzyTermsEnum.java – Jayendra