スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Tag:スポンサー広告 

【Ruby】ruby-solrを使ってRubyからSolrにリクエストをしてみる

全文検索システムとして知られるSolrを使ってみました

今回はRubyでSolrのシステムを扱うところまでを紹介したいと思います

OSはCentOSを使用していますが、Javaが入っていない状態なのでそこからやってみました

Javaのダウンロード&インストール

javaのダウンロード
wget 'http://download.oracle.com/otn-pub/java/jdk/6u26-b03/jdk-6u26-linux-i586-rpm.bin'
※ 適宜環境によって読み替えてください

javaのインストール
chmod +x jdk-6u26-linux-i586-rpm.bin
./jdk-6u26-linux-i586-rpm.bin

Solrのダウンロード&スタート

solrのダウンロード
wget 'https://builds.apache.org/job/Solr-trunk/lastSuccessfulBuild/artifact/artifacts/apache-solr-4.0-2011-07-19_20-33-02.tgz'

solrのスタート
tar xvfz apache-solr-4.0-2011-07-19_20-33-02.tgz
cd apache-solr-4.0-2011-07-19_20-33-02/example
java -jar start.jar

これでsolrに同梱されているexampleを動かすところまではできます

solr-rubyを使ってrubyからsolrを使ってみる

solr-rubyのインストール
gem install solr-ruby

サンプル

#coding: utf-8
require 'rubygems'
require 'solr'
require 'json'

solr = Solr::Connection.new("http://localhost:8983/solr", :autocommit => :on)

#インデックスデータの追加
solr.add('id' => 9, :name => 'ボストンシティ')

#ボストンで検索かつidが8でも7でもないレコードの検索
q_params = {'q' => '*ボストン*', :fq => 'NOT id:8 OR NOT id:7'}
select_obj = Solr::Request::Select.new(nil, q_params)
puts solr.send(select_obj).data['response']['docs'][0]['name'] # => ボストンシティ


solr-rubyを用いてインデックスにデータを追加するところから、検索するところまでやってみました

ちなみにブラウザから

http://localhost:8983/solr/

にアクセスするといろいろな管理画面が用意されています。(念のためですが、上記例のlocalhostの部分は導入したサーバに読み替えてください。)
スポンサーサイト
テーマ : プログラミング
ジャンル : コンピュータ

Tag:Ruby  Trackback:0 comment:0 

Comment

comment form
(編集・削除用):
管理者にだけ表示を許可
プロフィール

6rats

Author:6rats
こんにちは、ITベンチャーで働くエンジニアです
主に自分の周りで起きた技術的なことをメモとして書き残して行きます。
Android以外にもRuby/Ruby on RailsやFuelPHPなどなどたまにやります。基本的なスタンスとしては興味があるもしくは必要になったらいろんなことにチャレンジします。
最近はiOSアプリ開発を始めています。

購読
follow us in feedly
個人プロダクト

Androidアプリ

Twitterクライアント

Webアプリケーション

EcPriceWatch(Amazon価格の推移を計測、最安値を知らせるサービス)
Google AdSense
ブログ村
にほんブログ村 IT技術ブログへ
にほんブログ村
ブロとも申請フォーム

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。