2016-10-15 159 views
1

我拿一個JSON文件火花/斯卡拉,我保存在一個RDD。Rdd火花和斯卡拉JSON

val dataFile = "resources/tweet-json/hello.json" 
    lazy val rdd = SparkCommons.sqlContext.read.format("json").load(dataFile) 

查詢rdd後,我想再次生成一個Json輸出文件(我將發送一個get Http請求)。我如何在json中轉換這個rdd?

[ 
{ 
    "label": [ 
     "fattacq_an_eser_facq", 
     "eu_tot_doc", 
     "fattacq_prot_facq", 
     "id_sogg", 
     "eu_tot_man" 
    ], 
    "values": [ 
     { 
      "label": "Prima Fattura 2016", 
      "values": [ 
       2016, 
       956.48, 
       691, 
       44633, 
       956.48 
      ] 
     }, 
     { 
      "label": "Seconda Fattura 2016", 
      "values": [ 
       2016, 
       190, 
       982, 
       38127, 
       190 
      ] 
     }, 
     { 
      "label": "Terza Fattura 2016", 
      "values": [ 
       2016, 
       140.3, 
       1088, 
       59381, 
       140.3 
      ] 
     }, 
     { 
      "label": "Quarta Fattura 2016", 
      "values": [ 
       2016, 
       488, 
       1091, 
       59382, 
       488 
      ] 
     }, 
     { 
      "label": "Quinta Fattura 2016", 
      "values": [ 
       2016, 
       11365.95, 
       1154, 
       57526, 
       11365.95 
      ] 
     }, 
     { 
      "label": "Sesta Fattura 2016", 
      "values": [ 
       2016, 
       44440.01, 
       1276, 
       5555, 
       44440.01 
      ] 
     } 
    ] 
    } 
] 
+0

P.s .:我使用Play Framework – Mozzer

回答

1

您可以簡單地使用write函數寫出來JSON的 例子:

dfTobeSaved.write.format("json").save("/root/data.json") 

我想這應該能正常運行!

+0

感謝您的回答,但我需要發送此文件與http請求。我怎樣才能做到這一點? – Mozzer

+0

在quering之後我把rdd保存爲json格式,然後我怎樣才能發送這個文件作爲一個HTTP方法的GET方法? – Mozzer

+0

爲此,您可以使用Akka-http發送它..您可以在這裏查看更多http://doc.akka.io/docs/akka/2.4/scala/http/client-side/request-level。 html謝謝,並做了upvote,以便其他人可以輕鬆找到答案 –