我正在研究一個正在接受JSON消息並需要解析它的Spark Streaming應用程序。它有兩部分,但部分JSON解析在測試時似乎是更大的開銷。有什麼辦法可以優化嗎?優化Scala JSON解析
import scala.util.parsing.json.JSON
val parsed = JSON.parseFull(formatted)
val subject = parsed.flatMap(_.asInstanceOf[Map[String, String]].get("subject")).toString.drop(5).dropRight(1)
val predicate = parsed.flatMap(_.asInstanceOf[Map[String, String]].get("predicate")).toString.drop(5).dropRight(1)
val obj = parsed.flatMap(_.asInstanceOf[Map[String, String]].get("object")).toString.drop(5).dropRight(1)
val label = parsed.flatMap(_.asInstanceOf[Map[String, String]].get("label")).toString.drop(5).dropRight(1)
val url = "http://" + elasticAddress.value + "/data/quad/"
val urlEncoded = java.net.URLEncoder.encode(label + subject + predicate + obj, "utf-8")
parsed.flatMap(_ asInstanceOf [地圖[字符串,字符串]]是越來越重複,可以計算和重複使用 – Samar
可以解析被重用,因爲。?。 – theMadKing
是的,在應用地圖後執行計算得到的值 – Samar