Solr勉強 その① - インストール編-
会社でSolrを利用することになりそうなので、下調べついでに学んだことを定期的に書いていこうと思います。
目的
- Solrでできること/できないことを理解する
- Solrをインストールする
- Solrの使い方を理解する
- データの投入方法
- クエリの投げ方
- アプリケーションからの利用方法
- 設計方法
- 規模が大きいサービスでの利用方法を理解する
- 負荷分散
- 運用方法
適当に記事は分けますが、目的としてはこんな感じですかね。
Solrとは
- Javaで書かれたエンタープライズ向けの検索プラットフォーム
- もともとはApache Luceneといプロジェクトから来ている
- 全文検索向け
- クラスタリングができる
- 世界での利用度はElasticsearhについで2位
検索エンジンの方式
全く知らなかった。。
順次検索方式
- インデックスを作らない
- grepとか、SQLのlikeとか
転置索引方式
- 検索対象のドキュメントのインデックスを予め作っておく方式
- Solr、Googleとか
できること/できないこと
こちらの記事がとても参考になりました。 www.tree-tips.com
個人的にはこの辺が一番やりたいことですね。
形態素解析を利用した全文検索(フリーワード検索)が可能で、形態素解析の辞書を自分で作成可能
とりあえずインストールする
※環境構築は適当
手元のvirtual boxにubuntuを入れる
vagrant box add ubuntu https://cloud-images.ubuntu.com/vagrant/trusty/current/trusty-server-cloudimg-i386-vagrant-disk1.box vagrant init ubuntu
ネットワークの設定などなど
ubuntuのJavaのバージョンを8にする
Solrの最新版が利用したかったのでJavaのバージョンを上げる。
sudo apt-get update sudo add-apt-repository ppa:openjdk-r/ppa sudo apt-get install openjdk-8-jdk vagrant@vagrant-ubuntu-trusty-32:~/solr-6.0.1$ java -version openjdk version "1.8.0_91" OpenJDK Runtime Environment (build 1.8.0_91-8u91-b14-0ubuntu4~14.04-b14) OpenJDK Server VM (build 25.91-b14, mixed mode)
Solrで遊ぶ
とりあえずこのチュートリアルをやってみることにします。
Solrインストール
wget http://ftp.jaist.ac.jp/pub/apache/lucene/solr/6.0.1/solr-6.0.1.tgz http://lucene.apache.org/solr/mirrors-solr-latest-redir.html sudo tar -zvxf solr-6.0.1.tgz
Solr起動
以下~/solr-6.0.1ディレクトリで。
sudo bin/solr start -e cloud -noprompt
Adminにアクセス
起動したらadmin画面が見られます。
http://192.168.33.10:8983/solr # urlは適宜
Solr停止
sudo bin/solr stop -all
チュートリアルのデータを流し込む
bin/post -c gettingstarted docs/
ここでチュートリアル通りにやると、コアが存在せず内部のhttp通信が404を返すのでコアを作ります。
bin/solr create -c gettingstarted
Admin画面から検索してみる
なんとなくデータは返ってきているのでここまではOK。 つづく。
参考
- Ubuntu 15.04にVirtualbox、Vagrantをインストール
- Kevin Doran - Software Development: Solr Tutorial
- Railsアプリケーション開発者のためのSolr入門 [pdf]
この本を買って見ようと思う
[改訂新版] Apache Solr入門 ~オープンソース全文検索エンジン (Software Design plus)
- 作者: 大谷純,阿部慎一朗,大須賀稔,北野太郎,鈴木教嗣,平賀一昭,株式会社リクルートテクノロジーズ,株式会社ロンウイット
- 出版社/メーカー: 技術評論社
- 発売日: 2013/11/29
- メディア: 大型本
- この商品を含むブログ (8件) を見る