【发布时间】:2019-08-02 15:11:51
【问题描述】:
Java spark2
这两种说法有什么不同吗-
Dataset<Row> Data;
Data.repartition(new Column("key" )) ;
and
Data.repartition(Data.col("key" ) ;
【问题讨论】:
标签: java apache-spark
Java spark2
这两种说法有什么不同吗-
Dataset<Row> Data;
Data.repartition(new Column("key" )) ;
and
Data.repartition(Data.col("key" ) ;
【问题讨论】:
标签: java apache-spark
在做
Data.repartition(new Column("key"));
等价于
import static org.apache.spark.sql.functions.col;
Data.repartition(col("key"));
在这些情况下,列与数据集没有直接关联,Spark 需要解决它during the Analysis phase。
如果你改用
Data.repartition(Data.col("key");
您正在向 Spark 指示该列所属的数据集。 此方法主要用于连接,例如,您可以拥有两个具有共同列名的数据集。
在您的示例中,结果是等效的,您可以使用两种形式。
【讨论】: