Spark和Hive的区别

1 Hive
Hive 是基于 Hadoop 的数据仓库工具,同时又是查询引擎, Spark SQL 只是取代的 Hive 的查询引擎这一部分,企业可以使用Hive+Spark SQL 进行开发。
Hive 的主要工作如下:
把HQL 翻译长 map-reduce 的代码,并且有可能产生很多 mapreduce 的 job
把生产的Mapreduce 代码及相关资源打包成 jar 并发布到 Hadoop 的集群当中并进行运行
Hive默认情况下用 derby 存储元数据,所以在生产环境下一般会采用多用户的数据库进行元数据的存储,并可以读写分离和备份,一般使用主节点写,从节点读,一般使用MySQL 。

2 Spark
Spark SQL处理一切存储介质和各种格式的数据 ( 可以扩展 sparksql 来读取更多类型的数据 ) ;
Spark SQL把数据仓库的计算速度推向了新的高度( Tungsten 成熟之后会更厉害);
Spark SQL推出的 Dataframe 可以让数据仓库直接使用机器学习,图计算等复杂算法;
Hive+Spark SQL+DataFrame 使用:
Hive:负责廉价的数据仓库存储
Spark Sql:负责高速的计算
DataFrame:负责复杂的数据挖掘

3 Hive on Spark Spark Sql 的区别
Hive on Spark大体与 Spark SQL 结构类似,只是 SQL 解析器不同,但是计算引擎都是 Spark 。

4 Hive on Mapreduce Spark SQL 使用场景
Hive on Mapreduce 场景
Hive 的出现可以让那些精通 SQL 技能、但是不熟悉 MapReduce 、编程能力较弱与不擅长 Java 语言的用户能够在HDFS 大规模数据集上很方便地利用 SQL 语言查询、汇总、分析数据,毕竟精通 SQL 语言的人要比精通Java 语言的多得多。 Hive 适合处理离线非实时数据
Spark SQL 场景
Spark 既可以运行本地 local 模式,也可以以 Standalone 、 cluster 等多种模式运行在 Yarn 、 Mesos 上,还可以运行在云端例如EC2 。此外, Spark 的数据来源非常广泛,可以处理来自 HDFS 、 HBase 、Hive、 Cassandra 、 Tachyon 上的各种类型的数据。
实时性要求或者速度要求较高的场所

5 Hive on Mapreduce Spark SQL 性能对比
Spark SQL 和 Hive on Spark 时间差不多,但都比 Hive on mapreduce 快很多,官方数据认为 Spark 会被传统mapreduce快 10-100 倍。

相关推荐
不爱学习的YY酱38 分钟前
【操作系统不挂科】<内存管理-文件系统实现(18)>选择题(带答案与解析)
java·大数据·数据库
guanpinkeji1 小时前
陪诊小程序搭建,打造一站式陪诊服务
大数据·小程序·小程序开发·陪诊·陪诊小程序
胡耀超2 小时前
如何从全局视角规划项目与战略决策(“精准接送”案例、技术架构设计与选型、业务逻辑及产品商业模式探讨)
大数据·数据挖掘·软件架构·商业模式·数据管理
标贝科技2 小时前
标贝科技受邀出席2024ADD数据应用场景大会 共议数据要素发展新契机
大数据·数据库·人工智能·科技·语言模型·数据挖掘
出发行进3 小时前
Hive其五,使用技巧,数据查询,日志以及复杂类型的使用
大数据·hive·数据分析
ssxueyi3 小时前
数据仓库有哪些?
大数据·数据仓库·数据湖
武子康3 小时前
大数据-256 离线数仓 - Atlas 数据仓库元数据管理 正式安装 启动服务访问 Hive血缘关系导入
大数据·数据仓库·hive·hadoop
五分钟学大数据3 小时前
数仓面试中3个常考的SQL数据分析题
大数据
莫叫石榴姐4 小时前
SQL进阶技巧:如何计算算法题分发糖果问题?
大数据·数据结构·数据库·sql·算法·数据挖掘·数据分析
河南查新信息技术研究院4 小时前
科技查新对专利申请有什么帮助?
大数据·科技·全文检索