2012-04-19 34 views
-1

我有一些對象,我有兩種存儲方式:使用帶索引的hibernate-search(lucene)或hibernate實體(postgres記錄)。hibernate-search和hibernate-core的比較

我不需要全文搜索本身,只需通過屬性值(完全匹配)和範圍搜索即可。

這兩個用例是否有任何性能比較可用?

+0

我覺得這很不可能。主要原因是它取決於很多因素。 Hibernate查詢的性能更依賴於底層數據庫而不是Hibernate本身,因此「通用比較」不是合乎邏輯的事情。 – 2012-04-19 06:54:37

+0

好的。那麼postgres怎麼樣?我正在尋找更明確的答覆。如果它們或多或少具有可比性,則取決於調整,這是好的。但如果lucene慢100倍,那麼我猜數據庫的類型並不重要。 – IttayD 2012-04-19 06:58:48

回答

2

問題就像比較蘋果和梨。如果您需要持久性存儲以及查詢和檢索實體的功能,則需要使用hibernate核心。 Hibernate Search主要是Hibernate Core產品(全文)搜索的擴展。是的,可以將實體值存儲在索引中,並通過預測來檢索它們。然而,在這種情況下,你不再處理實體,而是使用對象數組。您錯過了Hibernate提供的生命週期保證。

我的猜測是你希望Hibernate Core(ORM)加上Criteria查詢。