第2节、Debug调试源码_获取MapReduce执行详细过程

1.点击调试,跳转到Mapper
8feb1e5e64b28fcbe5c153e2906b4042.png
2.进入setup(context);对程序初始化
7c7350b655bf6d2e1a265b03ce973696.png
3.初始化结束
7793595795ae593ebcbddbf4f0fd8d07.png
4.进入while后
1b04977b2b9567edc4196f09e1473f32.png
5.强制进入map()方法观看:getCurrentKey()
35340ed5e5a27b95c161885df90a63a3.png
6.然后出去,回到while
2ad7fd76e9a843e270182751384c8f4e.png
7.强制进入getCurrentValue()
2730c5603fd652323ac95bc8e24d87e2.png
dae5bce8a22683edb839ad07d47af30b.png
8.退出
92cf98d9e346c00fa90e6d5d619c7a7d.png
9.再进入,就到了WordCountMapper的map方法里面
da1c76dd3d317a9064a50288a45aa876.png
10.往下依次执行两行,得到数据中的第一行内容<key,value>,key偏移量
617f47515c6dd9b01a3c5693b28551d4.png
第二行运行后得到的是value的值,即第一行的内容:“pcz pcz”
8f236f67055f97fa965d94bdfbc411b1.png
11.对这一行数据用空格分隔,得到两个值,所以接下来要循环遍历两次
06cbf6bab94b91c2438e258228be0f39.png
12.循环遍历,封装k的值(第一次循环遍历)
d4b3013a458b44b308518a1e941c75d0.png
13.传给context()
9b7fe3f19d9330077f749ddc8b90d535.png
14.第二次遍历循环,封装第二个"pcz"
49966463d23d52e153266e4c4ae42814.png
15.传给context()
a96062f1531130d79ea1068b95ad6c6b.png
16.第一行内容完成,跳出循环
5470cd9db15f3d8a1b225cb6b4f5431e.png
17.跳出之后回到Mapper(相当于第一行pcz这一行已经执行完了)
c204b3b33bd415a39ef6a7e33e83a446.png
18.
(1)进入while
355049db49856e1a33895fd7cee208aa.png
(2)强制进入map
8cf2d1b5f9857ba67b54e063f5426d0f.png
(3)进入后
627bf4a834ce90c52acf326389fe8ef6.png
(4)退出
f0a0e687125922eecb844f8482ff5dc6.png
19.然后进到WordCountMapper,与步骤9~16一样对后面的每一行数据进行操作,(第1行和第2行内容回车和换行各算一个偏移量)《一共有7行,所以执行了7次map》
2737fdbc7e5dce8a4c8bd2908911aa93.png
20.数据运行完成之后,返回到Mapper的cleanup
38ea643277dff6ae79944f9a8cbe4083.png
map阶段结束后的数据
59a46e15e0240477365cd5bf2714b4d7.png
21.map阶段结束,进入到reduce阶段
8c8bea1fbcb5fb2d26a1bb9562695ff3.png
22.下一步进入到while,然后进入到reduce
2bc07512d5ce0d622797faeb4d7e4bc6.png
23.进入到WordCountReducer
d7983a81b584e1c45bb3d74de51eeea1.png
24.累加v的值
5f96f571b27cad36a83b149c67f29e00.png
25.“fighting”,有两个,所以再次进入for遍历循环,得到sum的值为2
6c4828326e6d149f69ac52b30c7ab4c5.png
26.累加结束后跳出
59c9a734dcac41fbd3072203b77a328e.png
27 .返回到Reducer(执行5次reducer,因为mapper结束后有5行数据)
7c83a7bd1bebebf0c164e11a1e13a758.png
28.到cleanup(context),结束
dc7986ff1d43d31f58831caaef6a5bba.png
cb8f8d873c76c62d551699c5b2015222.png
29.进入到相关目录查看结果
cc989eb3ddcc7bc0e72785135ed1e9b8.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TryBest_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值