hivecli 任务
Hivecli任务说明
dolphinscheduler的hivecli任务是专门执行hivesql的任务类型。其中子类型分为FROM_SCRIPT和FROM_FILE。
- FROM_SCRIPT
执行的脚本可以直接在文本框中编写
执行的底层采用-e
参数执行
hive -e "show databases;show tables"
- FROM_FILE
执行的脚本可以在线下编辑好,然后在[资源中心]->[文件管理]中上传。在hivecli节点中资源
参数选择上传的资源sql文件即可。
执行的底层逻辑采用-f
参数执行
hive -f hivesql_one.sql
hivecli的环境配置
hivecli的执行,需要执行该任务的work的节点具有hive的client环境,并且让程序知道HADOOP_HOME和HIVE_HOME的路径
- 修改dolphinscheduler_env.sh配置
vi ${DOPHINSCHEDULER_HOME}/bin/env/dolphinscheduler_env.sh
本文的hadoop环境和hive环境是采用hdp安装的,选择了一个节点作为hiveclient节点,配置的路径如下
配置如下:
配置的代码段:
export HADOOP_HOME=${HADOOP_HOME:-/usr/hdp/current/hadoop-client}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/usr/hdp/current/hadoop-client/etc/hadoop}
export HIVE_HOME=${HIVE_HOME:-/usr/hdp/current/hive-client}
-
配置生效
#进入到主目录 cd ${DOPHINSCHEDULER_HOME} # 一键停止集群所有服务 bash ./bin/stop-all.sh #重新安装部署并启动 bash ./bin/install.sh
一些实践建议
采用dolphinscheduler执行任务的时候,可以执行的任务种类比较多,所以,可能不是所有的worker节点都有hive的环境。
在这种情况下,可以对worker节点分组管理。然后再hivecli任务节点选择对应的worker分组即可。