大数据最新【大数据数据应用】(2)

优点:1.高容错性

  1. 数据自动保存多个副本。通过增加副本的形式提高容错性。

  2. 某一个副本丢失后,可以自动恢复。

  3. 适合处理大数据。

  4. 数据规模:能够处理数据规模达到GB、TB、甚至PB级别的数据。

  5. 文件规模:能够处理百万规模以上的文件数量,数量相当之大。

  6. 可构建在廉价机器上,通过多副本机制,提高可靠性。

缺点:1.不适合低延迟时数据访问,比如我无法处理毫秒级的储存数据。

  1. 无法高效的对大量小文件进行存储。

  2. 储存大量小文件会占用NameNode大量的内存来储存文件目录和快信息,而NameNode的内存是有限的。

  3. 小文件存储的寻址时间会超过读取时间,违反HDFS的设计目标。

  4. 不支持并发写入、文件会随即修改

  5. 一个文件只能有一个写,不允许多个线程同时写

  6. 仅支持数据追加(append),不支持文件的随即修改

  7. HDFS组成构架

  8. Namenode(nn)就是master,是一个主管者、管理者。

  9. 管理HDFS的名称空间

  10. 配置副本策略

  11. 管理数据块(block)映射信息

  12. Datanode就是slave。Nameenode下达命令,datanode执行实际的操作

  13. 存储实际的数据块

  14. 执行数据块的读/写操作

  15. Client就是客户端。客户端是一个抽象的概念,无论是命令行还是通过API还是web界面来操作都是客户端。

  16. 文件切分。文件上传HDFS的时候,client将文件切分成一个个Block,然后进行上传

  17. 与NameNode交互,获取文件的位置信息

  18. 与DataNode交互,获取或写入数据

  19. Client提供一些命令来管理HDFS,比如NameNode格式化

  20. Client可以通过一些命令来访问HDFS ,比如对HDFS增删改查操作

  21. Secondary NameNode并非NameNode的热备。当NameNode挂掉的时候,并不能马上替换NameNode并提供服务

  22. 辅助NameNode,分担其工作量,比如定期合并Fsimage和Edits,并推送给NameNode

  23. 在紧急情况下,可辅助回复NameNode

  24. HDFS文件块大小

HDFS中的文件在物理上是分块存储(Block)块的大小可以通过配置参数(dfs。Blocksize)来规定,默认大小在Hadoop2.x/3.x版本中是128M。

寻址时间为传输时间的1%时,则为最佳状态。因此,传输时间=10ms/0.01=1000ms=1s而目前磁盘传输速率普遍为100MB/s。

  1. HDFS读的流程

  2. 读取数据流程

  3. 客户端通过Distributed File System向NameNode请求下载文件,NameNode通过查询元数据,找到文件所在的DataNode地址

  4. 挑选一台DataNode(就近原则,然后随机)服务器。请求读取数据

  5. DataNode开始数据传输数据给客户端(从磁盘里面读取数据输入流,以Packet为单位来做实验)

  6. 客户端以Packet为单位接受,先在本地缓存,然后写入目标文件

  7. 写数据流程

  8. 客户端通过Distributed File System模块向NameNode请求上传文件,NameNode检查目标文件是否已存在,父目录是否存在

  9. NameNode返回是否可以上传

img
img

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 6
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值