【全文検索】ApacheSolr入門をやってみる 第2回

今回は、Solrの管理画面をちょこっと触ってみて、その後N-gramの形態素解析を試してみようと思います。
基本的には難しい作業は特になく、今のところは以外と順調です。
ていうか、ApacheSolr入門まじイケてる。

前回、DLしてきたSolrのサンプルを起動させるところまででしたが、間を挟んで実施したポートフォワーディングを使ってブラウザから管理画面を見て見ます。

自分はlocalhostの10080にフォワードしたので、以下のアドレスをアドレスバーに入力してアクセスしてみます
http://localhost:10080/solr/admin/

最初、後ろの/solr/adminを忘れて404が出現し少しだけ焦った件。

以下の画面が出ると思います。

サンプルデータを登録してみるテスト

次に、実際に検索を試してみます。 そのためのデータ登録をするでござる。

展開したSolrのexampleディレクトリの中に /exampledocs というサンプルデータが入っているディレクトリがありました。
この中にxmlファイルがワサワサと置かれており、どうもこやつらがサンプルデータのようですね。

データ登録は以下コマンドで実施できます。

cd exampledocs/
java -jar post.jar *.xml

なお、このディレクトリの中には post.sh という名前のシェルが存在しており、データ登録の際にはこっちをメインで使うようです。
ApacheSolr入門では、このシェルスクリプトを実行する為の環境設定の仕方をwindows/linux/macとそれぞれちゃんと説明されてます。
まじで、優しさがにじみ出てくる本ですね。

自分の場合はcentosで試してみてるんですが、curlコマンドが入ってればOKな様です。普通はデフォで入ってますね。

では早速 post.sh を動かしてデータを登録してみます。
./post.sh .xml

今度は Posting file XXX.xml に始まるXMLファイルの出力がヒャーっと出てきます。
出てきたという事は動いたということでやんすね・・? よくわかんないけどいいや。

サンプルデータで検索してみるテスト

先ほどブラウザからアクセスしてみた管理画面の「QueryString」のテキストBOXに”ipod”と入れてSerachボタンを押してみます。
すると以下の様な感じでファサー っとxmlが返却されます。


どうやらこれが検索結果データでやんすね! ( ゚∀゚)

というわけで少し動きました。

次に、日本語でも検索できるようにトークナイザをぶっこんでみます。
まずはN-gramから。

なんか、 こう前文検索っぽい雰囲気がでてきましたね。

その前にサンプルコードをDLしておく

ApacheSolrで使うサンプルプログラムや設定ファイルは各種サイトからDLできるそうですので、落としておきます。
テキストでは株式会社シーマークさんと株式会社ロンウィットさんの2つの他に、著者である関口宏司さんのLuceneブログが案内されていました。

ところが、シーマークのサイトはgoogleの検索結果に出るもののなぜかアクセスできず。。
ロンウィットのページからDLできました。

wget http://www.rondhuit.com/books/solr/solrbook.zip
unzip solrbook.zip

N-gramトークナイザを使ってみる

サンプルプログラム内に2-gramのCJKTokenizerなるヤツがいるとの事で、それを使ってみませう。

先に展開して出てきたディレクトリで、 /introduction/ngram/schema.xml なるファイルがあり、これがどうやらトークナイザの設定ファイル っぽいのですがviewしてみてもぜんぜん何かいてあるか分かりませんでしたw

ていうか、やっぱエンジニアって英語読めないとダメですよねー
絶対使わないって思って生きてきたのに。。

はい、 で このschema.xml を $SOLR/solr/conf にコピーすると書いてあるのですが
そんなディレクトリないぜ
と思ってpcシャットダウンしてDSでもやろうかと思いましたが、たまたまexampleディレクトリの中に発見しました。

同名のファイルがあるけど、上書きせよ と書いてあるのでたぶんこのディレクトリでOKなはずです。

というわけでコピーし、その後またstart.jarでSolrを起動してみるみたいですよ。

cp schema.xml $SOLR/example/solr/conf/schema.xml
java -jar start.jar

起動したら再びフォワードしたSolrAdminにアクセスしてみます。

ANALYSISをクリックするとテキストフォームが出現。
テスト方法は以下。

・Field : プルダウンからtypeを選択、テキストボックスに txt_cjkを入力
・Field value : てきとうな日本語を入力します。
・最後にAnalyzeをクリックする。

なんか2文字づつ分割されたー!

つーわけで、とりあえずうまく動いているようなのでN-gramはOKでした。

次は形態素解析をやってみるのですが、今からガキ使が始まるので明日やることにします。

おわり



関連記事

Comment





Comment



*