11.2 加载 JSON 文件

Spark SQL 能够自动推测 JSON数据集的结构,并将它加载为一个Dataset[Row].

可以通过SparkSession.read.json()去加载一个JSON 文件。 也可以通过SparkSession.read.format("json").load()来加载.

注意: 这个JSON文件不是一个传统的JSON文件,每一行都得是一个完整的JSON串。

{"name": "lisi", "age" : 20, "friends": ["lisi", "zs"]}
{"name": "zs", "age" : 30, "friends": ["lisi", "zs"]}
{"name": "wangwu", "age" : 15, "friends": ["lisi", "zs"]}
package day05

import org.apache.spark.sql.{DataFrame, Dataset, SparkSession}

object DataSourceDemo {
    def main(args: Array[String]): Unit = {
        val spark: SparkSession = SparkSession
            .builder()
            .master("local[*]")
            .appName("Test")
            .getOrCreate()
        import spark.implicits._

        val df: DataFrame = spark.read.json("target/classes/user.json")
        val ds: Dataset[User] = df.as[User]
        ds.foreach(user => println(user.friends(0)))

    }
}
case class User(name:String, age: Long, friends: Array[String])

Copyright © 尚硅谷大数据 2019 all right reserved,powered by Gitbook
该文件最后修订时间: 2019-02-09 11:14:22

results matching ""

    No results matching ""