Java 如何修复使用spark joinWith创建Tuple2时的UnsupportedOperationException
我正在使用带有Spark的Java。我需要通过组合两个单独的数据集来创建一个Tuple2数据集。我使用joinWith是因为我希望单个对象保持完整(不能使用join)。然而,这是失败的: 线程“main”java.lang.UnsupportedOperationException中出现异常:无法计算表达式:NamePlaceholder 我尝试了使用和不使用别名,但仍然得到相同的错误。我做错了什么Java 如何修复使用spark joinWith创建Tuple2时的UnsupportedOperationException,java,apache-spark,apache-spark-dataset,Java,Apache Spark,Apache Spark Dataset,我正在使用带有Spark的Java。我需要通过组合两个单独的数据集来创建一个Tuple2数据集。我使用joinWith是因为我希望单个对象保持完整(不能使用join)。然而,这是失败的: 线程“main”java.lang.UnsupportedOperationException中出现异常:无法计算表达式:NamePlaceholder 我尝试了使用和不使用别名,但仍然得到相同的错误。我做错了什么 Dataset<MyObject1> dsOfMyObject1; Datas
Dataset<MyObject1> dsOfMyObject1;
Dataset<MyObject2> dsOfMyObject2;
Dataset<Tuple2<MyObject1, MyObject2>> tuple2Dataset =
dsOfMyObject1.as("A").
joinWith(dsOfMyObject2.as("B"),col("A.keyfield")
.equalTo(col("B.keyfield")));
数据集DSOfMyObject 1;
数据集dsOfMyObject2;
数据集tuple2Dataset=
dsOfMyObject1.as(“A”)。
与(dsOfMyObject2.as(“B”)、col(“A.keyfield”)
.equalTo(col(“B.keyfield”);
线程“main”java.lang.UnsupportedOperationException中出现异常:无法计算
表达式:名称占位符
位于org.apache.spark.sql.catalyst.expressions.unevaluate$class.eval(Expression.scala:255)
位于org.apache.spark.sql.catalyst.expressions.namep占位符$.eval(complexTypeCreator.scala:243)
在org.apache.spark.sql.catalyst.expressions.createNamedStructureLike$$anonfun$names$1.apply(complexTypeCreator.scala:289)
在org.apache.spark.sql.catalyst.expressions.createNamedStructureLike$$anonfun$names$1.apply(complexTypeCreator.scala:289)
位于scala.collection.immutable.List.map(List.scala:274)