无法理解“懒惰”在RDD(Python)中是如何工作的

时间:2017-09-18 08:18:45

标签: python pyspark rdd

我知道在Pyspark中,RDD不会逐步计算。但是在这段代码中,我发现即使我使用try1函数,也没有任何内容与d相关联。那么如果我想在函数中间做一些事情,不仅仅是函数的返回结果,我该怎么办?

df=pd.DataFrame([[1,2],[3,4]])
dt=sc.parallelize(np.array(df.T))
d=[]
def try1(x):
    d.append(1)
    return set(x)
print (dt.map(try1).collect())
print (d)

结果:

[{1, 3}, {2, 4}]
[]

0 个答案:

没有答案