如何基于多个 JSON 文件创建 DataFrame

How to create DataFrame based on multiple JSON files

我在一个文件夹中有很多 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 在文件夹 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 不应该有换行符。