【转载请注明出处】:https://www.jianshu.com/p/6fff20b91d4a
1.安装说明
Tez 0.8.3+要求Hadoop2.6.0+
Tez 0.9.0+要求Hadoop2.7.0+
JDK8+
Maven 3+
Protocol Buffers 2.5.0
2.下载源码
http://mirrors.hust.edu.cn/apache/tez/0.9.0/apache-tez-0.9.0-src.tar.gz
3.编译
mvn clean package -DskipTests=true -Dmaven.javadoc.skip=true -Dtar
编译完的压缩包在tez-dist/target目录下
4.将tez-0.9.0.tar.gz拷贝至hdfs
hadoop fs -mkdir -p /apps/tez-0.9.0
hadoop fs -put tez-dist/target/tez-0.9.0.tar.gz /apps/tez-0.9.0
5. 将压缩包解压到某个目录,并创建配置文件tez-site.xml
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>tez.lib.uris</name>
<value>${fs.defaultFS}/apps/tez-0.9.0/tez-0.9.0.tar.gz</value>
</property>
</configuration>
6.配置环境变量
export TEZ_HOME=/work/tools/hdp/tez-0.9.0
export TEZ_CONF_DIR=TEZ_HOME
7.修改$HADOOP_CONF_DIR/mapred-site.xml文件
修改
<property>
<name>mapreduce.framework.name</name>
<value>yarn-tez</value>
</property>
添加
<property>
<name>mapreduce.map.output.compress</name>
<value>false</value>
</property>
8.修改$HADOOP_CONF_DIR/hadoop-env.sh 文件
添加
export TEZ_HOME={HADOOP_CLASSPATH}:{TEZ_JARS}/lib/*:${TEZ_CONF_DIR}
9.修改$HIVE_CONF_DIR/hive-site.xml文件
添加
<property>
<name>hive.execution.engine</name>
<value>tez</value>
</property>
10.测试
hadoop jar tez-examples-0.9.0.jar orderedwordcount /input /output
开始的时候,在测试的过程中遇到一个问题:
Container exited with a non-zero exit code 127. Error file: prelaunch.err.
Last 4096 bytes of prelaunch.err :
Last 4096 bytes of stderr :
/bin/bash: /bin/java: No such file or directory
解决办法:
修改HADOOP_HOME/libexec/hadoop-config.sh
将
if [ -x /usr/libexec/java_home ]; then
export JAVA_HOME=($(/usr/libexec/java_home))
else
export JAVA_HOME=(/Library/Java/Home)
fi
修改为
if [ -x /usr/libexec/java_home ]; then
export JAVA_HOME=$(/usr/libexec/java_home)
else
export JAVA_HOME=/Library/Java/Home
fi
【转载请注明出处】:https://www.jianshu.com/p/6fff20b91d4a