【发布时间】:2021-06-09 01:17:47
【问题描述】:
我通过 spark 创建了一个自定义类型数据集。
public class KeyValuePair {
String source;
String target;
int value;
getter...
setter...
}
...
List<KeyValuePair> list = generateList();
Dataset<KeyValuePair> dataset = spark.createDataset(list, Encoders.kryo(KeyValuePair.class));
Dataset<Row> agg = dataset.groupBy("source", "target").agg(avg("value"));
当数据集调用groupBy方法时,会抛出异常。 线程“main”org.apache.spark.sql.AnalysisException 中的异常:无法解析(值)中的列名“source”
我想知道自定义类型数据集是否可以调用方法groupBy。 Row 类型的数据集是唯一可以调用该方法而不抛出异常的吗?
如何聚合自定义类型数据集?
【问题讨论】:
标签: java apache-spark apache-spark-dataset