gpt4 book ai didi

parallel-processing - MongoDB:在没有并行性的情况下使用 MapReduce 有什么意义?

转载 作者:IT老高 更新时间:2023-10-28 13:10:15 26 4
gpt4 key购买 nike

引用 http://www.mongodb.org/display/DOCS/MapReduce#MapReduce-Parallelism

As of right now, MapReduce jobs on a single mongod process are single threaded. This is due to a design limitation in current JavaScript engines. We are looking into alternatives to solve this issue, but for now if you want to parallelize your MapReduce jobs, you will need to either use sharding or do the aggregation client-side in your code.

在没有并行性的情况下,与更简单或更传统的查询和数据聚合方法相比,MapReduce 有哪些优势?

为避免混淆:问题不是“面向文档的数据库相对于传统的关系数据库有什么好处”

最佳答案

在更简单或更传统的查询上使用 MapReduce 的主要原因是它可以简单地完成简单查询无法完成的事情(即聚合)。

一旦您需要聚合,使用 MongoDB 有两个选项:MapReduce 和 group 命令。 group 命令类似于 SQL 的“group by”,其局限性在于它必须在单个数据库响应中返回其所有结果。这意味着只有当您的结果少于 4MB 时才能使用组。另一方面,MapReduce 可以做任何“分组依据”可以做的事情,但会将结果输出到新集合,因此结果可以根据需要大。

另外,并行性即将到来,所以最好有一些练习:)

关于parallel-processing - MongoDB:在没有并行性的情况下使用 MapReduce 有什么意义?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2794377/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com