spark DataSe[A] 使用map或者Flatmap算子转化为DataSet[B]时,shcema变为binary

现象:

代码如下

 

 

打印出来结果为

 

 

 

原因:

序列化出现了问题,这里我在前面引用的Encoder 是

    implicit val odsClewordPacakgesBeanEncoder = org.apache.spark.sql.Encoders.kryo[DimIdpCourseStructInfoBean]
DimIdpCourseStructInfoBean 是自定义的样例类

解决方法

更换Encoder,

    implicit val odsClewordPacakgesBeanEncoder = org.apache.spark.sql.Encoders.kryo(DimIdpCourseStructInfoBean.getClass)

  注意,如果传参为 classOf[DimIdpCourseStructInfoBean],结果一样不行,原因还不是很明白。

 

posted @ 2021-06-01 18:08  可以看看你胖次吗  阅读(148)  评论(0编辑  收藏  举报
Live2D