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

  1. cp hive-site.xml /export/servers/hive-1.1.0-cdh5.14.0/conf/hive-site.xml /export/servers/spark-2.0.2/conf/

然后在spark config目录scp到其它节点

  1. scp hive-site.xml node02:$PWD
  2. scp hive-site.xml node03:$PWD

拷贝mysql驱动包到spark jars目录(之前装hive因为Hive要把元数据存在mysql中,所以我之前将Mysql驱动包copy至hive/lib下)

  1. cp /export/servers/hive-1.1.0-cdh5.14.0/lib/mysql-connector-java-5.1.38.jar /export/servers/spark-2.0.2/jars/

将mysql驱动拷贝至其他节点spark目录下

首先进入到spark/jars目录

  1. cd /export/servers/spark-2.0.2/jars/

拷贝(我配了免密登录,并且有主机名映射ip)

  1. scp mysql-connector-java-5.1.38.jar node02:$PWD
  1. scp mysql-connector-java-5.1.38.jar node03:$PWD

因为待会要在hdfs的文件中测试,所以需要启动dfs,不启动yarn

进入hadoop/sbin目录后,启动

  1. ./start-dfs.sh

启动spark集群(我把他们封装到了一个脚本里=>如果需要,请点击我下载待定)

脚本启动

  1. ./spark-start.sh 2

测试

  1. spark-sql \
  2. --master spark://node01:7077 \
  3. --executor-memory 1g \
  4. --total-executor-cores 2 \
  5. --conf spark.sql.warehouse.dir=hdfs://node01:8020/user/hive/warehouse/myhive.db

失败了

这行代码错误的原因是,因为之前我和impala整合过,但是我未启动impala。

解决方案

进入node01

hive/conf下打开hive-site.xml

注释

重新启动

  1. spark-sql \
  2. --master spark://node01:7077 \
  3. --executor-memory 1g \
  4. --total-executor-cores 2 \
  5. --conf spark.sql.warehouse.dir=hdfs://node01:8020/user/hive/warehouse/myhive.db

成功

SparkSql 整合 Hive的更多相关文章

  1. Spark之 SparkSql整合hive

    整合: 1,需要将hive-site.xml文件拷贝到Spark的conf目录下,这样就可以通过这个配置文件找到Hive的元数据以及数据存放位置. 2,如果Hive的元数据存放在Mysql中,我们还需 ...

  2. 3.sparkSQL整合Hive

    spark SQL经常需要访问Hive metastore,Spark SQL可以通过Hive metastore获取Hive表的元数据.从Spark 1.4.0开始,Spark SQL只需简单的配置 ...

  3. 【Spark】帮你搞明白怎么通过SparkSQL整合Hive

    文章目录 一.创建maven工程,导包 二.开发代码 一.创建maven工程,导包 <properties> <scala.version>2.11.8</scala.v ...

  4. Hive环境搭建和SparkSql整合

    一.搭建准备环境 在搭建Hive和SparkSql进行整合之前,首先需要搭建完成HDFS和Spark相关环境 这里使用Hive和Spark进行整合的目的主要是: 1.使用Hive对SparkSql中产 ...

  5. 关于sparksql操作hive,读取本地csv文件并以parquet的形式装入hive中

    说明:spark版本:2.2.0 hive版本:1.2.1 需求: 有本地csv格式的一个文件,格式为${当天日期}visit.txt,例如20180707visit.txt,现在需要将其通过spar ...

  6. Spark整合Hive

    spark-sql 写代码方式 1.idea里面将代码编写好打包上传到集群中运行,上线使用 spark-submit提交 2.spark shell (repl) 里面使用sqlContext 测试使 ...

  7. 大数据学习day25------spark08-----1. 读取数据库的形式创建DataFrame 2. Parquet格式的数据源 3. Orc格式的数据源 4.spark_sql整合hive 5.在IDEA中编写spark程序(用来操作hive) 6. SQL风格和DSL风格以及RDD的形式计算连续登陆三天的用户

    1. 读取数据库的形式创建DataFrame DataFrameFromJDBC object DataFrameFromJDBC { def main(args: Array[String]): U ...

  8. SparkSQL读取Hive中的数据

    由于我Spark采用的是Cloudera公司的CDH,并且安装的时候是在线自动安装和部署的集群.最近在学习SparkSQL,看到SparkSQL on HIVE.下面主要是介绍一下如何通过SparkS ...

  9. SparkSQL与Hive on Spark的比较

    简要介绍了SparkSQL与Hive on Spark的区别与联系 一.关于Spark 简介 在Hadoop的整个生态系统中,Spark和MapReduce在同一个层级,即主要解决分布式计算框架的问题 ...

随机推荐

  1. layui table 分页 序号始终从”1“开始解决方法

    在用Layui table 分页显示数据,用 type:"numbers" 进行显示序号有以下的问题 1.表格自带的分页,page:true 这种分页,在切换页面的时候序号可以正常 ...

  2. python的exe反编译

    目录 python的exe反编译 方法一.使用archive_viewer.py提取pyc 方法二.使用pyinstxtractor.py提取pyc python的exe反编译 驱动人生样本为pyth ...

  3. jmeter控制器(三)

    While Controllert当控制器: 当满足条件的情况下,就会执行控制器里面的脚本,首先我们设置线程组循环次数为10,如下图: 其次在配置元件中添加一个计数器,并设置从0到最大的10,每次递增 ...

  4. django升级2.1python升级3.7时出现的错误:"trying to load '%s': %s" % (entry[1], e) django.template.library.InvalidTemplateLibrary:

    django升级2.1python升级3.7时出现如下的错误: "trying to load '%s': %s" % (entry[1], e) django.template. ...

  5. 安装HomeBrew 失败的解决方案(Error: Fetching /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core failed!)

    在安装HomeBrew(或者安装成功 执行相关指令)时遇到错误提示: Error: Failure while executing: git clone https://github.com/Home ...

  6. 201871010102-常龙龙《面向对象程序设计(java)》第十二周学习总结

    项目 内容 这个作业属于哪个课程 https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://www.cnblogs.com/nwnu-daizh/p ...

  7. 设计模式-State(行为模式)-很好的实现了对象的状态逻辑与动作实现的分类,状态逻辑在State的派生类实现,动作可以放在Context类中实现。

    以下代码来源: 设计模式精解-GoF 23种设计模式解析附C++实现源码 //Context.h #pragma once class State; class Context { public: C ...

  8. HDU2899Strange fuction(二分/三分)

    传送门 题目大意:求 F(x) = 6 * x^7+8*x^6+7*x^3+5*x^2-y*x (0 <= x <=100):的最小值 题解:求个导,二分导函数零点,就是原函数最小值所在的 ...

  9. echarts 中 参数的详讲

    xAxis 属性 xAxis : [ { type : 'category',//坐标轴类型 // show:'',//是否显示 x 轴 //id:'',组件 ID.默认不指定. //gridInde ...

  10. es6一句话拾遗

    Symbol最大的作用就是用于消除魔术字符串: Set跟数组的最大区别,就是Set的成员都是唯一的,没有重复:(方法:add(value),has,delete,clear) Map跟对象的最大区别, ...