pyspark 解析kafka数组结构数据
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | from pyspark.sql.functions import get_json_object, col,from_unixtime, instr, length, regexp_replace, explode, from_json from pyspark.sql.types import * <br> # 定义数组结构 schema = ArrayType(StructType([ StructField( "home" , StringType()), StructField( "room" , StringType()), StructField( "operation" , StringType()), StructField( "time" , StringType()) ])) # kafka = kafka.select(col("value").cast("string").alias("data"))<br># 使用from_json解析 再使用explode将数组结构拆分成多行数据 kafka = kafka.select(from_json(col( "value" ).cast( "string" ), schema).alias( "data" ) ).select(explode( "data" ).alias( "data" ) ).selectExpr( "data.home" , "data.room" , "data.operation" , "data.time" ) |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· winform 绘制太阳,地球,月球 运作规律
· 上周热点回顾(3.3-3.9)