如何使用 Spark 加载 JSON(保存在 csv 中的路径)?

Posted

技术标签:

【中文标题】如何使用 Spark 加载 JSON(保存在 csv 中的路径)?【英文标题】:How to load JSON(path saved in csv) with Spark? 【发布时间】:2016-06-20 16:46:41 【问题描述】:

我是 Spark 的新手。 我可以在 Spark 中加载 .json 文件。如果一个文件夹中有数千个 .json 文件怎么办。 picture of .json files in the folder

我有一个 csv 文件,它用标签对 .json 文件进行分类。picture of csv file

如果我想加载和保存数据,Spark应该怎么做。(例如。我想加载csv中的第一个信息,但它是文本信息。但是它给出了.json的路径,我想加载.json,然后保存输出。所以我会知道第一个Trusted label graph的json信息。)

【问题讨论】:

【参考方案1】:

对于 JSON:

jsonRDD = sql_context.read.json("path/to/json_folder/");

对于 CSV,从这里安装 spark-csv Databricks' spark-csv

csvRDD = sql_context.read.load("path/to/csv_folder/",format='com.databricks.spark.csv',header='true',inferSchema='true')

【讨论】:

谢谢。另一个问题。如何让数千个 .json 并行工作?映射和减少? 另外,请注意,从 2.0.0 开始,解析 csv 将成为 Spark 本身的一部分,您将不再需要依赖 spark-csv。

以上是关于如何使用 Spark 加载 JSON(保存在 csv 中的路径)?的主要内容,如果未能解决你的问题,请参考以下文章

在 Spark DataFrame 上保存到 JSON 并重新加载,模式列序列发生变化

如何读取 CSV 文件,然后在 Spark Scala 中将其保存为 JSON?

将 JSON 加载到 Spark 数据框

如何将 JSON 格式的单行 Spark 数据框分解为多行?

如何基于相等性检查在 Spark 中使用内部数组查询嵌套 json

spark 如何从 JSON 推断数字类型?