I have the data as:
(ID001,List((BookType,[text]),(author,xyz abc),(time,01/12/2019[22:00] CST/PM))),(ID002,List((BookType,[text]),(author,klj fgh),(time,19/02/2019[12:00] CST/AM)))
I need to convert this to a JSON object:
{"ID001":{
"BookType":"[text]",
"author":"xyz abc",
"time":"01/12/2019[22:00] CST/PM"
},
{"ID002": {
"BookType":"[text]" ,
"author":"klj fgh",
"time":"19/02/2019[12:00] CST/AM"
}
}
I am very new to Scala Spark. Any idea how to convert this.
For creating the json use the jackson which has got good utilities.In your case the following done can be using the below code
val mapper = new ObjectMapper`
val data = ("ID01", List(("BookType", "[text]"),("author", "xyz abc"),"time","01/12/2019[22:00] CST/PM")))
val id = mapper.createObjectNode()
val bookDetails = mapper.createObjectNode()
data._2.foreach(x => {bookDetails.put(x._1, x._2)})
id.set(data._1, bookDetails)
println(id.toString)
The output of the above will be as follows
{"ID01":{"BookType":"[text]","author":"xyz abc","time":"01/12/2019[22:00] CST/PM"}}