欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

spark -外部数据源 博客分类: spark 外部数据源avro 

程序员文章站 2024-03-12 18:53:26
...

1.在Spark1.2中提供了External DataSource API,开发者可以根据接口来实现自己的外部数据源,如avro, csv, json, parquet等等。

 

(1)spark自带的外部数据源
spark -外部数据源
            
    
    博客分类: spark 外部数据源avro 
 

(2)其他开发者贡献的 https://spark-packages.org/

spark -外部数据源
            
    
    博客分类: spark 外部数据源avro 

 

以avro为例,点击homepage,跳转到github网址:https://github.com/databricks/spark-avro,github页面详细介绍了用法

spark -外部数据源
            
    
    博客分类: spark 外部数据源avro 
 

本地shell测试

spark -外部数据源
            
    
    博客分类: spark 外部数据源avro 
 

 

 

2.spark 外部数据源 Api 练习

package df

import org.apache.spark.sql.SparkSession

object ExternalSource {

  def main(args: Array[String]): Unit = {
    val spark = SparkSession.builder().appName("demo").master("local").getOrCreate()

    //1.读取json
    val jsonDF = spark.read.format("json").load("file:////data/spark-2.3.0-bin-hadoop2.7/examples/src/main/resources/employees.json")
    jsonDF.printSchema()

    //2.读取parquet
    val parquetDF = spark.read.format("parquet").load("file:////data/spark-2.3.0-bin-hadoop2.7/examples/src/main/resources/users.parquet")
    parquetDF.printSchema()

    //3.读取scv
    val csvDF = spark.read.format("csv").load("file:////data/spark-2.3.0-bin-hadoop2.7/examples/src/main/resources/people.csv")
    csvDF.printSchema()
  }
}

 

 

 

  • spark -外部数据源
            
    
    博客分类: spark 外部数据源avro 
  • 大小: 17.2 KB
  • spark -外部数据源
            
    
    博客分类: spark 外部数据源avro 
  • 大小: 133.1 KB
  • spark -外部数据源
            
    
    博客分类: spark 外部数据源avro 
  • 大小: 123.7 KB
  • spark -外部数据源
            
    
    博客分类: spark 外部数据源avro 
  • 大小: 53.8 KB