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

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