2012-04-19 8 views
-1

У меня есть несколько объектов, и у меня есть два способа их хранения: использование hibernate-search (lucene) с индексами или как объекты спящего режима (записи postgres).сравнение hibernate-search и hibernate-core

Мне не нужен полный текстовый поиск как таковой, просто поиск по значениям свойств (точное совпадение) и, возможно, диапазон.

Есть ли сравнение производительности для этих двух вариантов использования?

+0

Мне очень маловероятно, что вы это нашли. Основная причина в том, что это зависит от множества факторов. Производительность для запросов Hibernate в большей степени зависит от базы данных underliying, чем от самого Hibernate, поэтому «общее сравнение» не является логической задачей. –

+0

ОК. так как насчет только postgres? и я ищу более четкий ответ. если они более или менее сопоставимы, в зависимости от настройки, это хорошо. но если lucene на 100 раз медленнее, то я думаю, что тип базы данных не имеет значения. – IttayD

ответ

2

Вопрос как сравнение яблока и груш. Если вам нужно постоянное хранилище и возможность запрашивать и извлекать объекты, вам нужно использовать ядро ​​спящего режима.

Hibernate Search - это, прежде всего, расширение для предложения Hibernate Core (полный текст). Да, возможно также сохранить значения сущности в индексе и получить их через прогнозы. В этом случае, однако, вы больше не имеете дело с объектами, а с объектными массивами. Вы упускаете из рук гибернатов, живущих в жизненном цикле.

Мое предположение заключается в том, что вы хотите использовать Hibernate Core (ORM) и запросы Criteria.

Смежные вопросы