3

目前,我正在研究使用 MongoDB 在 Grails 应用程序上实现基于 Lucene 的搜索的方法。

要求包括以下内容:

  • 要索引的数据存储在 MongoDB 中
  • 仅插入数据(不更新,不删除)
  • 该应用程序必须在CloudBees平台上运行
  • 搜索应该在没有任何外部服务(如 Searchly 或 WebSolr)的情况下实现

到目前为止,这似乎不是很复杂,因为有 Grails 插件。但是,我面临的主要问题是我的应用程序使用动态MongoDB 集合。所以我没有每个集合的域类。相反,应该索引的集合可以具有任意名称和模式。结果我不能使用像searchable这样的 Grails 插件,因为这些插件似乎只适用于固定域类(或者我错了吗?)。

有没有人有关于如何在这种情况下实施搜索的经验?任何提示、链接、提示或建议?

4

1 回答 1

0

您可以为动态 MongoDB 集合使用一种索引和多种类型。但是,该逻辑应该由您自己编码,因为集成模块是在一系列领域模型索引中完成的。

对于 ElasticSearch,您可以通过 groovy 将 Jest 用于 ElasticSearch https://github.com/searchbox-io/Jest

不幸的是,Searchly 为单个集合提供了开箱即用的 MongoDB 集成。因此,现在您还需要查询 MongoDB(您动态创建的集合),将数据索引到新类型下的索引并查询它。

由于没有相关答案,我的旧帖子已被删除,好吧:)

于 2013-10-29T20:34:03.350 回答