2009-05-20 2 views
3

Есть ли у кого-нибудь опыт использования Terracotta с Hibernate Search для удовлетворения запросов приложений?Teracotta and Hibernate Поиск

Если это так:

  1. Что величина "объекта обновлений" она может обрабатывать? (Как работает )

  2. Какая производительность выполняет запросы ?

  3. Можно ли использовать Терракотовая Hibernate Search даже без база данных, поддержка, чтобы удовлетворить все «запросы» в памяти?

ответ

4

Я технический директор Terracotta. Я провел некоторое время в прошлом месяце, глядя на Hibernate Search. Он не построен таким образом, чтобы быть прозрачным с помощью Terracotta. Вот почему в двух словах: Hibernate имеет настраиваемую JMS-репликацию индексов Lucene в JVM.

Основная идея поиска заключается в том, что общение с локальным диском под lucene работает очень хорошо, в то время как фрагментация или разделение индексов Lucene по сети вводит слишком много времени, так как Lucene кажется плохой, когда это не вина Lucene. С этой целью HIbernate Search не использует JBossCache или любые схемы разбиения на разделы/кэширование в памяти и вместо этого полагается на JMS и каждый локальный диск JVM, чтобы обеспечить самую последнюю индексацию в кластере с одновременной низкой задержкой , Тогда красота Hibernate Search заключается в том, что стандартные запросы Hibernate и многое другое могут запускаться через Hibernate при этих индексах естественного языка на каждой машине.

У Terracotta оказалось, что у нас была аналогичная идея с Эммануэлем и был построен продукт SearchableMap поверх Compass. Каждая машина получает свое собственное хранилище Compass, а хранилище настроено на локальное распространение на диск. Terracotta используется для создания возможности записи с несколькими мастерами, где любая JVM может добавлять к индексу, а delta отправляется через Terracotta для повторного воспроизведения/повторного использования локально на каждом диске. Он работает так же, как Hibernate Search, но с DSO в качестве сетевого протокола вместо JMS и без хороших интерфейсов Hibernate, но вместо этого с интерфейсами Compass.

Я думаю, что мы будем поддерживать Hibernate Search w/help от JBoss (им нужно будет отделить JMS impl как подключаемый) к концу года.

Теперь ваши вопросы прямо:

1.Object обновление/сек в Hibernate или SearchableMap должно быть достаточно высоко, поскольку оба посылают только дельты. В случае Hibernate это функция нашего JMS-провайдера. В Terracotta он масштабируется, просто добавив больше Terracotta Servers в массив.

  1. Производительность запросов в обоих случаях очень быстрая. Производительность локальной памяти в большинстве случаев. И если вам нужно заходить на диск с диска, то получается, что большинство ОС отлично справляются с задачей и могут быстрее реагировать на запросы, чем любая кластерная работа на основе сети.

  2. Это будет, я думаю, как только мы заставим JBoss отказаться от своих предположений JMS и т. Д.

Приветствия,

--Ari

2

Так как люди на форумах Hibernate продолжают со ссылкой на этот пост, я чувствую в необходимости указать на то, что в то время как комментарии Ари, где корректных в начале 2009 года, мы развиваемся и совершенствуемся.

Hibernate Search предоставляет набор внутренних каналов из коробки, как уже упоминалось на JMS, и более недавнее добавление с использованием JGroups, но мы сделали его довольно простым подключением к альтернативным реализациям или переопределением некоторых.

В дополнение к использованию пользовательского бэкэнд теперь возможно, поскольку версия 4 заменяет всю стратегию, и вместо того, чтобы изменять реализацию бэкэнд, вы можете использовать IndexManager, который следует за другим дизайном и вообще не использует бэкэнд ; в это время у нас есть только два IndexManager, но мы работаем над другими альтернативами; опять же идея состоит в том, чтобы обеспечить хорошие реализации для наиболее распространенных

У этого есть база данных, основанная на Infinispan, для очень быстрого распространения индекса на разных узлах, и это должно быть прямо вперед, чтобы вносить свой вклад на основе Terracotta или любой другой кластеризации технологии. Появляются новые решения.