gpt4 book ai didi

apache-spark - 从字符串 Hive 解析 json

转载 作者:行者123 更新时间:2023-12-02 20:35:41 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How to query JSON data column using Spark DataFrames?

(5 个回答)


3年前关闭。




我有 Hive 表,其中一列包含 JSON 数据作为字符串。

如何将此 JSON 字符串“转换”为另一个表(包含所有 JSON 字段等),最好的方法是什么?我想将 JSON 字符串中的行插入到我的表中

或者还有另一种将 JSON 解析成表格的方法?

我正在使用 Java-Spark。

谢谢

最佳答案

使用配置单元上下文将数据帧保存在配置单元中
Spark 1.6

  val conf = new SparkConf().setAppName("jsontest").setMaster("local[*]")
val sc = new SparkContext(conf)

val json = """[
{
"tag_name": "A",
"item_name": "B",
"timestamp": "2018-07-09T16:59:17.8232306Z",
"value": 10
}
]"""

val jsonRdd = sc.parallelize(Seq(json))
System.setProperty("hive.metastore.uris: ", "thrift://ip:9083");

val hiveContext = new HiveContext(sc)

val df = hiveContext.read.json(jsonRdd)
df.show(false)


+---------+--------+----------------------------+-----+
|item_name|tag_name|timestamp |value|
+---------+--------+----------------------------+-----+
|B |A |2018-07-09T16:59:17.8232306Z|10 |
+---------+--------+----------------------------+-----+

//save into table
df.write.mode(SaveMode.Append).insertInto(tableName)

Spark > 2.0
val spark = SparkSession .builder() .appName( "SparkSessionZipsExample" ) .config( "spark.sql.warehouse.dir" , warehouseLocation) .enableHiveSupport() .getOrCreate()

关于apache-spark - 从字符串 Hive 解析 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51279875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com