CLOVER🍀

That was when it all began.

HibernateSearch

Infinispanの検索のバックエンドにElasticsearchを使う

Infinispan 9から実験的な扱いとして入っていた、検索のバックエンドにElasticsearchを使うElasticsearch IndexManagerですが (正確にはHibernate Searchが利用)、Infinispan 9.1.1.Finalで依存関係に入っているHibernate Searchが5.8.0.Finalに なったの…

InfinispanのAffinity Index(AffinityIndexManager)を試す

Infinispan 9.0.0.Finalから、実験的な機能としてAffinityIndexManagerという機能が追加されました。AffinityIndexManagerこれがなんなのかですが、前提知識としてInfinispanの全文検索機能の話が出てきます。 Infinispanの全文検索機能 Infinispanの全文検…

Hibernate Search × Elasticsearch

Hibernate Searchの5.6に向けて、Alphaリリースが続いています。現在は、Alpha3です。Hibernate Search 5.6では、Elasticsearchとの統合が試験的に追加されます。Hibernate Search 5.6.0.Alpha2 introduces Elasticsearch integration - In Relation ToThird…

Infinispan+Hibernate Searchでクラスタを構成した時の、インデックスの更新について

前回書いたエントリの、タイトルをひっくり返したものです。Hibernate Search+Infinispanでクラスタを構成した時の、インデックスの更新について http://d.hatena.ne.jp/Kazuhira/20150807/1438966241今回は、 Infinispanの検索機能を使うにあたって、Hiber…

Hibernate Search+Infinispanでクラスタを構成した時の、インデックスの更新について

以前、少し動かしては「なんかダメっぽい」程度の印象で止めていた、このテーマをもう少し見てみることにしました。内容としては、Hibernate Searchで使うLuceneのインデックスの保存先をInfinispanにして、なおかつクラスタを構成した時のインデックスの更…

Hibernate SearchとSpringのCache機能で、InfinispanのCacheを共有する

前に1度挫折したネタを、別のアプローチでやってみようということで。以前、Spring BootとHibernate Search、そしてInfinispanを使って、こんなエントリを書きました。Spring Boot×Hibernate Searchで、インデックスを複数Nodeで共有する http://d.hatena.ne…

Hibernate Searchで、インデックスを手動変更する

個人的に続けていたHibernate Searchネタですが、ちょっと間が空きましたけど今回で一区切りです。お題は、インデックスの手動メンテナンス。Hibernate Searchを使っていると、通常JPAのEntityManagerに対して永続化すると勝手にインデキシングされるため、…

Hibernate SearchでExplanation(スコアの計算式)を取得する

Luceneを使ったアプリケーションで、(見る気になるかどうかはなんともですが)どうしてDocumentがヒットしたのか、スコアなどを見るにはExplationを利用します。Hibernate Searchでも取得できるのかなと思ったら、こちらに記載がありました。Understanding …

Hibernate Searchと数値フィールド

Luceneでドキュメントに数値を保存する時、数値向けのフィールドとしてIntFieldやLongField、DoubleFieldなどを使うことができます。ですが、これらはTermとしてはちょっと別物になるので、普通のクエリでは検索できずNumericRangeQueryを使うことになります…

Hibernate Searchでファセットを使う - 関連Entity編

先ほど、Hibernate Searchを使ったファセットの基本的な使い方について書きました。その続きになります。Hibernate Searchでファセットを使う - 単一Entity編 http://d.hatena.ne.jp/Kazuhira/20150125/1422187821このうち、Discreteを書籍のタグの例で示し…

Hibernate Searchでファセットを使う - 単一Entity編

検索でよく使われそうな機能の中に、ファセットというものがあります。ファセットがどういうものかは、見た方が早いですね。下記は、Amazonで「カテゴリ」に「本」を選び、キーワード「java」で検索した時に左ナビに表示されるものです。 また、こういう範囲…

Hibernate Searchで保存したインデックスを、インデックスブラウザ「Luke」で見る

Luceneのインデックスを見るツールとして、「Luke」というインデックスブラウザがあります。Luke - Lucene Index Toolbox https://code.google.com/p/luke/しかし、オリジナルのLukeはLucene 4系には対応しておらず、ここからforkされたものが存在するようで…

Hibernate Searchでシノニム(類義語)を使う

Hibernate Searchを使って、シノニム(類義語)を使ってみます。シノニムは、類義語や同義語を意味するもので、Luceneで使う場合ではシノニムとして定義した類似の単語を使って見かけは違う単語でも検索でヒットさせることができるようになります。先ほどはK…

Hibernate Search+Kuromojiで、ユーザ定義辞書を使う

Hibernate Searchを使った日本語検索を少し前に書きましたが、せっかくなのでもう少しHibernate Searchネタを続けてみようと思います。マイペースで。Luceneで形態素解析といえばKuromojiが導入が簡単ですが、辞書にない単語については結果が変なことになる…

Hibernate Searchで試す、日本語検索 - 形態素解析+N-gram編

先ほど、Hibernate Searchを使って日本語検索を形態素解析、N-gramでそれぞれ試してみました。Hibernate Searchで試す、日本語検索 - 形態素解析編 http://d.hatena.ne.jp/Kazuhira/20150110/1420889429Hibernate Searchで試す、日本語検索 - N-gram編 http:…

Hibernate Searchで試す、日本語検索 - N-gram編

先ほど、Hibernate Searchを使った日本語検索ということで、Kuromojiを使った形態素解析を試したこんなエントリを書きました。Hibernate Searchで試す、日本語検索 - 形態素解析編 http://d.hatena.ne.jp/Kazuhira/20150110/1420889429※続きも書きました Hib…

Hibernate Searchで試す、日本語検索 - 形態素解析編

ここ最近、Luceneネタをそれほど扱っていませんでしたが、Hibernate Searchをちょっとずつ見始めているので、これを機にHibernate Searchを使って日本語検索を試してみようと思いまして。Hibernate Searchを使うと、JPA(というかHibernate)とLuceneを統合…

Spring BootとHibernate Searchで遊ぶ

最近、Hibernate Searchの5.0.0.Finalがリリースされました。Hibernate Search http://hibernate.org/search/Hibernate Search 5系から使用するLuceneが4.10系になったので、試してみようと思い、どうせならとSpring Bootを使って遊んでみました。こんなもの…

Spring Boot×Hibernate Searchで、インデックスを複数Nodeで共有する

こちらのエントリの続きです。Spring BootとHibernate Searchで遊ぶ http://d.hatena.ne.jp/Kazuhira/20141223/1419330401ここで作成したアプリケーションで持つLuceneのインデックスを、複数Nodeとして起動したアプリケーションで共有してみます。Luceneの…

Hibernate Search × Infinispan × WildFly

WildFlyに、Hibernate Searchが同梱されるようになったと聞き、せっかくなので試してみることにしました。Hibernate Searchが使用する、Luceneのインデックスの保存先はInfinispanとします。また、最終的にはWildFlyにCache Containerを定義して、クラスタリ…

Infinispanで検索してみる

Distributed FrameworkとかMap Reduce Frameworkとか触っていましたが、よくよく考えるとその前に「検索って機能があるか見てないよなー」と思い、ここで触ってみることに。Querying Infinispan https://docs.jboss.org/author/display/ISPN/Querying+Infini…