Spark SQL 与 Spark SQL on Hive 区别
来源:互联网 发布:金融数据库有什么后果 编辑:程序博客网 时间:2024/03/28 19:10
Spark SQL Data Source
spark 2.0.2
通用的数据载入功能
最简单的形式,默认的数据源格式是parquet,当然默认的格式可以通过spark.sql.sources.default进行配置:
val usersDF = spark.read.load("examples/src/main/resources/users.parquet")usersDF.select("name", "favorite_color").write.save("namesAndFavColors.parquet")
手动设置选项
你可以使用额外的选项手动指定数据源,数据源是通过完全限定名指定的(例如org.apache.spark.sql.parquet),但是已经在源码中编译过的,可以使用简称(如json, parquet, jdbc, orc, libsvm, csv, text)。使用这种语法,DataFrames 载入的任何数据类型都可以转换成其他类型。
val peopleDF = spark.read.format("json").load("examples/src/main/resources/people.json")peopleDF.select("name", "age").write.format("parquet").save("namesAndAges.parquet")
直接在文件上运行SQL
不使用read API,直接将文件载入DataFrame中,并查询:
val sqlDF = spark.sql("SELECT * FROM parquet.`examples/src/main/resources/users.parquet`")
保存模型
保存操作使用SaveMode进行可选设置,来指定对已经存在数据如何处理。
保存到持久化表
Parquet Files
Parquet 是柱状的格式,应用于于许多数据处理系统中。Spark SQL 支持对Parquet 文件的读和写,来自动保存原始数据的schema。
// Encoders for most common types are automatically provided by importing spark.implicits._import spark.implicits._val peopleDF = spark.read.json("examples/src/main/resources/people.json")// DataFrames can be saved as Parquet files, maintaining the schema informationpeopleDF.write.parquet("people.parquet")// Read in the parquet file created above// Parquet files are self-describing so the schema is preserved// The result of loading a Parquet file is also a DataFrameval parquetFileDF = spark.read.parquet("people.parquet")// Parquet files can also be used to create a temporary view and then used in SQL statementsparquetFileDF.createOrReplaceTempView("parquetFile")val namesDF = spark.sql("SELECT name FROM parquetFile WHERE age BETWEEN 13 AND 19")namesDF.map(attributes => "Name: " + attributes(0)).show()// +------------+// | value|// +------------+// |Name: Justin|// +------------+
Partition Discovery
Schema Merging
Hive metastore Parquet table conversion
Hive/Parquet Schema Reconciliation
Metadata Refreshing
==JDBC To Other Databases==
0 0
- Spark SQL 与 Spark SQL on Hive 区别
- spark sql on hive
- spark sql on hive初探
- Spark SQL on Hive配置
- [Spark]Shark, Spark SQL, Hive on Spark以及SQL On Spark的未来
- Spark SQL与Hive On MapReduce速度比较
- Spark SQL与Hive On MapReduce速度比较
- spark sql与hive整合
- spark sql on hive安装问题解析
- spark sql on hive笔记一
- spark sql on hive配置及其使用
- Spark-SQL和Hive on Spark, SqlContext和HiveContext
- Shark, Spark SQL, Hive on Spark, 以及SQL on Apache Spark的未来
- Spark SQL with Hive
- Spark SQL+Hive历险记
- spark-sql读取hive
- spark-sql 结合 hive
- spark sql with hive
- 常见的存储过程实例
- 分布式小练习FastDFS, exec 函数复习,log模块集成 gdb调试复习,Makefile
- 网页JavaScript时间出现 117年 请调整您的计算机日期! -------最好的解决办法
- 一个案例深入Python中的__new__和__init__
- 网络编程--客户端返回connect refused 和 no route to host
- Spark SQL 与 Spark SQL on Hive 区别
- Oracle存储过程基本语法介绍
- MySQL存储过程详解 mysql 存储过程
- 内部分享栏
- (转)Android之存储篇_SQLite数据库_让你彻底学会SQLite的使用
- 淡入淡出
- 《算法竞赛入门经典》第七章7.1,7.2,7.3(总结)
- android view事件传递总结
- 各类型取值范围