Hadoop和noSQL有什么区别


15

我听说了许多可帮助人们处理数据的工具/框架(大数据环境)。

一种称为Hadoop,另一种称为noSQL概念。加工点有什么区别?

它们是互补的吗?


3
因缺乏研究工作而投票否决。Hadoop和noSQL在其他地方都有很好的定义。
Spacedman 2014年

@Spacedman我同意,但是这是从问题的一个例子51区那么如果之前我猜它是有效的它并没有删除,并且,即使我知道答案时,我张贴的问题(至少统称)。
рüффп

Answers:


16

Hadoop不是数据库Hadoop是整个生态系统。

Hadoop生态系统

大多数人在谈论hadoop时都会参考mapreduce工作。mapreduce作业将大型数据集分成一些小数据块,然后将其散布在节点集群上以继续进行。最后,每个节点的结果将再次作为一个数据集放在一起。


假设您将一组<String, Integer>城市中某些社区的人口装入Hadoop,并且想要获得每个城市的整个社区的平均人口(图1)。

图1

    [new york, 40394]
    [new york, 134]
    [la, 44]
    [la, 647]
    ...

现在hadoop首先将使用键映射每个值(图2)

图2

[new york, [40394,134]]
[la, [44,647]]
...

映射后,它将把每个键的值减小到一个新值(在此示例中,是每个键的值集的平均值)(图3)

图3

[new york, [20264]]
[la, [346]]
...

现在hadoop可以完成所有工作。现在,您可以将结果加载到HDFS(hadoop分布式文件系统)或任何DBMS或文件中。

那只是hadoop可以做的一个非常基本简单的例子。您可以在hadoop中运行更复杂的任务。

正如您在问题中已经提到的那样,hadoop和noSQL是互补的。我知道一些设置,即来自传感器的数十亿个数据集存储在HBase中,然后通过hadoop最终存储在DBMS中。


5

NoSQL是一种存储数据的方法,不需要某种关系。对设计的简单性和水平可伸缩性是它们存储数据的一种方式key : value。这有助于进行类似于Hadoop的处理。NoSQL数据库的使用实际上取决于所要解决的问题的类型。

这是一个不错的Wikipedia链接NoSQL

Hadoop是一个旨在存储和处理大量数据的系统。它是一个分布式文件系统dfs。这样做的原因是其设计的核心是假设硬件故障是常见的,因此会复制同一条信息,并将其分布在多台机器和机架上,因此,如果出现故障,没问题,我们还有两个副本。这也是Wikipedia中Hadoop的重要链接,您会发现,在我看来,它不仅是存储,还包括处理: Hadoop

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.