カテゴリー : Solr

[Ruby] 全文検索エンジンSolrを使うなら「sunspot」

Ruby とか Rails とかで全文検索エンジンSolrを使うなら「sunspot」ということで色々とメモ。

sunspot/sunspot はてなブックマーク - sunspot/sunspot

sunspotのチュートリアル意訳 – maeshimaの日記 はてなブックマーク - sunspotのチュートリアル意訳 - maeshimaの日記

結局、Rails 3.2 で 大量のデータを検索する場合、Sunspot な Solr が一番 いい感じ。という面白くないオチ。 | JAM☆ぱん はてなブックマーク - 結局、Rails 3.2 で 大量のデータを検索する場合、Sunspot な Solr が一番 いい感じ。という面白くないオチ。 | JAM☆ぱん

Will_Paginate with Sunspot – Ruby on Rails | What I Broke はてなブックマーク - Will_Paginate with Sunspot – Ruby on Rails | What I Broke

リファレンス

Module: Sunspot — Documentation for nuatt_sunspot (1.1.0.3) はてなブックマーク - Module: Sunspot — Documentation for nuatt_sunspot (1.1.0.3)

RSpec でテストするときの設定とか

RSpec and Sunspot · sunspot/sunspot Wiki はてなブックマーク - RSpec and Sunspot · sunspot/sunspot Wiki

Sunspot with RSpec はてなブックマーク - Sunspot with RSpec

Install And Test SOLR+Sunspot In Your Rails+RSpec Project | DZone はてなブックマーク - Install And Test SOLR+Sunspot In Your Rails+RSpec Project | DZone

sunspot-rails-tester – maeshimaの日記 はてなブックマーク - sunspot-rails-tester - maeshimaの日記

justinko/sunspot-rails-tester · GitHub はてなブックマーク - justinko/sunspot-rails-tester · GitHub

Solr 3.6.1 を CentOS6.3 にインストールする手順

Solr 3.6.1 を CentOS6.3 にインストールする手順をメモ。

まず、Javaをインストールします。

CentOS6.3 に Java 1.7 をインストールする手順 はてなブックマーク - CentOS6.3 に Java 1.7 をインストールする手順 | CodeNote.net

# yum -y install java-1.7.0-openjdk
# java -version
java version "1.7.0_09-icedtea"
OpenJDK Runtime Environment (rhel-2.3.3.el6_3.1-x86_64)
OpenJDK 64-Bit Server VM (build 23.2-b09, mixed mode)

Solr のソースコードをダウンロード後、サンプルを同梱されている Jetty で起動する。

# cd /usr/local/src/
# wget http://archive.apache.org/dist/lucene/solr/3.6.1/apache-solr-3.6.1.tgz
# tar zxvf apache-solr-3.6.1.tgz
# cd apache-solr-3.6.1/example/
# java -jar start.jar &
# curl http://localhost:8983/solr/admin/
→起動確認

以上です。

【参考】

Solr Tutorial はてなブックマーク - Solr Tutorial

Apache SolrをJettyで起動する – ksoedaの日記 はてなブックマーク - Apache SolrをJettyで起動する - ksoedaの日記

Apache SolrをTomcatから使う – ksoedaの日記 はてなブックマーク - Apache SolrをTomcatから使う - ksoedaの日記

Apache Solrを使ってみる – @blog.justoneplanet.info はてなブックマーク - Apache Solrを使ってみる - @blog.justoneplanet.info

[Ruby] sunspot_solr でインストールされる Solr のバージョン確認方法

sunspot_solr のデフォルトの Solr のバージョンは、下記のURLで確認できます。

http://localhost:8982/solr/admin/registry.jsp

以上です。

[Solr] JapanesePartOfSpeechStopFilterFactory : java.lang.ClassCastException: java.lang.String cannot be cast to [C

Solr で JapanesePartOfSpeechStopFilterFactory を使うように schema.xml を修正すると、java.lang.ClassCastException が発生してしまう。

解決方法は現在、調査中です。

HTTP ERROR 500
 
Problem accessing /solr/admin/. Reason:
 
    Severe errors in solr configuration.
 
Check your log files for more detailed information on what may be wrong.
 
If you want solr to continue after configuration errors, change: 
 
 <abortOnConfigurationError>false</abortOnConfigurationError>
 
in solr.xml
 
-------------------------------------------------------------
java.lang.ClassCastException: java.lang.String cannot be cast to [C
	at org.apache.solr.analysis.JapanesePartOfSpeechStopFilterFactory.inform(JapanesePartOfSpeechStopFilterFactory.java:54)
	at org.apache.solr.core.SolrResourceLoader.inform(SolrResourceLoader.java:551)
	at org.apache.solr.schema.IndexSchema.<init>(IndexSchema.java:124)
	at org.apache.solr.core.CoreContainer.create(CoreContainer.java:478)
	at org.apache.solr.core.CoreContainer.load(CoreContainer.java:332)
	at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:165)
	at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:96)
	at org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:97)
	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
	at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:713)
	at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
	at org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1282)
	at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:518)
	at org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:499)
	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
	at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
	at org.mortbay.jetty.handler.ContextHandlerCollection.doStart(ContextHandlerCollection.java:156)
	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
	at org.mortbay.jetty.handler.HandlerCollection.doStart(HandlerCollection.java:152)
	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
	at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
	at org.mortbay.jetty.Server.doStart(Server.java:224)
	at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
	at org.mortbay.xml.XmlConfiguration.main(XmlConfiguration.java:985)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.mortbay.start.Main.invokeMain(Main.java:194)
	at org.mortbay.start.Main.start(Main.java:534)
	at org.mortbay.start.Main.start(Main.java:441)
	at org.mortbay.start.Main.main(Main.java:119)