Java spark2這兩個語句有什么區(qū)別-Dataset<Row> Data; Data.repartition(new Column("key" )) ; and Data.repartition(Data.col("key" ) ;
1 回答

千巷貓影
TA貢獻1829條經(jīng)驗 獲得超7個贊
正在做
Data.repartition(new?Column("key"));
相當于
import?static?org.apache.spark.sql.functions.col; Data.repartition(col("key"));
在這些情況下,該列不直接與數(shù)據(jù)集相關聯(lián),Spark 需要在分析階段解析它。
如果你改用
Data.repartition(Data.col("key");
您正在向 Spark 發(fā)出指令,該指令是該列所屬的數(shù)據(jù)集。此方法主要用于連接,例如,您可以擁有兩個具有公共列名的數(shù)據(jù)集。
在您的示例中,結(jié)果是等效的,您可以使用兩種形式。
添加回答
舉報
0/150
提交
取消