関口宏司のLuceneブログ

OSS検索ライブラリのLuceneおよびそのサブプロジェクト(Solr/Tika/Mahoutなど)について
<< Luceneのアーキテクチャを紹介するサイト | main | -XX:+AggressiveOpts はHotspotをクラッシュさせる件 >>
関数クエリとソートの面白い組み合わせ
Solr本にも掲載されているQueryElevationComponentは、特定のクエリに反応して特定のドキュメントのランキングを意図的に上位表示することができるが、これは上位表示したいドキュメントのユニークキーをソートで強制的に上位表示することで実現している。

似たような要件で、ある特定のキーワードとの関連度でソートを行い、その後ユーザクエリとの関連度でランキング(ソート)を行いたい場合、つまり:

sort=ある特定のキーワードとの関連度 desc,score desc


としたい。この場合は、QueryElevationComponentは使えない(ある特定のキーワードとの関連度ではないため)が、Solr 3.1から可能になった関数クエリによるソートを使って次のようにすれば可能である:

sort=query({!lucene v='text:solr'}) desc,score desc


query()関数は通常クエリのスコアを返すので、まずそれでソートを行い、次いで通常のスコア値によるソートを行っている。

メーリングリストより引用

関数クエリでお困りでしたら・・・Solr 3.3 9月 トレーニング受講者募集中

Solr トレーニングコースパンフレットダウンロードはこちら
| 関口宏司 | Solr | 11:37 | comments(0) | trackbacks(0) |









http://lucene.jugem.jp/trackback/448
+ Solrによるブログ内検索
+ PROFILE
  12345
6789101112
13141516171819
20212223242526
2728293031  
<< August 2017 >>
+ LINKS
検索エンジン製品 - 比較のポイント
商用検索エンジンを購入した企業担当者は読まないでください。ショックを受けますから・・・
>>製品比較 10のポイント
+ Lucene&Solrデモ
+ ThinkIT記事
+ RECOMMEND
Apache Solr入門 ―オープンソース全文検索エンジン
Apache Solr入門 ―オープンソース全文検索エンジン (JUGEMレビュー »)
関口 宏司,三部 靖夫,武田 光平,中野 猛,大谷 純
+ RECOMMEND
Lucene in Action
Lucene in Action (JUGEMレビュー »)
Erik Hatcher,Otis Gospodnetic,Mike McCandless
FastVectorHighlighterについて解説記事を寄稿しました。
+ RECOMMEND
+ SELECTED ENTRIES
+ RECENT COMMENTS
+ RECENT TRACKBACK
+ CATEGORIES
+ ARCHIVES
+ MOBILE
qrcode
+ SPONSORED LINKS