我正在使用 Spark 1.5.0,从我的 rdd 创建数据帧时遇到问题。

这是代码:

case class MyC (myclass: MyClass)  
 
  val df = rdd.map {t => MyC(t)}.toDF("cust") 
  df.show() 

这是错误消息:

Exception in thread "main" java.lang.UnsupportedOperationException: Schema for type MyClass is not supported



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

请您参考如下方法:

Spark 使用反射来推断数据帧模式,但不能对任意类这样做。我不确定我是否能比 Spark 文档更好地陈述答案,而且 there's a section dedicated to exactly this .

具体来说,问题在于 Spark 可以推断模式的类型数量有限。整数、字符串、序列/数组都受支持(以及包含这些类型元素的 case 类),但任意类 MyClass不是。


评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!