HDFS/MR/YARN/HIVE/HBASE
2022-07-24 15:03:45 0 举报
大数据架构
作者其他创作
大纲/内容
c_3:distributedFileSystem文件系统根据配置的块大小进行切片
store
编译器
3、上传对应的文件
6、返回一个dn1,可以执行任务
5
c_4:当所有的block文件读取完成后拼装成最终的文件。
一次读取一组文件,进行reduce端的业务逻辑
brock
job1|job2|job3|job4
combine
container
datanode03
HDFS
4、返回需要写入的RS
环形缓冲区(一半存储数据的索引信息,一般存储数据的具体信息),将map端的数据写入到缓冲区,当使用率到80%的时候进行,益写
6、ack
memstore
datanode02
一个分区生成一个文件
客户端
nodemanager
storefile
1、任务调用
hlog
HDFS读文件流程
10
7、关闭流
D_6:写入数据成功后,返回成功给上一个DN
3、建立链接、读取数据
。。。。。。
N_3:根据需要上传切片数据的客户端位置,依据机架感知的逻辑和副本机制,分配存储的DN,进行返回
RegionServer
c_5:根据切片的个数,循环执行。将数据块分割成指定的块大小,传输到数据写入队列,通过队列进行数据向dn写入,同时将该队列的消费数据写入到ACK队列。
P1:grp1|P2:grp2
5、建立链接
c_1:hdfs客户端,创建distributedFileSystem文件系统
11、am通知nm启动任务
D_5:根据客户端传输过来的数据进行落盘写入;同时将该数据写入到下一个DN
优化器
client
2、nn返回可以上传
MapReduce
8、读取对应的文件和JAR,生成task
HDFS写文件流程
yarn调度
2.meta所在的rs
c_3:客户端创建DFInputStream,和最前的一个dn建立管道链接。并行进行数据的读取
4、关闭流
消费者
c_4:客户端创建DFOutputStream,和最近的一个dn建立管道链接
文件2
分区2:grp2
1、客户端请求
Hmast
3、连接对应的rs
5、连接写入的RS写入数据
D_6:写入数据成功后,返回成功给客户端
执行器
4、返回上传的DN地址址
12、启动任务舞
N_1:客户端判断该用户是否有权限?路径是否存在?文件是否存在?
生产者
kafka
hbase写数据流程
2、MAP端业务逻辑代码
spark
3、请求切片存储dn
13、执行后续TASK
快排
解析器
datanode01
client/jdbc
c_6:根据返回的结果将该数据块从ACK队列中删除
9、申请执行资源
namenode
hive架构
一次溢写会写到一个文件。同时溢写的文件,按照分区排序,同时分区内有序
6、写入成功
appicationmanager
N_1:客户端判断该用户是否有权限?路径是否存在?文件是否存在?所有校验没有问题的话,返回数据文件所在的所有数据块的副本对应的列表,同时根据机架感知向前拍和心跳检测机制迟缓的向后排
resourceScheduler
JDBC
2、返回路径
12
1、切片,默认使用TextInputFormat;其中分片是针对每个文件的,然后分片的多少,决定maptask的并行度
other MapTask
dataNode1
hiveserver2
region
分区1:grp1
dataNode2
归并排序,然后落盘
rm1:开辟一个hdfs路径(dn4:hdfs://home)和唯一的jobid
shuffl
job.xmlsplit.jsonjar
MapTask
c_7:当所有数据块上传成功后关闭输出流
7、连接对应的DN,社生成相应资源
元数据库(mysql)
applicationMast
hive客户端
zookeeper
dataNode3
14、注销资源
resourceManage
beeline客户端
2、nn返回DN列表
1、客户端请求zk
ReduceTask
TEZ
5、将该任务注册到队列中
hdfs
4、申请执行任务
10、分配资源
metastore
c_2:进行数据切片,请求nn
MR
0 条评论
下一页