【Spark】HashMap转RDD
创始人
2024-12-17 03:35:53
0

1、读取本地文件,转换成map

val path = "文件路径" val source = Source.fromFile(path).getLines().toList.mkString("").replaceAll(" ","")  val key = JSON.parseObject(source).get("key").toString val columns = JSON.parseObject(source).get("value").toString  val map = new util.HashMap[String, String]() map.put("RK", getValue(key))  JSON.parseObject(columns.toString).keySet().asScala.foreach(elem => {     val valueJson = JSON.parseObject(columns.toString).get(elem).toString     map.put(elem, getValue(valueJson)) })    def getValue(str: String): String = {      val value = str.toString.replace("[","").replace("]","")     JSON.parseObject(value).get("value").toString }

2、将map转变成rdd

val schema = StructType(map.asScala.toSeq.map {case(k,v) =>     StruchField(k, StringType, nullable = true) })  val row = Row.fromSeq(map.values().asScala.toSeq)  val rowRDD = spark.sparkContext.parallelize(Seq(row))  val df = spark.createDataFrame(rowRDD, schema)

备注:数据格式

{     "key":[         {             "name":"RK",             "type":"String",             "value":"1234567890"         }     ],     "columns":{         "column_name1":[             "name":"column_name1",             "type":"String",             "value":"111"            ],         "column_name2":[             "name":"column_name2",             "type":"String",             "value":"222"            ],         "column_name3":[             "name":"column_name3",             "type":"String",             "value":"333"            ]     } }

相关内容

热门资讯

透视科技!wejoker私人辅... 透视科技!wejoker私人辅助软件,wepoker有插件吗(一贯真的有挂)1、每一步都需要思考,不...
透视苹果版!wpk作弊是真的吗... 透视苹果版!wpk作弊是真的吗,wpk德州局透视,2025新版技巧(都是存在有挂);所有人都在同一条...
透视代打!we poker插件... 透视代打!we poker插件,wepoker插件程序激活码(本来是真的有挂)1、完成wepoker...
透视规律!wpk辅助器,wpk... 透视规律!wpk辅助器,wpk透视辅助靠谱吗,透明教程(一贯是真的有挂)1、起透看视 wpk透视辅助...
透视软件!wepoker有没有... 透视软件!wepoker有没有插件,wepoker软件辅助程序(一直是真的有挂);1、金币登录送、破...
透视教学!wpk安卓下载辅助,... 透视教学!wpk安卓下载辅助,wpk官网下载链接,新版2025教程(其实真的是有挂);1、点击下载安...
透视免费!wepoker黑侠辅... 透视免费!wepoker黑侠辅助器,wepoker好友房开挂(竟然存在有挂)1、wepoker好友房...
透视插件!wepoker怎么挂... 透视插件!wepoker怎么挂飞机,wepoker怎么买辅助(原来真的是有挂);1、透视插件!wep...
透视辅助!wpk私人辅助,wp... 透视辅助!wpk私人辅助,wpk控制牌是真的吗,技巧教程(都是是有挂)1、wpk控制牌是真的吗ai机...
透视中牌率!WePOker有没... 透视中牌率!WePOker有没有透视方法,wepoker辅助器激活码(都是有挂)所有人都在同一条线上...