SparkSQL 数据源 (Local、Json、Mysql、Hive)

1、加载 json 文件package bigdata.spark-sqlimport org.apache.spark.sql.{DataFrame, Dataset, SparkSession}object DataSourceDemo { def main(args: Array[String]): Unit = { val spark: SparkSession = SparkSession .builder() .m
摘要由CSDN通过智能技术生成

0、获取SparkSession 工具类

package com.bigdata.spark.sql

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

object SparkSessionUtil {
   
  def util(appName: String):SparkSession= {
   
     SparkSession.builder().master("local[*]").appName(appName).getOrCreate()
  }
}

1、加载 json 文件

package com.bigdata.spark.sql

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])

{
   "name": "lisi", "age" : 20, "friends": ["lisi", "zs"]}
{
   "name": "zs", 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值