使用Spring Data与Lucene/Solr

5
我正在使用Spring Data(Mongo)为我的Web应用程序(类似社交网站)提供支持。现在,我希望针对应用程序中编写的内容(如帖子、标签、好友等)提供搜索功能。
我相信Lucene/Solr是处理这种情况的更好的库之一,但不确定如何与Spring Data集成使用(或者可能是Spring内置对它的支持)。
希望能够提供帮助(文档,链接,博客文章等)!

1
我不是很了解Spring Data,但你应该阅读solr文档 - 我想那可能会有所帮助! - aishwarya
4个回答

5

3

Spring Data for Solr 项目为从 Solr 查询数据提供了自然的类似于 Spring Data 的 APIs。阅读示例可快速了解。


2

1

将它们集成起来相对容易,但难点在于维护它们之间的数据一致性。例如,您会如何回答以下问题:

  • 您打算如何使用mongo和sorl执行CRUD操作?您是先写入Mongo(等待确认/不等待确认),然后再写入Solr吗?
  • 如果您正在使用异步写入Mongo,则当您将数据发送到Solr时,如果Mongo出现异常(数据存在于Solr中,但不存在于Mongo中),会发生什么情况?
  • 如果尝试写入Solr时出现错误(数据存在于Mongo中但不存在于Solr中),会发生什么情况?
  • 如果您从Mongo中删除了某些内容,并且紧接着某人执行了一个搜索,其中Solr返回该已被删除的文档,因为Solr仍然将该文档索引化怎么办?

重点是,在mongo和solr不同步的窗口期内会存在不一致性,您可能希望处理至少部分问题。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接