我正在使用spark.createDataFrame([],schema)创建一个空的spark数据框,然后从列表中添加行,但是访问该数据框(count-collect)与该数据框上的平时相比花费了太多时间
从csv文件创建的数据帧上的1000行上的function dataframe.count()占用300毫秒,而从架构创建的空数据帧上则需要4秒钟。 这里的差异来自何处?
schema = StructType([StructField('Average_Power',FloatType(),True),
StructField('Average_Temperature',FloatType(),True),
StructField('ClientId',StringType(),True),])
df = df_event_spark = spark.createDataFrame([], schema)
df.count()
有什么方法可以创建更优化的空Spark数据框?
答案 0 :(得分:0)
不,这是在pyspark中推荐的方法。
启动Spark应用程序或从笔记本计算机运行内容时有一定的开销。 100行很小,但是运行Spark App等的开销相对较大。这么小的体积。