代码之家  ›  专栏  ›  技术社区  ›  DilTeam

Spark Streaming:从Kafka读取JSON并添加事件时间

  •  0
  • DilTeam  · 技术社区  · 5 年前

    val schema = spark.read.json("sample-data/test.json").schema
    val myStream = sparkSession
          .readStream
          .format("kafka")
          .option("kafka.bootstrap.servers", "localhost:9092")
          .option("subscribe", "myTopic")
          .load()
    val df = myStream.select(from_json($"value".cast("string"), schema).alias("value"))
    val withEventTime = df.selectExpr("*", "cast (value.arrivalTime as timestamp) as event_time")
    

    但我不断得到信息:

    如何引用JSON中的所有元素?

    0 回复  |  直到 5 年前
        1
  •  0
  •   DilTeam    5 年前

    我相信我能用这个来解决这个问题:

    val withEventTime = df.withColumn("event_time",to_timestamp(col("value. arrivalTime")))