继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Hadoop核心项目

慕标5832272
关注TA
已关注
手记 1229
粉丝 229
获赞 1001

核心项目

webp

HDFS的架构

webp

Yarn的架构

webp

MapReduce的架构

webp

Storm的架构

webp

分布式存储系统HadoopDFS。它是一种本地文件系统之上的更高的抽象,把跨节点的组成的文件系统看成一个逻辑上的整体。它存储的思路是,把文件分成一个个block,每个block都有一定量的副本存储在不同的节点上,默认数量是3个,这保证了分布式存储的数据的稳定性。

HDFS的架构有NameNode、SecondaryNameNode、DataNode。NameNode节点主要负责客户端传来的读写请求,保存文件的metadata。SecondaryNameNode负责帮助NameNode合并editlog。DataNode负责储存Block,向NameNode汇报block信息、发送heartbeat。

HDFS写入文件的时候:客户端通过RPC向NN调用create()方法,NN检查文件是否存在,不存在并且有权限的话就会创建一个新文件,向客户端返回一个FSDataOutputStream,用于写数据。

HDFS读文件的时候,客户端通过RPC向NN调用open()方法,NN获得每个数据块的位置信息,返回客户端FSDataInputstream,客户端调用其read()方法读取数据块。

分布式计算框架中最流行的是MapReduce。它把并行计算、容错等细节问题封装到库里,程序员只需要编写map和reduce函数就可以了。这种模型的灵感来自函数式编程中的map和reduce原语。Map函数接受KV值,输出KV值,reduce函数接收KEY和相同key构成的value的集合的迭代器,再输出KV值。



作者:爱我的程序人生
链接:https://www.jianshu.com/p/ad8b9b91125e


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP