2012-04-19 5 views
-1

私はいくつかのオブジェクトを持っており、それらを格納する2つの方法があります:インデックスでhibernate-search(lucene)を使うか、またはhibernateエンティティ(postgresレコード)hibernate-searchとhibernate-coreの比較

フルテキスト検索自体は必要ありません。プロパティ値(完全一致)と多分範囲で検索するだけです。

これらの2つのユースケースで使用できるパフォーマンス比較はありますか?

+0

私はあなたがこれを見つけることは非常にありそうもないと感じます。主な理由は、それが多くの要因に依存するということです。 Hibernateクエリのパフォーマンスは、Hibernate自体よりも基礎データベースに多く依存するため、 "汎用比較"は論理的なものではありません。 –

+0

ちょうどポストグルはどうですか?私はより明確な返信を探しています。チューニングによって多かれ少なかれ比較できますが、これは良いことです。しかし、luceneが100倍遅い場合は、データベースの種類は関係ありません。 – IttayD

答えて

2

質問はリンゴと梨を比較するようなものです。永続的なストレージが必要で、エンティティのクエリと取得が必要な場合は、hibernate coreを使用する必要があります。

Hibernate Searchは、主にHibernate Core(全文)検索の拡張です。エンティティ値をインデックスにも格納し、投影によって取得することは可能です。しかし、この場合は、エンティティを扱うのではなく、オブジェクト配列を扱います。あなたは、Hibernateの提供するライフサイクルに欠けています。

私の推測では、Hibernate Core(ORM)とCriteriaクエリーが必要だと思います。

関連する問題