据我了解,您无法在地图功能中创建新的RDD或DF。因为这会尝试将整个spark上下文序列化为执行者。
假设我的驱动程序中有以下几个伪代码:
df1 = sc.readtextfiles(/1.txt)
df2 = sc.readtextfiles(/2.txt)
df3 = sc.readtextfiles(/3.txt)
sc.write(DoSomeOperation(df1))
sc.write(df2.union(df3))
还有一种方法可以并行执行这些操作吗?或者司机必须按顺序执行此操作吗?
答案 0 :(得分:0)
这是你想要做的吗?
val fileNames = Array("/1.txt", "/2.txt", "/3.txt").parallelize()
val result = fileNames.map(data -> DoSomeOperation(data))
result.saveAsTextFile("/path/to/output.txt")