视频分享地址: https://space.bi|

明月照江江

园龄:7年4个月粉丝:34关注:0

2022-09-06 20:21阅读: 340评论: 0推荐: 0

spark 解决 java.util.Date is not a valid external type for schema of Date

出错伪代码如下:

//出错的点在这里
import java.util.Date
...

val t_rdd = t_frame.rdd.map(row => {
      val photo_url = row.getAs[String]("photo_url")
      val longitude = row.getAs[String]("longitude")
      val latitude = row.getAs[String]("latitude")
      val imei = row.getAs[String]("imei")
      val pic_time = row.getAs[String]("pic_time")
      val date_pic_time = new Date(pic_time.toLong)

      Row(
        photo_url,
        longitude,
        latitude,
        imei,
        date_pic_time,
      )
)

val structType = StructType(
      Seq(
        StructField("photo_url", StringType, nullable = true),
        StructField("longitude", StringType, nullable = true),
        StructField("latitude", StringType, nullable = true),
        StructField("imei", StringType, nullable = true),
        StructField("pic_time", DateType),
    )
)
spark.createDataFrame(t_rdd, structType)

当时有RowstructType 来创建DataFrame时,Date的类型必须是java.sql.Date, 而如果是java.util.Date 在后续操作过程中会报 java.util.Date is not a valid external type for schema of Date

本文作者:明月照江江

本文链接:https://www.cnblogs.com/gradyblog/p/16663213.html

版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。

posted @   明月照江江  阅读(340)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示
评论
收藏
关注
推荐
深色
回顶
收起