我的课程笔记有以下句子:“ RDD支持两种类型的操作:转换(从现有操作创建新的数据集)和动作(在对数据集执行计算后将值返回给驱动程序)。 ”但是我认为这会产生误导,因为 reduceByKey 转换是在本地先在工人上执行的,然后再在驾驶员上执行(尽管更改要等到执行一项操作后才能进行)。如果我错了,请您纠正我。
答案 0 :(得分:0)
事实上,驾驶员的首要责任是管理工作。此外,RDD的对象不位于驱动程序上,无法对其执行操作。因此,所有结果都取决于工作人员,直到采取行动为止。我的意思是关于spark的延迟执行,这意味着在执行开始时首先将计划重新审核为第一个动作,如果找不到任何内容,则整个程序将不会有任何结果。否则,整个程序将在输入数据上执行,该数据将作为rdd对象呈现在工作程序节点上以到达操作,并且此期间的所有数据都将在工作程序上,并且仅根据操作类型生成结果将发送给驾驶员或至少由驾驶员管理。
答案 1 :(得分:0)