在Spark DataFrames上使用了很多select语句或表达式,我想知道一旦动作触发它们对后续转换的性能影响。
给定一个数据帧df
,其中包含10列a到j。
如果我在每列上使用as
进行列重命名,会有什么影响?
df.select(df(" a")。as(" 1"),...,df(" j")。as(& #34; 10&#34))
如果我选择一个子集(例如5列)
,该怎么办?val df2 = df.select(df(" a"),...,df(" e"))
湾如何处理Spark投影? df
仍然保留(因为df2
是一个投影),所以df
可以作为参考吗?或者是df2
新创建并df
被丢弃? (忽视任何坚持在这里)
Column
中使用的一般select
表达式的影响如何?
上述案例的性能测试是否可用?一般情况下,性能测量是否可用?如果没有,如何最好地衡量绩效?