gpt4 book ai didi

apache-spark-sql - Spark SQL : How to consume json data from a REST service as DataFrame

转载 作者:行者123 更新时间:2023-12-04 02:14:47 26 4
gpt4 key购买 nike

我需要从提供 REST 接口(interface)的 Web 服务中读取一些 JSON 数据,以从我的 SPARK SQL 代码中查询数据以进行分析。我能够读取存储在 blob 存储中的 JSON 并使用它。

我想知道从 REST 服务读取数据并像使用其他任何 DataFrame 一样使用它的最佳方法是什么? .

顺便说一句,我正在使用 SPARK 1.6 of Linux cluster on HD insight如果这有帮助。如果有人可以共享任何代码片段,我也将不胜感激,因为我对 SPARK 环境还是很陌生。

最佳答案

Spark 无法将任意 json 解析为数据帧,因为 json 是分层结构,而数据帧是平面的。如果您的 json 不是由 spark 创建的,则很可能它不符合 condition “每一行必须包含一个单独的、自包含的有效 JSON 对象”,因此需要使用您的自定义代码进行解析,然后作为案例类对象或 spark sql 行的集合提供给数据框。

你可以像这样下载:

import scalaj.http._
val response = Http("proto:///path/to/json")
.header("key", "val").method("get")
.execute().asString.body

然后将您的 json 解析为 shown in this answer .然后创建一个案例类对象的 Seq(比如 seq)并创建一个数据框为

seq.toDF

关于apache-spark-sql - Spark SQL : How to consume json data from a REST service as DataFrame,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37112986/

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