Spark SQL 初识1(2.0)
来源:互联网 发布:2017大数据峰会 编辑:程序博客网 时间:2024/06/15 23:34
什么是Spark SQL
1. Apache Spark SQL 是Spark用来操作结构化与半结构化数据的接口。
2. 从历史来讲,Spark SQL 的前身是Shark (SQL on Spark), Shark之于Spark就相当于hive 之于Hadoop MapReduce。
3. Spark SQL提供了一种特殊的RDD,早些版本称为SchemaRDD,从Spark1.3.0以后的版本,SchemaRDD已被一个称为DataFrames的编程抽象取代, DataFrames可以充当分布式SQL查询引擎。
Spark SQL 动机与解决方案
动机:
1. 多数的数据处理流程既需要关系型操作,又需要过程性操作, 比如:
1) 用户一方面需要关系型操作(如数据查询、统计分析)
2) 另一方面又需要过程式的操作(如ETL、机器学习与图分析等高级数据处理) 注解:ETL,Extraction-Transformation-Loading的缩写,中文名为数据抽取、转换和加载
2. 这两类操作常常是割裂的
解决方案(两大贡献):
1.DataFrame API : 将关系型的处理与过程型处理结合起来,可以对外部数据源(Hive、JSON等)和Spark内建的分布式集合RDD进行关系型操作。
2.Catalyst: 一个可扩展的SQL查询优化器,采用了Scala语言的特性(模式匹配,Quasiquotes(https://docs.scala-lang.org/overviews/quasiquotes/intro.html))可增加组合规则、控制代码生成,定义扩展。
Spark SQL 的编程接口
阅读全文
0 0
- Spark SQL 初识1(2.0)
- spark SQL (一)初识 ,简介
- spark系列博客-(1)初识spark
- Spark(1)-初识Pyspark
- 初识Spark2.0之Spark SQL
- 初识Spark2.0之Spark SQL
- Spark初识
- Spark初识
- 初识Spark
- 初识 Spark
- Spark初识
- Spark初识
- spark初识
- Spark学习笔记:初识Spark
- 初识Spark之 Spark API
- spark学习笔记:初识spark
- 使用spark-sql-perf评测spark 2.0
- Spark学习之Spark SQL(8)
- JS/JavaScript中 != 和 !== 的用法区别
- static_cast <new_type> (expression)
- 关于树的冷知识
- 手机网站的几点注意
- Linux教程____Linux下RPM包管理
- Spark SQL 初识1(2.0)
- 介绍几种常用的插值方法以及代码-双三次插值
- 导出命令记录
- Spring详解-----------对ORM的支持
- JS提取任意两个数组的公共部分(超简单)【原创】
- java框架的超时设置
- 【Java】为ArrayList去重
- 判断输入框验证2
- Android仿网易云音乐播放页面 背景虚化碟片效果