Поиск Ehcache и сравнение с Lucene - PullRequest
1 голос
/ 24 марта 2011

Существует существующее сравнение ehcache и lucene некоторое время назад, и ответ - их нельзя сравнивать напрямую. Однако в EhCache 2.4 теперь есть функция поиска . Мы думаем перенести наше решение Lucene на EhCache Search. Одно из преимуществ, которое я вижу, заключается в том, что когда EhCache интегрируется с Terracotta, его можно легко распределить и индексировать. Любые другие проблемы, которые я должен учитывать перед миграцией? Может ли кто-нибудь поделиться своим опытом использования EhCache Search в качестве решения для кэширования и индексирования?

Спасибо.

Обновление : после быстрого теста кажется, что EhCache Search не позволяет сохранить кэш на диске. Я получаю сообщение об ошибке ниже, если я пытаюсь установить diskPersistent = "true" в моем ehcache.xml. Это означает, что индексированный кеш нужно перестраивать каждый раз. Я вижу, что это один из недостатков.

Атрибуты поиска не поддерживаются этот тип магазина: net.sf.ehcache.store.compound.impl.DiskPersistentStore

1 Ответ

0 голосов
/ 31 марта 2011

Вот список ограничений:

  1. Невозможно сохранить доступный для поиска кэш на диск.
  2. Пользовательские AttributeExtractor поддерживают только определенные типы, что означает, что вы не можете использовать атрибут поиска с параметризацией T, например net.sf.ehcache.search.Attribute.eq (T), net.sf.ehcache. search.Attribute.between (T, T) и т. д., но только net.sf.ehcache.search.Attribute.ilike (String), что может привести к снижению производительности и уменьшению ограничений поиска. Мне нужно отредактировать исходный код EhCache, чтобы он поддерживал мой пользовательский тип, так как я хочу использовать Attribute.eq (T).

Спасибо.

...