1

我使用的是 REPLACE 输出类型,这意味着 MR 结果存储在集合中。

两个 http 请求在不同的线程中同时进行 MR - 这意味着我不能使用相同的输出集合名称,因此每个请求都会有一个集合,这可能会导致创建许多 MR 结果集合。

你如何处理这种情况?你如何限制并发请求的数量?如果查询重复,您是否保留 MR 结果集合?

简而言之,我很想知道其他人如何管理这些 MR 集合(如果有的话)。

我正在使用 mongo java 驱动程序(2.7.3)和 Restlet(2.0.10)

谢谢。

4

1 回答 1

0

好吧,如果要多次使用结果,那么为每个 map-reduce 查询创建一个唯一的集合并在需要答案时从该集合中检索答案是有意义的。

在服务器中设置一个指示 MR 正在运行的标志可能会使您免于同时执行 MR 收集。如果 MR 作业是一项消耗资源的作业,最好将 MR 的结果保存在某个地方并在需要时检索它。

于 2013-01-02T19:07:52.133 回答