Hadoop总结

总结hdfs

一、hdfs的架构
这种架构主要由四个部分组成,分别为HDFS Client,NameNode,DataNode 和Secondary
二、namenode作用
1、接收客户端发来的读写流程
2、保存metdata信息,保存元数据,数据写在哪个datanode
3、管理Hdfs的命名空间
三、datanode作用
1、存储数据
2、启动datanode线程会向namenode汇报block信息,向namenode发送心跳保持联系3秒
3、执行数据块的读写操作
四、secondarynamenode作用
1、定期合并命名空间减少namenode的启动时间
2、当namenode挂了,可以从secondaryname中node恢复信息
3、定期合并Fsimage和Edits,并推送给namenode
五、总结hdfs shell 详细命令、
0、查看hdfs中的目录信息
Hadoop fs -ls /hdfs路径
1、上传文件到hdfs中
Hadoop fs - put /本地文件 /aaa
hadoop fs -copyFromLocal /本地文件 /hdfs路径 ## copyFromLocal等价于 put
hadoop fs -moveFromLocal /本地文件 /hdfs路径 ## 跟copyFromLocal的区别是:从本地移动到hdfs中
2、下载文件到客户端本地磁盘
hadoop fs -get /hdfs中的路径 /本地磁盘目录
hadoop fs -copyToLocal /hdfs中的路径 /本地磁盘路径 ## 跟get等价
hadoop fs -moveToLocal /hdfs路径 /本地路径 ## 从hdfs中移动到本地
3、在hdfs中创建文件夹
hadoop fs -mkdir -p /aaa/xxx
4、移动hdfs中的文件(更名)
Hadoop fs -mv /hdfs的路径 /hdfs的另一个路径
5、删除hdfs中的文件或文件夹
Hadoop fs -rm -r /aaa
6、修改文件的权限
hadoop fs -chown user:group /aaa
hadoop fs -chmod 700 /aaa
7、追加内容到已存在的文件
hadoop fs -appendTofile /本地文件 /hdfs中的文件
8、显示文本文件中的内容
hadoop fs -cat /hdfs中的文件
9、显示一个文件的末尾
hadoop fs -tail /hdfs中的文件
10、设置HDFS中文件的副本数量
hadoop fs -setrep 副本个数(8) / hdfs中的文件
六、hdfs的优缺点
优点
1、高容错性
(1) 数据自动保存多个副本。它通过增加副本的形式,提高容错性;
(2) 某个副本丢失以后,它可以自动回复。
2、适合大数据处理
(1)数据规模:能够处理数据规模达到 GB、TB、甚至 PB 级别的数据;
(2)文件规模:能够处理百万规模以上的文件数量,数量相当之大。
3、流式数据访问,它能保证数据的一致性。
4、可构建在廉价机器上,通过多副本机制,提高可靠性。
缺点
1、不适合低延时数据访问,比如毫秒级的存储数据,是做不到的。
2、无法高效的对大量小文件进行存储。
(1)存储大量小文件的话,它会占用 NameNode 大量的内存来存储文件、目录和块信息。这样是不可取的,因为NameNode 的内存总是有限的;
(2)小文件存储的寻址时间会超过读取时间,它违反了HDFS 的设计目标。
3、并发写入、文件随机修改。
(1)一个文件只能有一个写,不允许多个线程同时写;
(2)仅支持数据 append(追加),不支持文件的随机修改。
七、hdfs的读流程
1、客户端通过filesystem,向namenode发送请求下载 文件,namenode通过查询数据的元数据,查询文件在那几个datanode
2、挑选datanode就近原则,随机服务器 请求读取数据
3、datanode开始传输数据给客户端,从磁盘里面读取数据输入流
4、客户端以packet为单位接收,先在本地缓存,然后写入目标文件
八、hdfs的写流程
1、通过fileSystem模块向namenode发送请求上传文件,namenode检查目标文件是否存在,父目录是否存在
2、namenode返回是否可以上传文件
3、客户端 请求上传第一个 block 到那几个服务端datanode
4、namenode返回2个节点datanode
5、客户端通过 FSdataoutput 模块请求上传dn1上传,dn1调用到dn2, dn2调用到dn3。
6、dn1 dn2dn3逐级应答客户端
九、Hadoop1.x和Hadoop2.x版本的区别
在 Hadoop1.x 时代,Hadoop 中的 MapReduce 同时处理业务逻辑运算和资源的调度,耦合性较大。
在 Hadoop2.x 时代,增加了 Yarn。Yarn 只负责资源的调度,MapReduce 只负责运算。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值