SparkSql 整合 Hive】的更多相关文章

SparkSql整合Hive 需要Hive的元数据,hive的元数据存储在Mysql里,sparkSql替换了yarn,不需要启动yarn,需要启动hdfs 首先你得有hive,然后你得有spark,如果是高可用hadoop还得有zookeeper,还得有dfs(hadoop中的) 我这里有3台节点node01,node02,node03 ps:DATEDIFF(A,B)做差集 node01 先copy hive的hive-site.xml到spark 的config cp hive-site.…
整合: 1,需要将hive-site.xml文件拷贝到Spark的conf目录下,这样就可以通过这个配置文件找到Hive的元数据以及数据存放位置. 2,如果Hive的元数据存放在Mysql中,我们还需要准备好Mysql相关驱动,比如:mysql-connector-java-5.1.35.jar. 测试: 先启动hadoop集群,在启动spark集群,确保启动成功之后执行命令: spark-sql --master spark://bigdata-01:7077 --executor-memor…
spark SQL经常需要访问Hive metastore,Spark SQL可以通过Hive metastore获取Hive表的元数据.从Spark 1.4.0开始,Spark SQL只需简单的配置,就支持各版本Hive metastore的访问.注意,涉及到metastore时Spar SQL忽略了Hive的版本.Spark SQL内部将Hive反编译至Hive 1.2.1版本,Spark SQL的内部操作(serdes, UDFs, UDAFs, etc)都调用Hive 1.2.1版本的c…
文章目录 一.创建maven工程,导包 二.开发代码 一.创建maven工程,导包 <properties> <scala.version>2.11.8</scala.version> <spark.version>2.2.0</spark.version> </properties> <dependencies> <dependency> <groupId>org.scala-lang</g…
一.搭建准备环境 在搭建Hive和SparkSql进行整合之前,首先需要搭建完成HDFS和Spark相关环境 这里使用Hive和Spark进行整合的目的主要是: 1.使用Hive对SparkSql中产生的表或者库的元数据进行管理(因为SparkSql没有提供相关的功能,官方提供的是和Hive的整合方案,官方之所以不在独立去开发一个元数据管理模块是为了防止重复造轮子),所以直接复用了Hive的元数据管理这一套内容 2.单独使用Hive的话速度太慢,所以在前期就打算切换到Spark作为计算引擎,然后…
说明:spark版本:2.2.0 hive版本:1.2.1 需求: 有本地csv格式的一个文件,格式为${当天日期}visit.txt,例如20180707visit.txt,现在需要将其通过spark-sql程序实现将该文件读取并以parquet的格式通过外部表的形式保存到hive中,最终要实现通过传参的形式,将该日期区间内的csv文件批量加载进去,方式有两种: 1.之传入一个参数,说明只加载一天的数据进去 2.传入两个参数,批量加载这两个日期区间的每一天的数据 最终打成jar包,进行运行 步…
spark-sql 写代码方式 1.idea里面将代码编写好打包上传到集群中运行,上线使用 spark-submit提交 2.spark shell (repl) 里面使用sqlContext 测试使用,简单任务使用 spark-shell --master yarn-client 不能使用yarn-cluster 3.spark-sql spark-sql --master yarn-client 不能使用yarn-cluster 可以整合hive 使用hive的元数据 1.在hive的hiv…
1. 读取数据库的形式创建DataFrame DataFrameFromJDBC object DataFrameFromJDBC { def main(args: Array[String]): Unit = { // 创建SparkSession实例 val spark: SparkSession = SparkSession.builder() .appName(this.getClass.getSimpleName) .master("local[*]") .getOrCrea…
由于我Spark采用的是Cloudera公司的CDH,并且安装的时候是在线自动安装和部署的集群.最近在学习SparkSQL,看到SparkSQL on HIVE.下面主要是介绍一下如何通过SparkSQL在读取HIVE的数据. (说明:如果不是采用CDH在线自动安装和部署的话,可能需要对源码进行编译,使它能够兼容HIVE. 编译的方式也很简单,只需要在Spark_SRC_home(源码的home目录下)执行如下命令: ./make-distribution.sh --tgz -Phadoop-2…
简要介绍了SparkSQL与Hive on Spark的区别与联系 一.关于Spark 简介 在Hadoop的整个生态系统中,Spark和MapReduce在同一个层级,即主要解决分布式计算框架的问题. 架构 Spark的架构如下图所示,主要包含四大组件:Driver.Master.Worker和Executor. Spark特点 · Spark可以部署在YARN上 · Spark原生支持对HDFS文件系统的访问 · 使用Scala语言编写 部署模型 1. 单机模型:主要用来开发测试.特点:Dr…
使用Spring boot整合Hive,在启动Spring boot项目时,报出异常: java.lang.NoSuchMethodError: org.eclipse.jetty.servlet.ServletMapping.setDefault(Z)V 1 经过排查,是maven的包冲突引起的,具体做法,排除:jetty-all.hive-shims依赖包.对应的pom配置如下: <dependency> <groupId>org.apache.hive</groupId…
spark on yarn模式下配置spark-sql访问hive元数据 目的:在spark on yarn模式下,执行spark-sql访问hive的元数据.并对比一下spark-sql 和hive的效率. 软件环境: hadoop2.7.3 apache-hive-2.1.1-bin spark-2.1.0-bin-hadoop2.7 jd1.8 hadoop是伪分布式安装的,1个节点,2core,4G内存. hive是远程模式. spark的下载地址: http://spark.apach…
写在前面:hive的版本是1.2.1spark的版本是1.6.x http://spark.apache.org/docs/1.6.1/sql-programming-guide.html#hive-tables 查看hive和spark版本对应情况 SparkSQL操作Hive中的表数据spark可以通过读取hive的元数据来兼容hive,读取hive的表数据,然后在spark引擎中进行sql统计分析,从而,通过sparksql与hive结合实现数据分析将成为一种最佳实践.详细实现步骤如下:…
[完美解决]Spark-SQL.Hive多 Metastore.多后端.多库 [完美解决]Spark-SQL.Hive多 Metastore.多后端.多库 SparkSQL 支持同时连接多种 Metastore,包括Atlas2(PB),Hive 0.12+几种格式.用户可以在一条SQL语句中操作来自多个 Metastore 的表. 配置 Metastore 按照正常的使用方式配置 conf/hive-site.xml 比如配置访问 mysql: <?xml version="1.0&qu…
http://blog.csdn.net/wtq1993/article/details/52435563 http://blog.csdn.net/yeruby/article/details/51448188 hive on spark VS SparkSQL VS hive on tez 前一篇已经弄好了SparkSQL,SparkSQL也有thriftserver服务,这里说说为啥还选择搞hive-on-spark: SparkSQL-Thriftserver所有结果全部内存,快是快,但…
使用Spring boot整合Hive,在启动Spring boot项目时,报出异常: java.lang.NoSuchMethodError: org.eclipse.jetty.servlet.ServletMapping.setDefault(Z)V 经过排查,是maven的包冲突引起的,具体做法,排除:jetty-all.hive-shims依赖包.对应的pom配置如下: <dependency> <groupId>org.apache.hive</groupId&g…
第一步:修个Hive的配置文件hive-site.xml 添加如下属性,取消本地元数据服务: <property> <name>hive.metastore.local</name> <value>false</value> </property> 修改Hive元数据服务地址和端口: <property> <name>hive.metastore.uris</name> <value>t…
SparkSQL与Hive on Spark的比较 简要介绍了SparkSQL与Hive on Spark的区别与联系  一.关于Spark 简介 在Hadoop的整个生态系统中,Spark和MapReduce在同一个层级,即主要解决分布式计算框架的问题. 架构 Spark的架构如下图所示,主要包含四大组件:Driver.Master.Worker和Executor. Spark特点 Spark可以部署在YARN上 Spark原生支持对HDFS文件系统的访问 使用Scala语言编写 部署模型 单…
SparkSQL简介 SparkSQL的前身是Shark,给熟悉RDBMS但又不理解MapReduce的技术人员提供快速上手的工具,hive应运而生,它是当时唯一运行在Hadoop上的SQL-on-hadoop工具.但是MapReduce计算过程中大量的中间磁盘落地过程消耗了大量的I/O,降低的运行效率,为了提高SQL-on-Hadoop的效率,Shark应运而生,但又因为Shark对于Hive的太多依赖(如采用Hive的语法解析器.查询优化器等等),2014年spark团队停止对Shark的开…
SparkSQL访问Hive源,MySQL源 一.SparkSQL访问Hive源 软件环境 SparkSQL命令行模式可以直接连接Hive的 Java程序SparkSQL连接Hive 二.SparkSQL访问MySql源 Spark环境 添加依赖 创建SparkSession 访问Mysql方式1: 访问Mysql方式2: 作者:黑暗行动 一.SparkSQL访问Hive源 软件环境 hadoop2.7.6 spark-2.3.0 scala-2.11.12 hive-2.1.1 SparkSQ…
参考文献: http://blog.csdn.net/stark_summer/article/details/48443147 hive配置 编辑 $HIVE_HOME/conf/Hive-site.xml,增加如下内容: <property> <name>hive.metastore.uris</name> <value>thrift://master:9083</value> <description>Thrift uri fo…
其他的配置hive基本配置就不记录了!! 1. 拷贝$HIVE_HOME/conf/hive-site.xml $SPARK_HOME/conf/2. 在$SPARK_HOME/conf/目录中,修改spark-env.sh,添加    export HIVE_HOME=/usr/local/apache-hive-0.13.1-bin 注:切记SPARK_CLASSPATH这一行必须的配置:(否则报错)    export SPARK_CLASSPATH=$HIVE_HOME/lib/mysq…
好久没有弄博客了... hive0.14 spark0.12 [hadoop@irs bin]$ ./spark-sql Spark assembly has been built with Hive, including Datanucleus jars on classpathException in thread "main" java.lang.RuntimeException: java.lang.NumberFormatException: For input string…
一.前述 Spark on Hive: Hive只作为储存角色,Spark负责sql解析优化,执行. 二.具体配置 1.在Spark客户端配置Hive On Spark 在Spark客户端安装包下spark-1.6.0/conf中创建文件hive-site.xml: 配置hive的metastore路径 <configuration> <property> <name>hive.metastore.uris</name> <value>thrif…
1.编程时无法加载hive包,需要在编译好的spark(用spark-shell启动,用spark-sql能够直接访问hive表)的lib目录下,考出assembly包,为其创建一个maven的repository,然后添加到dependency里面.最笨的创建repository的办法就是直接创建相应路径,然后把spark-core里面的.pom修改一下target里面的名称,直接copy. 2.用yarn-cluster提交时,遇到:spark sql java.lang.RuntimeEx…
一.数据的备份与恢复 1. 备份 停止 HBase 服务后,使用 distcp 命令运行 MapReduce 任务进行备份,将数据备份到另一个地方,可以是同一个集群,也可以是专用的备份集群. 即,把数据转移到当前集群的其他目录下(也可以不在同一个集群中): $ bin/hadoop distcp \ hdfs://node21:8020/hbase \ hdfs://node21:8020/HbaseBackup/backup20180820 尖叫提示:执行该操作,一定要开启 Yarn 服务 2…
依赖 <dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-hive_2.11</artifactId> <version>2.1.3</version> </dependency> scala代码 package com.zy.sparksql import org.apache.spark.SparkContext import…
sparksql  hive https://databricks.com/blog/2014/07/01/shark-spark-sql-hive-on-spark-and-the-future-of-sql-on-spark.html https://cwiki.apache.org/confluence/display/Hive/Home [服务数仓,支持sql强标准] Apache Hive The Apache Hive™ data warehouse software facilit…
1.pom文件 <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-library</artifactId> <version>${scala.version}</version> </dependency> <dependency> <groupId>junit</groupId> <art…
问题: Caused by: java.util.concurrent.ExecutionException: java.lang.IndexOutOfBoundsException: Index: 0 at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:192) at org.apache.hadoop.hive…