SparkSQL Spark on Hive Hive on Spark
刚开始接触Spark被Hive在Spark中的作用搞得云里雾里,这里简要介绍下,备忘。
参考:https://blog.csdn.net/zuochang_liu/article/details/82292076
SparkSQL:是一个完全不依赖Hive的SQL引擎。
Spark On Hive
通过sparksql,加载hive的配置文件,获取到hive的元数据信息;spark sql获取到hive的元数据信息之后就可以拿到hive的所有表的数据;接下来就可以通过spark sql来操作hive表中的数据。也就是说仅仅是将Hive作为一个数据仓库,并没有用到Hive的SQL执行引擎的能力。代码在内核代码spark-hive_2.11工程中。
Hive On Spark
是把hive查询从mapreduce 的mr (hadoop 计算引擎)操作替换为spark rdd 操作;将HQL翻译成分布式可以执行的Spark程序。Hive和SparkSQL都不负责计算。也就是一个为Spark计算框架定制的Hive。和Hive基本上没有关系,耦合之处为:HQL、元数据库、UDF、序列化、反序列化机制。它是一个单独的工程,和Spark内核代码独立,但是Spark依赖于Hive On Spark, Spark中的某些模块执行过程中会调用Hive on Spark. 例如Spark JDBCServer:
Hive原来的计算模型是MR,频繁操作磁盘(将中间结果写入到HDFS中)效率低。而Hive On Spark中使用了RDD(Dataframe),然后运行在spark集群上面。元数据保存在mysql中,其中包含了hive表的描述信息,描述了那些数据库、表,以及表有多少列,每一列都是什么类型,还要描述表的数据保存在HDFS的什么位置。
Hive元数据库的功能
hive的元数据(metadata)建立了一种映射关系,执行HQL是,先到Mysql元数据库中查找描述信息,然后根据描述信息生成任务,然后将任务下发到spark集群中执行。hive on spark使用的仅仅是hive的标准和规范,不需要有hive数据库一样可以使用。要使用Hive的标准需要将hive的配置文件放在spark的conf目录下。没有安装Hive组件也没有影响。
要在Spark-Submit进程中使用开启spark对hive的支持:
val session = SparkSession.builder().master("local").appName("xx").enableHiveSupport() .getOrCreate()
转载于:https://www.cnblogs.com/maxigang/p/10324513.html
SparkSQL Spark on Hive Hive on Spark相关推荐
- beeline执行sql文件_【SparkSQL】介绍、与Hive整合、Spark的th/beeline/jdbc/thriftserve2、shell方式使用SQL...
目录 一.Spark SQL介绍 SQL on Hadoop框架: 1)Spark SQL 2)Hive 3)Impala 4)Phoenix Spark SQL是用来处理离线数据的,他的编程模型是D ...
- Spark _26_Spark On Hive的配置
网上的配置大多如下: Spark On Hive的配置 在Spark客户端配置Hive On Spark 在Spark客户端安装包下spark-1.6.0/conf中创建文件hive-site.xml ...
- Spark SQL整合Hive
Spark SQL官方释义 Spark SQL is Apache Spark's module for working with structured data. 一.使用Spark SQL访问Hi ...
- Hive on Spark和Spark sql on Hive,你能分的清楚么
摘要:结构上Hive On Spark和SparkSQL都是一个翻译层,把一个SQL翻译成分布式可执行的Spark程序. 本文分享自华为云社区<Hive on Spark和Spark sql o ...
- Spark 学习(十一) spark使用hive的元数据信息
一,简介 二,shell方式配置和使用hive元数据信息 2.1 文件配置 2.2 驱动包加载 2.3 命令行启动 三,IDEA编程方式使用hive元数据信息 3.1 添加依赖 3.2 程序示例 正文 ...
- Spark on Hive Hive on Spark傻傻分不清?
Spark on Hive? Hive on Spark傻傻分不清? 1 spark on hive Spark on hive,是spark计算引擎依托hive data source,spark ...
- 漫谈大数据 - Spark on Hive Hive on Spark
目录 Spark on hive 与 Hive on Spark 的区别 Hive查询流程及原理 Hive将SQL转成MapReduce执行速度慢 Hive On Spark优化 Hive元数据库的功 ...
- Hive编程指南-Spark操作Hive
摘要:本文将要说明如何使用Spark来对Hive进行操作 1.打jar包,提交Spark任务 通过提交spark任务的方式,如下面的scala代码.之后需要将成代码打包成一个jar包,然后提交到spa ...
- Spark SQL 与 Hive 的第一场会师
"你好,一杯热美式,加 2 份shot, 1 份焦糖,谢谢" L 跨进汇智国际中心大厦的 Starbucks, 拿着 iPhone 对着点餐机轻轻一扫,对黑带服务员小妹抛出一个笑脸 ...
最新文章
- 配置mysql为主主复制步骤
- 不愧是阿里大佬,mysql存储过程写法案例
- java核心技术-多线程并发设计原理以及常见面试题
- ❤️六W字《计算机基础知识》(三)(建议收藏)❤️
- VS Code:高效前端程序员的秘密武器
- 重磅消息:F5收购Nginx!
- chainmaker 交易执行失败也会打包到区块 落盘
- android:src app:srccompat,android – 数据绑定与srcCompat
- ai人工智能操控什么意思_为什么要建立AI分散式自治组织(AI DAO)
- xerces 64位 linux安装,linux安装xml开发包xerces-c
- 超级有用的git reset --hard和git revert命令
- send()、sendto()和recv()、recvfrom()的使用
- 随笔---为什么一到选课时教务系统就卡顿甚至登不上去
- 《阿里云前端技术周刊》第二期
- BI工具调研之——帆软
- FairyGUI个人使用手册 只有重点(1)
- 新建UEFI启动分区
- “serve with message ‘spawn vue-cli-service ENOENT”的解决办法
- 劲乐园合歌(幽灵圣典+飞吧喜鹊+唯一+v3+幽灵圣典2)铃声 劲乐园...
- STM32主从模式 精确脉冲数PWM (已实现)