本の検索アプリを実行しています。休止状態の検索によって実装されます。
Book エンティティは次のように定義されます。
@Entity
@Indexed
public class Book{
@DocumentId
private Integer UID;
@Field
private String title;
@Field
private String description;
...}
たとえば、ユーザーが書籍名を検索すると、Microsoft Access 2007 と入力すると、タイトルまたは説明を含む書籍に microsoft、access または 2007 が返されます。それが私たちが期待したことです。キーワード 2007 のため、まったく関係のない書籍もあります。各キーワードの重要性を理解するための解決策を探しています。その場合、2007 年は検索でそれほど重要ではありません。しかし、その検索では、microsoft、access、または 2007 に違いはありません。
2 番目のユーザー ケース: 複数のフレーズをサポートするためにインデックス作成とクエリで使用できる優れたアナライザーはありますか? 休止状態検索のデフォルトのアナライザーは、検索語を単一の単語にトークン化するだけだと思いましたか?
検索ワードが microsoft access 2007 の場合、結果に「microsoft access」が含まれている場合に最高のスコアが表示されます。
もう 1 つの検索例: "salt lake city", "united states", "salt, city" または "lake" のみに一致する場合、結果は期待されません。
誰か手がかりを教えてもらえますか?
ありがとう!