Spark处理json数组fastjson

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark处理json数组fastjson相关的知识,希望对你有一定的参考价值。

json数据格式:

[{"studentName":"lily","studentAge":12},{"studentName":"lucy","studentAge":15}]

pom:

<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.2.1</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.44</version>
</dependency>

val conf = new SparkConf().setMaster("local").setAppName("json test")
val sc = new SparkContext(conf)
val textFile = sc.textFile("f:/data/*.txt")
textFile.map(JSON.parseArray) //解析为json数组
.flatMap(_.toArray)  //json数组转为java数组,通过flatmap拉平
.map(_.asInstanceOf[JSONObject])  //把每个对象转成jsonobject
.map(x => (x.getString("studentName"), (x.getInteger("studentAge"), 1)))  //通过jsonobject的方法处理数据

 


















以上是关于Spark处理json数组fastjson的主要内容,如果未能解决你的问题,请参考以下文章

Spark项目之电商用户行为分析大数据平台之JSON及FASTJSON

毕设三 spark与phoenix集成插入数据/解析json数组

fastjson不能处理静态对象吗

Java如何快速构造JSON字符串

fastjson进行json的解析和序列化

FastJson处理数据出现错误 com.alibaba.fastjson.JSONException: syntax error, expect {, actual error, pos 1(示例代