菜鸟的hadoop的学习笔记--HDFS笔记
来源:互联网 发布:阿里云的解决方案ppt 编辑:程序博客网 时间:2024/06/04 18:05
本人纯属菜鸟,写这个博客目的主要是为了加深理解,高手勿喷!
MapReduce的补充:完整的Map/Reduce的作业过程会把输入的数据分成很多独立的块,Map任务以完全独立的方式来处理他们,Map处理后的中间结果会被排序,然后分组进入到Reduce任务中,作业的输入输出都会放在文件系统中,Map/Reduce框架和HDFS运行在相同的节点,那么计算和存储操作都会在同一个节点上面进行。Master负责把任务指派给Slave,Slave只负责执行Master指派给他的任务。Hadoop上面运行的作业需要指明程序的输入输出的地址,根据指定的接口来完成Map和Reduce任务函数的编写,同时包括这些函数的参数。
进入正题,关于HDFS的笔记。
HDFS主要使用了NameNode、DataNode和Client来进行文件系统的管理。NameNode可以看做是分布式文件系统的管理者,主要负责管理文件系统的命名空间、文件系统的配置信息等,Namenode会将文件系统的metadata存储在内存中,文件系统的metadata包括文件信息、每一个文件的对应的文件块的信息以及文件块在Datanode存储的信息,Datanode中保存了所有的Block的Metadata,周期的将Block信息发送给Namenode,Client就是需要获取HDFS文件的应用程序
(1)文件写入
a、client向Namenode发送文件写入的请求
b、namenode向client返回应答信息,应答信息包括其管理datanode的信息
c、client根据应答信息将大的文件分成对应大小的文件块,然后将这些文件块存储到相应的datanode上(根据DataNode的地址信息,按顺序将文件块放在datanode上面)
(2)文件读取
a、client向namenode发送文件读取的请求
b、namenode返回文件存储 的datanode信息
c、client读取datanode中的文件块信息
(3)文件块的复制
a、NameNode发现部分文件的Block不符合最小复制数这一要求,
b、通知datanode相互复制Block
c、datanode开始相互复制
HDFS的特点
1、文件块的放置,一个文件块有三个备份,一份放在NameNode指定的DataNode上,还有指定的备份的Datanode上面,还有一份放在同一rack(机架)的Datanode
2、心跳机制,用心跳机制监测Datanode健康状况,有点像webservice里面的心跳包机制来维护http连接。
3、数据复制,根据datanode里面的存储利用率,加入存储利用率超过了10%,就把这个Datanode里面的部分Block转移到其他的Datanode上面。
~~~~待续
- 菜鸟的hadoop的学习笔记--HDFS笔记
- hadoop菜鸟的学习笔记---Hadoop体系结构
- hadoop学习笔记:HDFS的安全模式
- hadoop-hdfs学习笔记
- Hadoop学习笔记(五):一些关于HDFS的基本知识
- hadoop学习笔记3:shell下的hdfs操作
- hadoop学习笔记(HDFS的文件操作)
- hadoop学习笔记之hdfs的文件上传下载
- <hadoop学习历程>--笔记心得5-HDFS的特点
- Hadoop学习笔记(3)-java操作hdfs的API接口
- hadoop学习笔记--5.HDFS的java api接口访问
- Hadoop学习笔记:HDFS的java API使用
- 菜鸟的学习笔记
- 菜鸟的Hadoop (Before YARN) 学习笔记 (一) WordCount
- Hadoop学习笔记之---HDFS
- hadoop学习笔记<三>----HDFS
- hadoop学习笔记-HDFS原理
- Hadoop学习笔记---HDFS简介
- linux内核中,在/drivers/char目录的Kconfig文件中加入自己编写的新驱动,make menuconfig却不显示的问题
- 如何防止表单重复提交
- Android解惑 - 为什么要用Fragment.setArguments(Bundle bundle)来传递参数
- HDU 1575 Tr A(矩阵快速幂 水 入门)
- shell脚本实现俄罗斯方块
- 菜鸟的hadoop的学习笔记--HDFS笔记
- VC++6.0开端
- 移动开发-lua 日记 -- 20150514
- cocos2dx Sprite触摸监听
- Apache 本地配置
- 项目实践之json字符串
- Eclipse: Problem: Unable to locate the Javac Compiler in...
- 打开POWER_SAVING与串口同时使用时的冲突解决
- 学习练习--UI界面实现个人所得税计算