java.lang.UnsupportedOperationException:不支持类型MyClass的模式

时间:2016-11-02 00:40:21

标签: apache-spark apache-spark-sql spark-dataframe

我正在使用Spark 1.5.0,我在从rdd。

创建数据框时遇到了问题

以下是代码:

case class MyC (myclass: MyClass) 

  val df = rdd.map {t => MyC(t)}.toDF("cust")
  df.show()

以下是错误消息:

  

线程“main”中的异常java.lang.UnsupportedOperationException:   不支持MyClass类型的模式

对此的任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

Spark使用反射来推断数据帧架构,但不能对任意类执行此操作。我不确定我是否可以比Spark文档更好地陈述答案,there's a section dedicated to exactly this

具体来说,问题是Spark可以推断出架构的类型有限。 Ints,Strings,Seqs / Arrays都支持(以及包含这些类型元素的case类),但是任意类MyClass都不支持。