hadoop
2021-05-14 09:37:16 3 举报
hadoop集群以及各个组件的机制
作者其他创作
大纲/内容
分区1
逻辑处理
输出文件
4.send ack
hello worldhello world1hello world2hello world hello worldhello world3aabbaa ccbb1122gg
journalNode
分区2
hello 1hello 1world1 1world2 1...
world2 1world3 1 11 122 1
3. Spill 溢写
3. read block
ReduceTask
3. copy job resource
JVM
分区0
4. 3s getstate
hello 1world 1hello 1aa 1...
写分区0
namenode(standby)
一个分好区且已排序的文件
写
220MB1.txt
1.启动Map任务
datanode
1.open file
2. del meta data
zookeeper集群
hello 2world1 1world2 1
client
读
MapTask
hello 1 1 1 1 1 1world 1 1 1world1 1
2.get block location
5. close file
缓冲区: 默认100M溢写阈值: 80%
ReduceTask 工作机制
zookeeper
client
1.FileSplit
HDFS删除流程
jn
通过FalioverControllerActive监听
排序
namenode(ResourceManager)
4. read block
3. write packet
aa 1bb 111 1hello 1...
Metadata热备
ResourceManager(active)
MapTask 工作机制
结果文件
job 的文件读写
hadoop 集群视图
Merge Sort
4. Merge 合并
3. result
TaskTracker
child
namenode
ResourceManager(standby)
1.create file
hello 1 1 1 1 1 1world 1 1 1world1 1world2 1world3 1aa 1 1bb 1 1cc 111 122 1gg 1
jobtracker nodename node
2. write packet
datanode(nameManager)
HDFS写流程
datanodenodeManager
220M
6. get splits data
Fetch
5. snedack
伪分布式MapReduce
hadoop jar xxx.jar
HDFS
1.send command
job 合并组件
job 的运行机制
4. submitjob
HDFS读流程
分区
job 的分区机制
合并组件Combiner
9. launch
5. init job
taskTracker nodedata node
ReduceTaskPartitioner=3
aa 1 1bb 1 1cc 1gg 1
JobTracker
hello 2 2world 1 1 1world1 1world2 1world3 1aa 1 1bb 1 1cc 111 122 1gg 1
hello 2world 1aa 1...
80M
namenode(active)
MapTaskorReduceTask
1. run job
2.输出
7. heartbeat
2. get newjob id
60M
8. get job resource
2. 处理nodeManager上传的的数据
10.run
0 条评论
回复 删除
下一页