第4章 Spark SQL概述

4-1 课程目录

Spark SQL前世今生 SQL on Hadoop常用框架介绍

Spark SQL概述 Spark SQL愿景

Spark SQL架构

4-2 -Spark SQL前世今生

为什么使用SQL

1)事实上的标准 2)简单易用 3)受众面大

文本文件统计分析

id,name,age,city

1001,zhangsan,45,beijing

1002,kusu,39,shanghai

1003,wangwu,34,tianjin

........

table定义:person

column定义

id:int

name:string

age:int

city:string

hive: load data

sql:query...

Hive:类似于sql的hive QL语言,sql==>mapreduce

特点:mapreduce

改进:hive on tez,hive on spark, hive on mareduce

Shark:hive on spark==>shark(hive on spark)

shark推出:欢迎,基于spark,基于内存的列式存储,与hive能够兼容

缺点:hql ql的解析 、逻辑执行计划生成、执行计划的优化是依赖于hive的,仅仅只是把物理执行计划从mr作业替换成spark作业。

Shark终止以后,产生了2个分支

1)hive on spark

hive社区,源码在hive中

2)spark sql

spark社区,源码在spark中

支持多种数据源,多种优化技术,扩展性很好

4-3 -SQL on Hadoop常用框架介绍

1)hive

SQL==》mapreduce

metastore:元数据

sql:database,table,view

facebook

2)impala

cloudera:cdh(建议大家在生产环境使用hadoop系列版本)、cm

sql:自己的守护进程执行的,非mr

3)presto

facebook

京东

sql

4)drill

sql

访问:hdfs ,rebms,json,hbase,mangodb,s3,hive

5)spark sql

sql

dataframe/dataset api

metastore

访问:hdfs ,rebms,json,hbase,mangodb,s3,hive

4-4 -Spark SQL概述

官网:https://spark.apache.org/sql/

Spark SQL is Apache Spark's module for working with structured data.

Spark sql它不仅仅是访问或者操作sql功能,还提供了其他丰富的操作,外部数据源,优化

Spark SQl概述小结

1)spark sql 的应用并不局限于sql

2)访问hive,json,parquet等文件的数据

3)SQL只是spark SQL的一个功能而已

==》spark SQL这个名字并不恰当

4)spark SQL提供了SQL的api,dateframe和dataset的api

4-5 -Spark SQL愿景

4-6 -Spark SQL架构

猜你喜欢

转载自blog.csdn.net/weixin_38492276/article/details/81625651