配置 Hive On Tez
配置 Hive On Tez
标签(空格分隔): hive
Tez 部署底层应用
简单介绍
介绍:tez 是基于hive 之上,可以将sql翻译解析成DAG计算的引擎。基于DAG 与mr 架构本身的优缺点,tez 本身经过测试一般小任务在hive mr 的2-3倍速度左右,大任务7-10倍左右,根据情况不同可能不一样。
对于 Tez-0.9.0 以及更高版本, Tez 需要 Apache Hadoop 版本为 2.7.0 或更高
安装 Apache Hadoop 2.7.0 或更高版本,这里选取Tez-0.9.1 版本,在Centos 系统上编译,需要通外网,编译环境准备需要按照之前:
@https://www.cnblogs.com/hit-zb/p/10643240.html
Apache tez 官网:https://tez.apache.org/
Apache Tez 0.9.1 下载地址:@http://mirror.bit.edu.cn/apache/tez/0.9.1/apache-tez-0.9.1-src.tar.gz
编译 tez
编译环境准备完毕的情况下:
cd apache-tez-0.9.0-src
mvn clean package -DskipTests=true -Dmaven.javadoc.skip=true
关于maven 的更多使用方法 ,请见:@https://yuzhouwan.com/posts/2254/
安装Tez 到hive
拷贝 tez 相关 tarball 到 HDFS, 并且配置 tez-site.xml
cd apache-tez-0.9.0-src/tez-dist/target
ls
archive-tmp maven-archiver tez-0.9.0 tez-0.9.0-minimal tez-0.9.0-minimal.tar.gz tez-0.9.0.tar.gz tez-dist-0.9.0-tests.jar
我们需要将tez-0.9.0-minimal.tar.gz 拷贝到HDFS 中某目录下
hadoop fs -mkdir /app/
hadoop fs -copyFromLocal tez-dist/target/tez-x.y.z-minimal.tar.gz /app/
确保 tez.use.cluster.hadoop-libs 不被设置在 tez-site.xml 中, 如果设置了那么值应该为 false
将tez-0.9.0.tar.gz 移动到本地 /app/tez 相当于与 app/hive
同级别。tez 为link (软连接)
tez-site.xml
deploy@VECS00540:/app/apache-tez-0.9.0/conf$ cat tez-site.xml
<configuration>
<property>
<name>tez.lib.uris</name>
<value>hdfs://flashHadoop/user/tez/tez.tar.gz</value> <!-- 这里指向hdfs上的tez.tar.gz包 -->
</property>
<property>
<name>tez.use.cluster.hadoop-libs</name>
<value>true</value>
</property>
<property>
<name>tez.runtime.compress</name>
<value>false</value>
</property>
<property>
<name>tez.runtime.compress.codec</name>
<value>org.apache.hadoop.io.compress.SnappyCodec</value>
</property>
以下忽略,tez-ui 使用
<property>
<name>tez.history.logging.service.class</name>
<value>org.apache.tez.dag.history.logging.ats.ATSHistoryLoggingService</value>
</property>
<property>
<name>tez.tez-ui.history-url.base</name>
<value>http://VECS01121:8080/tez-ui/</value>
</property>
<property>
<name>tez.am.tez-ui.history-url.template</name>
<value>__HISTORY_URL_BASE__/#/tez-app/__APPLICATION_ID__</value>
</property>
<property>
<name>tez.am.acls.enabled</name>
<value>false</value>
</property>
</configuration>
配置客户端节点的 hadoop classpath 包含 tez-libraries 到 hadoop classpath 中
export HADOOP_CLASSPATH=${HADOOP_CLASSPATH}:${TEZ_HOME}/*:${TEZ_CONF_DIR}:${TEZ_HOME}/lib/*
当设置 classpath 路径中有包含 jars 的目录, 注意 “*” 是非常重要的
在 tez-examples.jar 中有使用 MRR 的基础示例, 参照源码的 OrderedWordCount.java, 运行示例: …
可以使用类似以下示例提交 MR 作业 …
hive> set hive.execution.engine=tez;
hive>
问题:
1, tez-ui 编译失败, 从 apache 下载已编译好的包使用了算
2,tez 大任务oom.设置不检查虚拟内存或者调大与物理内存比例解决.
配置 Hive On Tez的更多相关文章
- hive on tez配置
1.Tez简介 Tez是Hontonworks开源的支持DAG作业的计算框架,它可以将多个有依赖的作业转换为一个作业从而大幅提升MapReduce作业的性能.Tez并不直接面向最终用户--事实上它允许 ...
- hive on tez 错误记录
1.执行过程失败,报 Container killed on request. Exit code is 143 如下图: 分析:造成这种原因是由于总内存不多,而容器在jvm中占比过高,修改tez-s ...
- hive on tez
hive运行模式 hive on mapreduce 离线计算(默认) hive on tez YARN之上支持DAG作业的计算框架 hive on spark 内存计算 hive on tez T ...
- Hadoop之Hive(2)--配置Hive Metastore
Hive metastore服务以关系性数据库的方式存储Hive tables和partitions的metadata,并且提供给客户端访问这些数据的metastore service的API.下面介 ...
- 基于Cloudera Manager5配置HIVE压缩
[Author]: kwu 基于Cloudera Manager5配置HIVE压缩,配置HIVE的压缩.实际就是配置MapReduce的压缩,包含执行结果及中间结果的压缩. 1.基于HIVE命令行的配 ...
- 指导手册 07 安装配置HIVE
指导手册 07 安装配置HIVE 安装环境及所需安装包: 1.操作系统:centos6.8 2.四台虚拟机:master :10.0.2.4, slave1:10.0.2.5,slave2:10. ...
- 安装和配置hive
1.上传hive.mysql.mysql driver到服务器/mnt目录下: [root@chavin mnt]# ll mysql-5.6.24-linux-glibc2.5-x86_64.tar ...
- Hive初步使用、安装MySQL 、Hive配置MetaStore、配置Hive日志《二》
一.Hive的简单使用 基本的命令和MySQL的命令差不多 首先在 /opt/datas 下创建数据 students.txt 1001 zhangsan 1002 lisi 1003 wangwu ...
- CM记录-配置Hive on Spark
默认hive on spark是禁用的,需要在Cloudera Manager中启用.1.登录CM界面,打开hive服务.2.单击 配置标签,查找enable hive on spark属性.3.勾选 ...
随机推荐
- css overflow规定元素溢出框将会发生什么
- springBoot2.0配置profile
1. 使用yaml来配置,直接配置application.yml文件 server: port: 8888 spring: profiles: active: dev # 激活生产环境 --- # 测 ...
- html中的锚点设置
html中的锚点 一.页面内跳转的锚点设置 页面内的跳转需要两步: 方法一: ①:设置一个锚点链接去找喵星人:(注意:href属性的属性值最前面要加#) ②:在页面中需要的位置设置锚点<a na ...
- python计算1~100的和,1~100奇数的和,1~100偶数的和,一条代码求1~100的和
1.计算1~100的数之和----for循环实现1~100的和 sum1 = ,): sum1 = sum1 + i i += print(f"1-100之间的和是:{sum1}" ...
- 杜恩德的新博客,都来看看-duende99
啊啊啊啊 https://home.cnblogs.com/u/duende99/
- C语言中将二维数组作为函数参数来传递
c语言中经常需要通过函数传递二维数组,有三种方法可以实现,如下: 方法一, 形参给出第二维的长度. 例如: #include <stdio.h> void func(int n, char ...
- leetcode 980. Unique Paths III
On a 2-dimensional grid, there are 4 types of squares: 1 represents the starting square. There is e ...
- volatile关键字?MESI协议?指令重排?内存屏障?这都是啥玩意
一.摘要 三级缓存,MESI缓存一致性协议,指令重排,内存屏障,JMM,volatile.单拿一个出来,想必大家对这些概念应该有一定了解.但是这些东西有什么必然的联系,或者他们之间究竟有什么前世今生想 ...
- 51nod 2589 快速讨伐
51nod 如果不考虑升级操作,只有买装备操作和打怪操作,那么首先一定要先买装备,然后可以打死1级的怪,这些怪被打死的时间只要在第一次买装备后面好了,因为现在总操作是\(n+\sum a_i\)个,所 ...
- vue-cli解决兼容ie的es6+api问题
官网:https://cli.vuejs.org/zh/guide/browser-compatibility.html#usebuiltins-usage https://github.com/vu ...