【问题标题】:How to create DataFrame based on multiple JSON files如何基于多个 JSON 文件创建 DataFrame
【发布时间】:2018-02-02 13:23:52
【问题描述】:

我在一个文件夹中有很多 JSON 文件。它们都具有相同的结构。现在我要创建DataFrame,每个JSON文件都应该是这个DataFrame所在的行。

我知道如何基于单个 JSON 字符串创建 DataFrame,但我不知道如何处理多个:

import spark.implicits._
val jsonStr = """{ "key": 111, "value": 54, stamp: "aaa"}"""
val df = spark.read.json(Seq(jsonStr).toDS)

【问题讨论】:

    标签: json scala apache-spark spark-dataframe


    【解决方案1】:

    假设您的 JSON 在文件夹 src/main/resources

    以下代码将产生所需的结果:

      private val df: DataFrame = spark.read.json("src/main/resources")
      df.show()
    
    +---+-----+-----+
    |key|stamp|value|
    +---+-----+-----+
    |111|  aaa|   54|
    |111|  aaa|   54|
    +---+-----+-----+
    

    请注意,JSON 应该是机器可读的,而不是人类可读的(这意味着 JSON 不应该有换行符。

    【讨论】:

    • 我应该为上面导入什么库?
    • @Sade 它是 spark-sql 库中的类
    猜你喜欢
    • 2018-10-01
    • 2022-01-09
    • 2019-01-26
    • 2015-08-05
    • 2021-12-08
    • 1970-01-01
    • 2022-09-29
    • 1970-01-01
    • 2017-01-23
    相关资源
    最近更新 更多