论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
应用中心
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
qidao123.com技术社区-IT企服评测·应用市场
»
论坛
›
物联网
›
物联网
›
Hive on Spark、Spark on Hive的异同
Hive on Spark、Spark on Hive的异同
金歌
论坛元老
|
2024-6-10 19:43:50
|
显示全部楼层
|
阅读模式
楼主
主题
1825
|
帖子
1825
|
积分
5475
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
本篇对 Hive on Spark、Spark on Hive 两个概念做个澄清。
1.1 什么是 Hive on Spark?
界说:
Hive-on-Spark 是在 Hive 上新增一种盘算引擎:Spark
目的
:借助 Spark 内存盘算引擎的优势,提拔 Hive 查询性能(相较于默认实行引擎 MR)
地位
:Spark 和 Hive 原有的实行引擎 MR,Tez 平级,可互相替换
益处
:给已经部署了 Hive 大概 Spark 的用户提供了更加机动的选择,从而进一步提高 Hive 和 Spark 的遍及率
1.2 什么是 Spark on Hive?
界说
:没有官方的 Spark on Hive 说法,属于各人习惯性称呼。结合网上资料,将其对应为 SparkSQL 读写 Hive 表特定场景
目的
:使 SparkSQL 能够访问 Hive 表
地位
:SparkSQL 对 Hive 为非必须依靠,SparkSQL 可以创建自己的metastore_db,但两者结合使用为现在常态
益处
:可以使新版 SparkSQL 访问旧的数仓表,便于 SparkSQL 推广和应用
2.1 Hive on Spark 历史
Hive 是基于 Hadoop 平台的数据堆栈,最初由 Facebook 开发
在经过多年发展之后,已经成为 Hadoop 事实上的SQL引擎尺度
Hive 最初的盘算引擎为 MapReduce
受限于其自身的 Map + Reduce 盘算模式,以及不够充分的内存使用,MapReduce 的性能难以得到提拔
Hortonworks 于 2013 年提出将 Tez 作为另一个盘算引擎以提高 Hive 的性能
Hortonworks 有一个死对头 Cloudera
2014 年,Cloudera 主导启动了 Hive on Spark。这个项目得到了 IBM,Intel 和 MapR 的支持(注意:没有 Databricks,但 Databricks 在开发过程中积极共同)
2015 年 1 月初,Hive-on-Spark 合并回 trunk, 并在 Hive 后续版本中发布
2.2 SparkSQL 历史
定位: Spark 官方 Databricks 的项目,Spark 项目本身主推的 SQL 实现
Spark 很早就已开始对接 Hive, 2013年,发布了 Shark 项目,用以提拔 Hive 查询性能
shark 底层使用 spark 的基于内存的盘算模型,从而让性能比 Hive 提拔了数倍到上百倍
底层很多东西还是依靠于 Hive,修改了内存管理、物理计划、实行三个模块
Shark 对于 Hive 的修改/侵入性过于巨大,导致 Hive 社区都无法担当,无法合并回社区
2014 年 6 月 1 日的时候,Spark 宣布不再开发 Shark,全面转向 Spark SQL 的开发
3. Hive on Spark / Spark on Hive 异同
相同点:
SQL 实行层都是 Spark 引擎
不同点:
SQL 剖析层不同, Hive on Spark (hive compiler), Spark on Hive (SparkSQL compiler)
各自的恒久规划不同:
其中 SparkSQL 作为 Spark 生态的一员继续发展,而不再受限于 Hive,只是兼容 Hive;而 Hive on Spark 是一个 Hive 的发展计划,该计划将 Spark 作为 Hive 的底层引擎之一,也就是说,Hive 将不再受限于一个引擎,可以采用 Map-Reduce、Tez、Spark 等引擎。
4. Hive on Spark 技术实现原理
Hive on Spark 总体的设计思路是,尽可能重用 Hive 逻辑层面的功能;从生成物理计划开始,提供一整套针对 Spark 的实现
尽可能淘汰对 Hive 原有代码的修改
对于选择 Spark 的用户,应使其能够自动的获取 Hive 现有的和未来新增的功能
尽可能低落维护资本,保持对 Spark 依靠的松耦合
引入 SparkCompiler,与 MapReduceCompiler 和 TezCompiler 平行,将 Operator Tree 转换为 Task Tree
SparkWork 对应 DAG 实行计划,SparkTask 对应 Job 任务
最后通过 foreachAsync 将 SparkTask 提交实行。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
金歌
论坛元老
这个人很懒什么都没写!
楼主热帖
iOS 集成WebRTC相关知识点总结 ...
SQL Server 2014完全卸载与SQL Server ...
贩卖和售前,如何与**商一起“玩耍”? ...
白鲸开源 DataOps 平台加速数据分析和 ...
iOS直播/游戏怎么利用特殊音效制造娱乐 ...
查漏补缺——路由显示的是http://local ...
.NET ORM框架HiSql实战-第一章-集成HiS ...
一个工作薄中快速新建多个数据表 ...
【docker专栏6】详解docker容器状态转 ...
缓存穿透,缓存雪崩,缓存击穿 ...
标签云
渠道
国产数据库
集成商
AI
运维
CIO
存储
服务器
浏览过的版块
MES
虚拟化与私有云
linux
人工智能
云原生
快速回复
返回顶部
返回列表