このjsonファイルをハイブテーブルに読み込もうとしていますが、ここではトップレベルキー1,2 ...は一貫していません。jsonキー値とhive/sqlとsparkを読み取る
{
"1":"{\"time\":1421169633384,\"reading1\":130.875969,\"reading2\":227.138275}",
"2":"{\"time\":1421169646476,\"reading1\":131.240628,\"reading2\":226.810211}",
"position": 0
}
列が位置を無視するように私は私のハイブテーブルに時間と測定値1,2を必要としています。 ハイブクエリとスパークマップコンビネーションコードを組み合わせることもできます。 ありがとうございました。
Exception in thread "main" org.apache.spark.sql.hive.HiveQl$ParseException: Failed to parse: SELECT json_val from temp_hum_table lateral view explode_map(json_map(*, 'int,string')) x as json_key, json_val
at org.apache.spark.sql.hive.HiveQl$.createPlan(HiveQl.scala:239)
at org.apache.spark.sql.hive.ExtendedHiveQlParser$$anonfun$hiveQl$1.apply(ExtendedHiveQlParser.scala:50)
at org.apache.spark.sql.hive.ExtendedHiveQlParser$$anonfun$hiveQl$1.apply(ExtendedHiveQlParser.scala:49)
at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:136)
at scala.util.parsing.combinator.Parsers$Success.map(Parsers.scala:135)
at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply(Parsers.scala:242)
at scala.util.parsing.combinator.Parsers$Parser$$anonfun$map$1.apply(Parsers.scala:242)
at scala.util.parsing.combinator.Parsers$$anon$3.apply(Parsers.scala:222)
出力がどのように見えるかの例は非常に役立ちます。 – gobrewers14
出力テーブルの例: '' time "、" reading1 "、" reading2 "\ n 1421169633384,130.875969,227.138275 \ n 1421169646476,131.240628,226.810211 – venuktan