Использование Apache Lucene с Infinispan

Улучшает ли использование Infinispan с Lucene производительность Lucene? В самом Lucene есть каталог RAM. Infinispan лучше, чем RAM Directory?


person jboss problem    schedule 15.04.2012    source источник
comment
Пожалуйста, дайте некоторое предложение по вышеуказанному вопросу.   -  person jboss problem    schedule 17.04.2012


Ответы (1)


RAMDirectory, предоставленный Lucene, на самом деле не предназначен для высокой производительности. Реализации на основе файловой системы с использованием NIO и карты памяти, вероятно, более эффективны, если только вы не имеете дело с индексами, предназначенными для проверки концепций и модульных тестов.

Каталог Infinispan, как и файловая система, настроен на хорошую производительность; на самом деле он немного быстрее, чем файловая система, для выполнения операций записи (по понятным причинам); гонка скорости за производительностью чтения - это тонкая битва, сильно зависящая от вашего фактического варианта использования.

Основной причиной использования каталога Infinispan является не чистая производительность, а:

  1. это способность реплицировать и распределять индекс по нескольким узлам: использование общих файловых систем для FSDirectory обычно проблематично и совсем не быстро.
  2. Он может работать как кэширующее хранилище со сквозной записью для более медленных служб сохранения. FS — это одно, но это может быть реляционная база данных, Cassandra, облачные сервисы хранения, такие как S3, ... [напишите свой плагин]
  3. Это (необязательно) транзакционный. При необходимости вы можете использовать его для участия в транзакциях XA.
person Sanne    schedule 18.04.2012
comment
Вы хотите сказать, что lucene с файлом на диске намного быстрее, чем каталог RAM? - person jboss problem; 25.04.2012
comment
Часто да, но, конечно, это зависит от многих факторов, особенно от размера индекса. - person Sanne; 26.04.2012