hive on spark真的很折腾人啊!!!!!!!

一.软件准备阶段

maven3.3.9

spark2.0.0

hive2.3.3

hadoop2.7.6

二.下载源码spark2.0.0,编译

下载地址:http://archive.apache.org/dist/spark/spark-2.0.0/

编译: ./dev/make-distribution.sh --name "hadoop2-without-hive" --tgz "-Pyarn,hadoop-provided,hadoop-2.7,parquet-provided"

三.将编译好的spark-2.0.0-bin-hadoop2-without-hive.tgz tar -zxvf 到目录

在/etc/profile里配置好 $SPARK_HOME环境变量,并 . /etc/profile使环境变量生效。

接下来配置hive/spark/yarn

1) 配置hive

1.拷贝spark下的jar包到hive的lib下
  • cp scala-library-2.11.8.jar /usr/share/hive-2.3.3/lib/
  • cp spark-core_2.11-2.0.0.jar /usr/share/hive-2.3.3/lib/
  • cp spark-network-common_2.11-2.0.0.jar /usr/share/hive-2.3.3/lib/
2.在hive的conf下建立文件spark-defaults.conf
 
set hive.execution.engine=spark;  
set spark.master=yarn;  
set spark.submit.deployMode=client;  
set spark.eventLog.enabled=true;  
set spark.executor.memory=2g;  
set spark.serializer=org.apache.spark.serializer.KryoSerializer;
3. 修改hive-site.xml,增加
目的:允许yarn缓存spark依赖的一些jar包到各个nodeManager节点上,避免每次应用运行频繁分发。
upload all jars in $SPARK_HOME/jars to hdfs file(for example:hdfs://bi/spark-jars/)
1)hdfs dfs -put ../jars /spark-jars //上传spark依赖的jars到hdfs的spark-jars目录里。
2)修改hive-site.xml,增加
<property>
   <name>spark.yarn.jars</name>
   <value>hdfs://bi/spark-jars/*</value>
</property>
2)配置spark
cp spark-env.sh.template spark-env.sh
配置spark-env.sh
 
export SPARK_DIST_CLASSPATH=$(/usr/share/hadoop-HA/hadoop-2.7.6/bin/hadoop classpath)
export HADOOP_HOME=/usr/share/hadoop-HA/hadoop-2.7.6
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop/
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop/
四)测试
开启metastore: nohup hive --service metastore &
开启hiveserver2: nohup hive --service hiveserver2 &
set hive.execution.engine=spark;
 
 

hive on spark (spark2.0.0 hive2.3.3)的更多相关文章

  1. Spark记录-源码编译spark2.2.0(结合Hive on Spark/Hive on MR2/Spark on Yarn)

    #spark2.2.0源码编译 #组件:mvn-3.3.9 jdk-1.8 #wget http://mirror.bit.edu.cn/apache/spark/spark-2.2.0/spark- ...

  2. Hadoop 3.1.2(HA)+Zookeeper3.4.13+Hbase1.4.9(HA)+Hive2.3.4+Spark2.4.0(HA)高可用集群搭建

    目录 目录 1.前言 1.1.什么是 Hadoop? 1.1.1.什么是 YARN? 1.2.什么是 Zookeeper? 1.3.什么是 Hbase? 1.4.什么是 Hive 1.5.什么是 Sp ...

  3. Spark2.1.0安装

    1.解压安装spark tar zxf spark-2.1.O-bin-2.6.0-CDH5.10.0.tgz 2.修改配置文件 vim /etc/profile export SPARK_HOME= ...

  4. Spark2.1.0编译

    1.下载spark源码包 http://spark.apache.org/downloads.html 2.安装Scala与maven,解压spark源码包 安装Scala: tar zxf scal ...

  5. linux安装spark-2.3.0集群

    (安装spark集群的前提是服务器已经配置了jdk并且安装hadoop集群(主要是hdfs)并正常启动,hadoop集群安装可参考<hadoop集群搭建(hdfs)>) 1.配置scala ...

  6. Apache Hadoop集群离线安装部署(二)——Spark-2.1.0 on Yarn安装

    Apache Hadoop集群离线安装部署(一)——Hadoop(HDFS.YARN.MR)安装:http://www.cnblogs.com/pojishou/p/6366542.html Apac ...

  7. Hive on Spark和Spark sql on Hive,你能分的清楚么

    摘要:结构上Hive On Spark和SparkSQL都是一个翻译层,把一个SQL翻译成分布式可执行的Spark程序. 本文分享自华为云社区<Hive on Spark和Spark sql o ...

  8. spark2.3.0 配置spark sql 操作hive

    spark可以通过读取hive的元数据来兼容hive,读取hive的表数据,然后在spark引擎中进行sql统计分析,从而,通过spark sql与hive结合实现数据分析将成为一种最佳实践.配置步骤 ...

  9. spark最新源码下载并导入到开发环境下助推高质量代码(Scala IDEA for Eclipse和IntelliJ IDEA皆适用)(以spark2.2.0源码包为例)(图文详解)

    不多说,直接上干货! 前言   其实啊,无论你是初学者还是具备了有一定spark编程经验,都需要对spark源码足够重视起来. 本人,肺腑之己见,想要成为大数据的大牛和顶尖专家,多结合源码和操练编程. ...

