2017.12.15 Friday
スポンサーサイト
一定期間更新がないため広告を表示しています
| スポンサードリンク | - | | - | - |
関口宏司のLuceneブログOSS検索ライブラリのLuceneおよびそのサブプロジェクト(Solr/Tika/Mahoutなど)について
2008.09.30 Tuesday
Solrロゴコンテスト・・・まだやってます
賞品も出るぞ:-)
2008.09.20 Saturday
(メモ) Solrのant testで特定のテストクラスのみ実行する方法
2008.09.18 Thursday
祝!Solr 1.3リリース
(日付が替わって)昨日、難産の末、Solr 1.3がリリースされた。
「Solr 1.3の新機能」と題するホワイトペーパーを書いた。以下からダウンロードできる: http://www.rondhuit.com/download.html 2008.09.15 Monday
(メモ)RAT - Release Audit Tool
Apache Incubator ProjectのRATというリリース時監査ツールはASLヘッダが記載されているかどうかなどを
チェックしてくれるツール。
2008.09.13 Saturday
Solr 1.3替え歌 〜1.3リリースに右往左往した半年間を振り返って〜
「勝手にシンドバッド(サザンオールスターズ)」のメロディで!
(注:本当にもうすぐなはずですが、本記事投稿時点でまだ正式リリースになっていません) 期待のSolr 1.3 バグもロゴも消えて マルチコアの思い出は ちょいとリポジトリの中に消えたほどに それにしてもパッチが 止まらないどうしよう うぶなコミッターみたいに ちょっと今夜は熱く胸こがす さっきまで俺ひとり Solr思い出してたとき シャイなハートにロゴの色がただ浮かぶ 実装せずにいられない お目にかかれて (客1)いつ出るの (関口)そうねだいたいね (客2)いつ出るの (関口)ちょっと待ってて Oh (客3)いつ出るの (関口)まだはやい 不思議なものねSolr見れば 胸騒ぎの1.3 胸騒ぎの1.3 胸騒ぎの1.3 Solr come on! Back to JIRA! いつになればSolr 1.3に逢えるの お互いにコミットして 行っちまうよなプラグインからませて RC2が見えてきた 正式リリースも近い ゆきずりのパッチなんて 夢を見るよに忘れてしまう さっきまで俺ひとり Solr思い出してたとき シャイなハートにロゴの色がただ浮かぶ 実装せずにいられない お目にかかれて (客1)いつ出るの (関口)そうねだいたいね (客2)いつ出るの (関口)ちょっと待ってて Oh (客3)いつ出るの (関口)まだはやい 不思議なものねSolr見れば 胸騒ぎの1.3 胸騒ぎの1.3 胸騒ぎの1.3 心なしか今夜 コミットが少ないわ プログラマ心誘う 胸騒ぎの1.3 胸騒ぎの1.3 胸騒ぎの1.3 2008.09.11 Thursday
Field.Index定数の名称変更(2.4)
Field.Indexに定義されている定数の名前が次のように変更になった:
これまでの定数もLucene 2.9までは使用できるが、Lucene 2.4からは古い定数を使用するとコンパイル時にdeprecatedの警告が出る。また、Lucene 3.0以降では古い定数名は完全に使用できなくなる。 TOKENIZEDがANALYZEDとなったのは、TOKENIZEDだとTokenFilterを使用しないような印象を与えてしまうのを避けるためと思われる。 NO_NORMS系に関しては、ANALYZED_NO_NORMSが新たに追加された。これまではこれに対応したものがなかったので、次のようにプログラミングする必要があった:
Lucene 2.4からはANALYZED_NO_NORMSを使って次のように書くことができる:
2008.09.10 Wednesday
Solr 1.3リリース間近・・・しかし一部ライブラリに法的問題が?!
Solrの設定ファイルはXMLで記述されるが、その際に使用されるXMLライブラリは、Solr 1.2まではXPPだったが、その後StAXに切り替えられた。StAXはAPIの名称である。
そのリファレンス実装のライブラリをSolrでは使用していたが、そのライブラリの提供者がBEA(今はOracle)らしく、BEAが最終的にApacheにそのライブラリの権利を許諾したのかどうかの確認が取れていないらしい。そこでGeronimoで独自にコードに起こしたStAX APIとその実装であるwoodstoxを使用した方がいいのではないか、という意見が今になって出てきている。 ・・・と、これを書いている間にもtrunkはwoodstoxに置き換わったようだ。早っ! (参考) http://www.nabble.com/replace-stax-API-with-Geronimo-stax%2BWoodstox-td19381627.html 2008.09.09 Tuesday
拡張しやすくなったQueryParser(2.4)
Lucene 2.4でQueryParserクラス内の全"new XXXQuery()"の部分が、"newXXXQuery()"というprotectedのメソッドに置き換わり、"newXXXQuery()"メソッドの中で"new XXXQuery()"が呼ばれるように変更になった。
これにより、これまでQueryParser内でたとえばTermQueryに展開していた部分をBoostingTermQueryに展開するようにカスタマイズしたりすることが簡単にできるようになった。 TermQueryの代わりにBoostingTermQueryに展開するQueryParserは次のようになる:
2008.09.06 Saturday
2つの文字列間の距離計算の抽象化(スペルチェック)(2.4)
Luceneのcontribにはスペルチェック機能があり、これを使うとGoogleの「もしかして・・・」機能を実現できる。
Googleの「もしかして・・・」はimplementとタイプしようとしてimplimentと誤ってタイプして検索してしまった場合、検索結果一覧画面の上部などに「もしかして:implement」と正しいスペルがリンクとともに表示される機能である。このリンクをクリックすると、ただちにimplementという正しいスペルで検索しなおされる。 Luceneではインデックス中に含まれる「多数派」の単語をスペルチェックに利用し表示する(誤ったスペルのimplimentよりも正しいスペルのimplementの方が多数存在する、という前提に立っている)。Googleの「もしかして・・・」もおそらく検索語のヒット件数が少ない場合、インデックス内の他の「距離的に近い単語」を内部で検索し、「距離的に近い単語」の方がヒット件数が多い場合に「もしかして・・・」を表示していると思われる。 ところでLuceneでは2つの単語の距離計算にこれまではLevenstein Distanceアルゴリズムを用いてきた: Levenstein Distance レーベンシュタイン距離 Lucene 2.4からはこの距離計算が次のようにインタフェース化され:
新たにJaro-Winkler Distanceアルゴリズムが提供されることとなった: Jaro-Winkler Distance これらのアルゴリズムを使って2つの文字列間の距離を計算して表示するプログラムは次のとおりである:
実行結果は次のとおり:
どちらのStringDistanceを用いても距離は0.0から1.0の数値を取り(Luceneのスペルチェック機能がこの範囲の数値が必要なので)、まったく異なる文字列("ABC"と"XYZ")では0.0となり、同じ文字列("Apache Hadoop")では1.0となる。またJaro-Winkler Distanceの方がLevenstein Distanceよりも数値が大きくなる傾向にあるようだ。 |
+ Solrによるブログ内検索
+ PROFILE
+ LINKS
+ Lucene&Solrデモ
+ ThinkIT記事
+ RECOMMEND
+ RECOMMEND
Lucene in Action (JUGEMレビュー »)
Erik Hatcher,Otis Gospodnetic,Mike McCandless FastVectorHighlighterについて解説記事を寄稿しました。
+ RECOMMEND
+ SELECTED ENTRIES
+ RECENT COMMENTS
+ RECENT TRACKBACK
+ CATEGORIES
+ ARCHIVES
+ MOBILE
+ SPONSORED LINKS
|
(C) 2024 ブログ JUGEM Some Rights Reserved.
|
PAGE TOP |