2016-05-24 116 views
-1

我有下面的JSON文件火花dataframes java的爆炸功能

{ 
    "data": [ 
     { 
     "id": "254094394708288_946242468826807", 
     "from": { 
      "name": "Emirates NBD \u0628\u0646\u0643 \u0627\u0644\u0625\u0645\u0627\u0631\u0627\u062a \u062f\u0628\u064a \u0627\u0644\u0648\u0637\u0646\u064a", 
      "category": "Bank/Financial Institution", 
      "id": "254094394708288" 
     }  
     }, 
     { 
     "id": "254094394708288_945515772232810", 
     "from": { 
      "name": "Emirates NBD \u0628\u0646\u0643 \u0627\u0644\u0625\u0645\u0627\u0631\u0627\u062a \u062f\u0628\u064a \u0627\u0644\u0648\u0637\u0646\u064a", 
      "category": "Bank/Financial Institution", 
      "id": "254094394708288" 
     }   
     } 
] 
} 

我想創建對象中的「數據」 JSON陣列基於JSON蜂巢表。我想用Java來做到這一點。我不想做「從temptable中選擇data.id,data.from」。我想要做一些類似於select *查詢的事情。它應該自動從json對象中推斷出模式。我來找python和scala中的爆炸函數。

http://stackoverflow.com/questions/31859271/sparksql-and-explode-on-dataframe-in-java 

Java中是否有類似的東西?

回答

1

在Java中有完全一樣的東西:

org.apache.spark.sql.functions.explode(Column e) 

返回Column

你可以檢查我的答案here的細節