spark hive区别

一:Hive本质是是什么

1:hive是分布式又是数据仓库,同时又是查询引擎,Spark SQL只是取代的HIVE的查询引擎这一部分,企业一般使用Hive+spark SQL进行开发

2:hive的主要工作

1>  把HQL翻译长map-reduce的代码,并且有可能产生很多mapreduce的job

2> 把生产的Mapreduce代码及相关资源打包成jar并发布到Hadoop的集群当中并进行运行

3:hive架构

4:hive默认情况下用derby存储元数据,所以在生产环境下一般会采用多用户的数据库进行元数据的存储,并可以读写分离和备份,一般使用主节点写,从节点读,一般使用mysql

5:hive数据仓库数据的具体存储

二:SparkSQL  和DataFrame

1:处理一切存储介质和各种格式的数据(可以扩展sparksql来读取更多类型的数据)

2:Spark SQL把数据仓库的计算速度推向了新的高度(Tungsten成熟之后会更厉害)

3:Spark SQL 推出的Dataframe可以让数据仓库直接使用机器学习,图计算等复杂算法

4:HIVE+Spark SQL+DataFrame:

i> Hive:负责廉价的数据仓库存储

ii>Spark Sql:负责高速的计算

iii> DataFrame:负责复杂的数据挖掘

三: DataFrame与RDD

1:DataFrame是一个分布式的table

2:RDD和DataFrame的根本差异

1.RDD是以Record为单位的,

2.DataFrame包含了每一个Record的Metadata信息,也就是说DataFrame的的优化是基于列的优化,RDD是基于行的优化

时间: 2024-11-10 23:41:05

spark hive区别的相关文章

Spark(Hive) SQL中UDF的使用(Python)

相对于使用MapReduce或者Spark Application的方式进行数据分析,使用Hive SQL或Spark SQL能为我们省去不少的代码工作量,而Hive SQL或Spark SQL本身内置的各类UDF也为我们的数据处理提供了不少便利的工具,当这些内置的UDF不能满足于我们的需要时,Hive SQL或Spark SQL还为我们提供了自定义UDF的相关接口,方便我们根据自己的需求进行扩展. 在Hive的世界里使用自定义UDF的过程是比较复杂的.我们需要根据需求使用Java语言开发相应的

Spark(Hive) SQL数据类型使用详解(Python)

Spark SQL使用时需要有若干“表”的存在,这些“表”可以来自于Hive,也可以来自“临时表”.如果“表”来自于Hive,它的模式(列名.列类型等)在创建时已经确定,一般情况下我们直接通过Spark SQL分析表中的数据即可:如果“表”来自“临时表”,我们就需要考虑两个问题: (1)“临时表”的数据是哪来的? (2)“临时表”的模式是什么? 通过Spark的官方文档可以了解到,生成一张“临时表”需要两个要素: (1)关联着数据的RDD: (2)数据模式: 也就是说,我们需要将数据模式应用于关

spark hive结合杂记

1.下载spark源码,在spark源码目录下面有个make-distribution.sh文件,修改里面的参数,使编译后能支持hive,修改后执行该文件.(要预先安装好maven才能编译). 2.将编译好的spark源码部署到机器上,然后将hive/conf中的hive-site.xml拷贝到spark/conf目录下.然后可以通过spark-shell来测试一下,详见:http://www.cnblogs.com/hseagle/p/3758922.html 3.spark中使用hive要时

Spark(Hive) SQL中UDF的使用(Python)【转】

相对于使用MapReduce或者Spark Application的方式进行数据分析,使用Hive SQL或Spark SQL能为我们省去不少的代码工作量,而Hive SQL或Spark SQL本身内置的各类UDF也为我们的数据处理提供了不少便利的工具,当这些内置的UDF不能满足于我们的需要时,Hive SQL或Spark SQL还为我们提供了自定义UDF的相关接口,方便我们根据自己的需求进行扩展. 在Hive的世界里使用自定义UDF的过程是比较复杂的.我们需要根据需求使用Java语言开发相应的

hadoop和spark的区别介绍

学习hadoop已经有很长一段时间了,好像是二三月份的时候朋友给了一个国产Hadoop发行版下载地址,因为还是在学习阶段就下载了一个三节点的学习版玩一下.在研究.学习hadoop的朋友可以去找一下看看(发行版 大快DKhadoop,去大快的网站上应该可以下载到的.)在学习hadoop的时候查询一些资料的时候经常会看到有比较hadoop和spark的,对于初学者来说难免会有点搞不清楚这二者到底有什么大的区别.我记得刚开始接触大数据这方面内容的时候,也就这个问题查阅了一些资料,在<FreeRCH大数

Spark&amp;Hive结合起来

1.spark与Hive结合起来 前提:当你spark的版本是1.6.1的时候,你的Hive版本要1.2.1,用别的版本会有问题 我们在做的时候,Hive的版本很简单,我们只需要解压缩,告诉他Hive的源数据在哪里即可 1.首先我们进入/conf/hive-site.xml文件,进行修改jdbc的配置 则此时这个IP要改为only的vm1下的那个IP,不能改为自己无线网络的IP 2.进入bin:./bin/hive 执行成功,会自动创建hive这个库 hive中创建person表 切记:在此之前

Spark&amp;Hive:如何使用scala开发spark作业,并访问hive。

背景: 接到任务,需要在一个一天数据量在460亿条记录的hive表中,筛选出某些host为特定的值时才解析该条记录的http_content中的经纬度: 解析规则譬如: 需要解析host: api.map.baidu.com 需要解析的规则:"result":{"location":{"lng":120.25088311933617,"lat":30.310684375444877}, "confidence&quo

spark+hive运行时没有写权限

当使用spark连接hive时,无论是通过spark-submit提交作业,还是使用spark-shell,spark-sql 都会报以下错误: Exception in thread "main" java.lang.RuntimeException: java.lang.RuntimeException: The root scratch dir: /tmp/hive on HDFS should be writable. Current permissions are: rwx-

Hadoop+HBase+Spark+Hive环境搭建

杨赟快跑 简书作者 2018-09-24 10:24 打开App 摘要:大数据门槛较高,仅仅环境的搭建可能就要耗费我们大量的精力,本文总结了作者是如何搭建大数据环境的(单机版和集群版),希望能帮助学弟学妹们更快地走上大数据学习之路. 0. 准备安装包 本文所需的系统镜像.大数据软件安装包.开发环境软件安装包等都可以在我的百度云盘中下载.链接:系统镜像和各种大数据软件密码:n2cn 1. Windows下安装Ubuntu双系统 Hadoop等大数据开源框架是不支持Windows系统的,所以需要先安