博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
告诉你Hadoop是什么
阅读量:4962 次
发布时间:2019-06-12

本文共 871 字,大约阅读时间需要 2 分钟。

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任务.

转载于:https://www.cnblogs.com/s1ihome/p/3635175.html

你可能感兴趣的文章
JSP/Servlet 中的汉字编码问题
查看>>
《构建之法》(十)
查看>>
django之信号
查看>>
[noip2013]货车运输(kruskal + 树上倍增)
查看>>
简单工厂模式
查看>>
#hashMap冲突原理#详细
查看>>
基于单片机定时器---年月日时分秒的算法
查看>>
linux中IDE和SATA硬盘的区别
查看>>
关于清理缓存的解决方案
查看>>
编译时获得系统的日期和时间
查看>>
Unity3D写雷电游戏(一)
查看>>
Mybatis之使用注解开发CRUD
查看>>
C语言错误:request for member ‘xxx’ in something not a structure or union
查看>>
[LintCode] Pow(x, n) 求x的n次方
查看>>
冒泡排序逐步详解相关笔记(一)
查看>>
sql server split 分割 两种方法
查看>>
spring学习之@ModelAttribute运用详解
查看>>
语义分析应用——美通社
查看>>
数据类型及操作
查看>>
提高前端开发效率的N种方法
查看>>