SparkSQL入门、Hive和Spark整合、SparkSession入口

1、SparkSQL入门

1.1 SparkSQL特性

以前的老版本1.0开始出现SparkSQL,在官网显示只有SparkSQL一个,1.3毕业;现在的官网显示:SQL,DataFrames,and Datasets,也就说1.0版本只有一个框架,就是SparkSQL,现在有SQL,DataFrames,Datasets三个框架。
特性:官网 http://spark.apache.org/sql/

  • Spark SQL is Apache Spark’s module for working with structured data–>Spark SQL是Apache Spark处理结构化数据的模块。
  • Integrated.Seamlessly mix SQL queries with Spark programs.–>整合性。无缝地将SQL查询与Spark程序混合在一起。
  • Uniform Data Access。Connect to any data source the same way.–>统一的数据访问。以同样的方式连接到任何数据源。
  • Hive Integration。Run SQL or HiveQL queries on existing warehouses.–>Hive集成。在现有仓库上运行SQL或HiveQL查询。
  • Standard Connectivity。Connect through JDBC or ODBC.–>标准连接。通过JDBC或ODBC连接

1.2 Spark SQL, DataFrames and Datasets Guide

官网:http://spark.apache.org/docs/2.4.2/sql-programming-guide.html
在这里插入图片描述

  • Spark SQL是一个用于结构化数据处理的Spark模块。与基本的Spark RDD API不同,Spark SQL提供的接口为Spark提供了关于数据结构和正在执行的计算的更多信息。在内部,Spark SQL使用这些信息来执行优化。有几种与Spark SQL交互的方法,包括SQL和Dataset API。当计算结果时,使用相同的执行引擎,而不依赖于使用哪种API/语言来表示计算。

  • Spark SQL的一个用途是执行SQL查询。
    Spark SQL还可以用于从现有Hive安装中读取数据。
    当在另一种编程语言中运行SQL时,结果将作为Dataset/DataFrame返回。您还可以使用命令行或JDBC/ODBC与SQL接口进行交互。

  • Dataset 是分布式的数据集合。Dataset是Spark 1.6中添加的一个新接口,它提供了RDDs(强类型,能够使用强大的lambda函数)的优点,以及Spark SQL优化执行引擎的优点。可以从JVM对象构造数据集,然后使用功能转换(map、flatMap、filter等)操作数据集。Dataset API在Scala和Java中可用。Python不支持Dataset API。

  • DataFrame是组织成命名列的数据集。是在Spark 1.3中出现的,它在概念上等价于关系数据库中的表或R/Python中的数据框架,但在底层有更丰富的优化。DataFrames 可以由一系列广泛的源构建,例如:结构化数据文件、Hive中的表、外部数据库或现有的RDDs。DataFrame API可在Scala、Java、Python和R中使用。在Scala和Java中,DataFrame 表示一个Rows的Dataset。在Scala API中,DataFrame只是Dataset[Row]的一个类型别名。而在Java API中,用户需要使用Dataset来表示DataFrame。

2、Hive和Spark

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值