Использование Lucene / Solr с данными Spring - PullRequest
4 голосов
/ 04 декабря 2011

Я использую Spring Data (Mongo) для своего веб-приложения (рядом с веб-сайтом социальной сети).Теперь я хочу предоставить возможности поиска по содержимому, написанному в приложении (например, сообщениям, тегам, друзьям и т. Д.).

Я считаю, что Lucene / Solr - одна из лучшихбиблиотеки для таких случаев, но я не уверен, как использовать (интегрировать?) его с Spring Data (или, может быть, есть какая-то внутренняя поддержка для Spring).

Буду признателен за помощь (документация, ссылки, сообщения в блогах и т. Д.) По этому вопросу!

Ответы [ 4 ]

5 голосов
/ 29 мая 2012

Несмотря на то, что пост был уже давно, вы можете посмотреть на него https://github.com/SpringSource/spring-data-solr/

3 голосов
/ 17 октября 2012

Проект Spring для Solr предоставляет естественные данные Spring, такие как API, для запроса данных из Solr.Прочитайте примеры для быстрого обзора.

1 голос
/ 16 декабря 2011

Интегрировать их относительно легко, трудной частью является поддержание согласованности данных между ними. Например, как бы вы ответили на эти вопросы:

  • Как и когда вы собираетесь проводить CRUD с монго и сорлом? Вы пишете сначала в Монго (с / без ожидания подтверждения?), А затем в Solr?
  • если вы используете асинхронную запись с mongo, что произойдет, когда вы отправите данные в solr, а затем получите исключение для mongo (данные существуют в solr, но не существуют в mongo)?
  • Что произойдет, если при попытке записи в solr вы получите ошибку (данные существуют в mongo, но не в solr)?
  • если вы удаляете что-то из mongo, и сразу после этого кто-то выполняет поиск, где solr возвращает этот очень удаленный документ, потому что solr stil проиндексировал этот документ?

Дело в том, что будет окно несогласованности, в котором mongo и solr не синхронизированы, и вы, вероятно, захотите решить хотя бы некоторые из проблем.

1 голос
/ 10 декабря 2011

Я нашел здесь хорошее прочтение - http://adeithzya.wordpress.com/2011/08/25/using-apache-solr-with-spring-framework - которое бьет по гвоздю по голове!

...