对照着人家的图上, 我接着看到了JobMaster启动的流程, 这其中有很多, 但我只跟着图中的申请资源的一条线看的. 对于JobGraph如何转化成executionGraph, 以及executionGraph如何映射到slot上面, 我不清楚. 这两天就看了slot的申请流程, 和Mr.高的图一样:
1. JM先向RM申请slot, 对应图中的第五步. JM把自己的slotRequest先缓存起来.
2. RM接收到申请, 匹配好slot(因为是cluster模式, RM已拿到所有的TM, 所以没有6-7步),
3. RM通知slot对应的TM, 然后告诉它的某个slot被分配给某个JM了.
4. TM接收到自己被分配的通知, 在slot管理上把它分配了, 然后如果能分配的画就把slot送给JM
5. JM收到TM送过来的slot, 然后放在slotPool里面, 把它标记成available. 如果有pending的slotRequest(一定有, 就是我们上面缓存起来的slotRequest), 就把slot填补slotRequest的需求
TODO:
下面想就跟着现在看的流程往后走,
1. 看看拿到的slot怎么使用的?
2. 第十步, task怎么提交给TM的?
今天是21年2月11下午2点27, 明天新春快乐, 祝自己新年: 1. 早点看清Flink的迷雾.2. 开始面向面试编程, 早点准备.