map reduce-仅适用于键值nosql数据模型?

cczfrluj  于 2021-06-04  发布在  Hadoop
关注(0)|答案(1)|浏览(345)

(我只有nosql的概念知识,没有工作经验)
我知道以下类型的nosql数据库:
键值、列族、文档数据库(聚合)
图形数据库
map-reduce范式是否适用于所有人?我的猜测是否定的,因为map reduce经常用键和值来讨论,但是由于不同nosql存储之间的区别不是很明确,我想知道map reduce在哪里适用,在哪里不适用。由于我正在评估我的一些应用程序想法使用哪个数据库,我应该考虑是否有可能实现大规模处理,而不管我使用哪个商店。

kdfy810k

kdfy810k1#

对map reduce的支持可能不应该成为您选择数据存储的基础。
首先,Map缩减并不是进行大规模数据处理的唯一途径。例如,mongodb很早就实现了map reduce支持(在v1中),但后来添加了更通用的聚合框架,包含了许多使用map reduce的任务。
map-reduce只是处理大型数据集的一种范例。仅当应用程序需要使用Map器处理大量数据记录,然后需要使用缩减器将结果组合在一起时才使用它。这就是它真正的作用。至于范例什么时候适用,什么时候不适用,只要看看你的用例就知道了。您是否需要一致地处理所有记录,然后合并结果?或者有没有别的方法来表达你的问题?
看一下mongo聚合框架的例子,其中聚合被用作许多问题的简单替代方案,对于这些问题,强迫它们进入map-reduce问题将是过分的。
它还可以帮助您深入了解您的问题,即是否可以在不使用map reduce的情况下进行大规模数据处理,答案是肯定的。显然,map reduce有助于生成搜索索引,但大型数据集上的许多问题受益于其他范式。
网上搜索“MapReduce的替代方案”也会很有帮助。

相关问题