使用MapReduce作为Mongo数据库聚合管道中的一个阶段

时间:2017-04-25 10:30:44

标签: mongodb autocomplete mapreduce full-text-search aggregation-framework

我想使用Mongo DB MapReduce功能和聚合查询。

以下是我认为可能成为聚合管道的一部分的阶段。

  1. 根据文档和内容中的内容过滤用户有权访问的文档 传递安全上下文(用户的角色) (使用 $ REDACT
  2. 根据一个或多个条件过滤(使用 MATCH
  3. 根据上述过滤对返回文档中的单词进行标记并填充a 集合(使用 MAPREDUCE )(或)返回文档内嵌
  4. 根据用户查询已填充的集合/返回的文档内联单词 标准使用类似查询( REGEX )并返回单词以及它们 位置
  5. 我能够在聚合管道中实现步骤1,2和4。

    我可以通过在Mongo DB中使用mapreduce功能分别实现第3阶段。

    我想将mapreduce操作也作为聚合管道中的一个阶段,并使用它从前面的步骤接收过滤的文档,并将处理后的结果传递给下一步。

    mapreduce操作基于样本映射和reduce操作。我打算在下面的stackoverflow问题中使用map,reduce和finalize共享函数。

    Implement auto-complete feature using MongoDB search

    我的查询是我现在知道我们是否可以将MapReduce操作作为Mongo数据库聚合管道的一部分,如果可以,我们可以将其用作内联并将其传递给下一阶段。

    我正在使用Spring Data Mongo DB来实现Mongo数据库聚合解决方案。

    如果有人实施了相同的内容,请帮助我。

0 个答案:

没有答案