我想将RDD转换为数据帧,并缓存RDD的结果:
from pyspark.sql import *
from pyspark.sql.types import *
import pyspark.sql.functions as fn
schema = StructType([StructField('t', DoubleType()), StructField('value', DoubleType())])
df = spark.createDataFrame(
sc.parallelize([Row(t=float(i/10), value=float(i*i)) for i in range(1000)], 4), #.cache(),
schema=schema,
verifySchema=False
).orderBy("t") #.cache()
在这种情况下,cache
为什么生成作业?
如何避免cache
(缓存数据帧而不使用RDD)的作业生成?在
编辑:我对这个问题进行了更深入的研究,发现没有orderBy("t")
就不会生成作业。为什么?在
我提交了一个bug ticket,它关闭的原因如下:
相关问题 更多 >
编程相关推荐