共计 934 个字符,预计需要花费 3 分钟才能阅读完成。
这篇文章给大家介绍分布式计算 Hadoop 指的是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
Hadoop 是什么:Hadoop 是一个开发和运行处理大规模数据的软件平台,是 Appach 的一个用 java 语言实现开源软件框架,实现在大量计算机组成的集群中对海量数据进行分布式计算。
Hadoop 框架中最核心设计就是:HDFS 和 MapReduce。HDFS 提供了海量数据的存储,MapReduce 提供了对数据的计算。
数据在 Hadoop 中处理的流程可以简单的按照下图来理解:数据通过 Haddop 的集群处理后得到结果。
HDFS:Hadoop Distributed File System,Hadoop 的分布式文件系统。
大文件被分成默认 64M 一块的数据块分布存储在集群机器中。
如下图中的文件 data1 被分成 3 块, 这 3 块以冗余镜像的方式分布在不同的机器中。
MapReduce:Hadoop 为每一个 input split 创建一个 task 调用 Map 计算,在此 task 中依次处理此 split 中的一个个记录 (record),map 会将结果以 key–value 的形式输出,hadoop 负责按 key 值将 map 的输出整理后作为 Reduce 的输入,Reduce Task 的输出为整个 job 的输出,保存在 HDFS 上。
Hadoop 的集群主要由 NameNode,DataNode,Secondary NameNode,JobTracker,TaskTracker 组成。
如下图所示:
NameNode 中记录了文件是如何被拆分成 block 以及这些 block 都存储到了那些 DateNode 节点。
NameNode 同时保存了文件系统运行的状态信息。
DataNode 中存储的是被拆分的 blocks。
Secondary NameNode 帮助 NameNode 收集文件系统运行的状态信息。
JobTracker 当有任务提交到 Hadoop 集群的时候负责 Job 的运行, 负责调度多个 TaskTracker。
TaskTracker 负责某一个 map 或者 reduce 任务。
关于分布式计算 Hadoop 指的是什么就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。