随机推荐

  1. 长乐培训Day3

    T1 奶牛晒衣服 题目 [题目描述] 在熊大妈英明的带领下,时针和他的同伴生下了许多牛宝宝.熊大妈决定给每个宝宝都穿上可爱的婴儿装.于是,为牛宝宝洗晒衣服就成了很不爽的事情. 圣人王担负起了这个重任. ...

  2. 微信小程序的页面跳转==编程式导航传参 和 标签的方法传参==以及如何过去传递过来的参数

    小程序导航传参接收传递过来的参数 在onload中 实例

  3. Mybatis动态sql及分页、特殊符号

    目的: mybatis动态sql(案例:万能查询) 查询返回结果集的处理 mybatis的分页运用 mybatis的特殊符号 mybatis动态sql(案例:万能查询) 根据id查询 模糊查询 (参数 ...

  4. luogu P4887 莫队二次离线

    珂朵莉给了你一个序列$a$,每次查询给一个区间$[l,r]$ 查询$l≤i<j≤r$,且$ai⊕aj$的二进制表示下有$k$个$1$的二元组$(i,j)$的个数.$⊕$是指按位异或. 直接暴力莫 ...

  5. 基于MFC的网页ActiveX控件开发全程实录2(js向ActiveX控件传递参数)

    原文转自 https://blog.csdn.net/qianbin3200896/article/details/81452822 1.ActiveX控件部分(JS到ActiveX控件)继续上一篇博 ...

  6. 线程二(Monitor)

    Monitor 类的命名空间是 System.Threading,它的用法和 lock 本质是一样的. 使用 Monitor 类锁定资源的代码如下. Monitor.Enter(object); tr ...

  7. Detection综述

    4月中旬开始,尝试对目标检测领域做一个了解,看了差不多6-7篇paper,在这里记录一下: 一.Detection简介 人脸检测的目标是找出图像中所有的人脸对应的位置,算法的输出是人脸外接矩形在图像中 ...

  8. activemq BytesMessage || TextMessage

    需求:使用 python 程序向 activemq 的主题推送数据,默认推送的数据类型是 BytesMessage,java 程序那边接收较为麻烦,改为推送 TextMessage 类型的数据 解决方 ...

  9. PHP 的闭包

    匿名函数 提到闭包就不得不想起匿名函数,也叫闭包函数(closures),貌似PHP闭包实现主要就是靠它.声明一个匿名函数是这样: 1 $func = function() { 2 3 }; //带结 ...

  10. js入门之DOM

    一.理解Web API Web API Application Programming Interface 应用程序编程接口, 是一个预先定义好的函数和方法 目的是提供应用程序与开发人员基于某软件或硬 ...