PySpark:我是否需要重新缓存数据帧



假设我有一个数据帧:

rdd = sc.textFile(file)
df = sqlContext.createDataFrame(rdd)
df.cache()

我添加了一列

df = df.withColumn('c1', lit(0))

我想反复使用df。那么我是否需要重新cache()数据帧,还是 Spark 会自动为我执行此操作?

每次操作/更改数据帧时,都必须再次重新缓存数据帧。但是,不必重新计算整个数据帧。

df = df.withColumn('c1', lit(0))

在上面的语句中,将创建一个新的数据帧并将其重新分配给变量 df 。但这次只计算新列,其余列从缓存中检索。

相关内容

  • 没有找到相关文章

最新更新