ARTICLE DETAIL

资讯详情

深耕编程入门与网站建设的一线实战洞察。

大数据Hadoop之——Hive4.1与Tez配置

大数据Hadoop之——Hive4.1与Tez配置 一、Hive的基础安装与知识见大数据Hadoop之——部署hadoophiveMysql环境Linux_hadoop部署-CSDN博客二、Tez的安装与配置1、Tez的下载安装1.1. 下载https://archive.apache.org/dist/tez/0.10.5/apache-tez-0.10.5-bin.tar.gz​下载 apache-tez-0.10.5-bin.tar.gz 安装包1.2 上传上传到指定安装路径此处是安装路径是/opt/module​1.3 解压重命名tar -zxvf apache-tez-0.10.5-bin.tar.gzmv /opt/module/apache-tez-0.10.5-bin /opt/module/tez​​2、配置文件设置2.1 配置 hive-env.shexport HIVE_HOME/opt/module/hiveexport TEZ_HOME/opt/module/tez!-- MySQL 元数据库连接 --export HADOOP_OPTS--add-opens java.base/java.langALL-UNNAMED --add-opens java.base/java.utilALL-UNNAMED --add-opens java.base/java.ioALL-UNNAMED --add-opens java.base/java.netALL-UNNAMED --add-opens java.base/java.util.concurrentALL-UNNAMED2.2 配置hive-site.xml!-- 设置执行引擎 --propertynamehive.execution.engine/namevaluetez/value/property!-- 控制普通 Tez Task 容器的默认 JVM 参数。 解除JDK17 模块限制避免执行复杂hql报错.。可以只在 HiveServer2 安装的节点如hadoop001配置HiveServer2 提交 Tez 任务时会把 hive‑site 里这个配置打包随任务提交传给 ResourceManager自动注入 task 容器 JVM--propertynametez.container.java.opts/namevalue--add-opens java.base/java.langALL-UNNAMED --add-opens java.base/java.utilALL-UNNAMED --add-opens java.base/java.ioALL-UNNAMED --add-opens java.base/java.netALL-UNNAMED/value/property2.3 上传tez核心包tez.tar.gz上传tez核心包tez.tar.gz 到hdfsNodeManager会下载hdfs此目录下面的包到当前节点本地进行解压cd /opt/module/tez/share/hdfs dfs -mkdir -p /tezhdfs dfs -put tez.tar.gz /tez/2.4 配置tez‑site.xml注意是在hadoop的配置目录下创建此文件---------------------------------------------------------vi $HADOOP_HOME/etc/hadoop/tez-site.xml?xml version1.0 encodingUTF-8??xml-stylesheet typetext/xsl hrefconfiguration.xsl?configuration!-- HDFS上tez运行包不要写本地路径\${fs.defaultFS}自动读取core‑site的fs.defaultFS --propertynametez.lib.uris/namevalue\${fs.defaultFS}/tez/tez.tar.gz/value/property!-- 使用集群Hadoop自带jar包减少tez包体积必须true --propertynametez.use.cluster.hadoop-libs/namevaluetrue/value/property!-- 配置tez.tar.gz解压后容器本地相对classpath --!-- 官方tez包内置的tez.tar.gz解压出来直接 .tez 和 ./lib --propertynametez.lib.uris.classpath/namevalue./,./lib/value/property!-- AM内存单机测试调小 使用 Tez 内置默认值2048容易资源过大导致 YARN 申请资源被拒、单机跑不起来。 --propertynametez.am.resource.memory.mb/namevalue1024/value/property!-- 专门控制 Tez‑AMTez ApplicationMaster的 JVM 启动参数。解除JDK17 模块限制避免执行复杂hql报错三台机器同步因为只能本地读取--propertynametez.am.launch.cmd-opts/namevalue--add-opens java.base/java.langALL-UNNAMED --add-opens java.base/java.utilALL-UNNAMED --add-opens java.base/java.ioALL-UNNAMED --add-opens java.base/java.netALL-UNNAMED/value/property/configuration2.5 分发文件分发 tez-site.xmlscp -r /opt/module/hadoop/etc/hadoop/tez-site.xml roothadoop002:/opt/module/hadoop/etc/hadoop/scp -r /opt/module/hadoop/etc/hadoop/tez-site.xml roothadoop003:/opt/module/hadoop/etc/hadoop/2.6 重启Hadoop集群/opt/module/hadoop/sbin/stop-all.sh/opt/module/hadoop/sbin/start-all.sh2.7 初始化Hive如果是第一次则需要初始化如果之前初始化过则无需重新初始化schematool -initSchema初始化的是MySQL 里的元数据库表结构hive 库下的TBLS、DBS、COLUMNS_V2等表和执行引擎mr/tez/spark完全无关。
返回列表