如何在HUE上通过oozie调用Hive SQL工作流
时间:2022-06-19
本文章向大家介绍如何在HUE上通过oozie调用Hive SQL工作流,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
HUE版本:3.12.0 Hive版本:2.1.0 前言 通过浏览器访问ip:8888登陆HUE界面,首次登陆会提示你创建用户,这里使用账号/密码:hue/hue登陆。
关于HUE与Hive的集成配置修改,详情请参阅《HUE配置与各服务集成使用》
一、业务场景
执行Hive SQL脚本查询mytable表数据前10条,field以”t”分割,并输出到hdfs指定路径。
二、创建mytable表
create table if not exists mytable(sid int ,sname string)
row format delimited fields terminated by ' ' stored as textfile;
三、创造数据
样例数据mytable.txt,将其放到HDFS路径的/tmp/目录下
1 张三
2 李四
3 王五
4 李六
5 不告你
将数据导入mytable中,执行以下命令:
load data inpath "/tmp/mytable.txt" into table mytable;
四、创建Hive SQL脚本
在HDFS路径/user/hue/learn_oozie/mazy_hive_1
下,创建mazy_hive_1.sql
,sql中的参数使用${hivevar:参数}
展示,内容如下:
INSERT overwrite directory '${hivevar:outputpath}'
row format delimited fields terminated by "t"
SELECT sid,sname FROM mytable LIMIT 10;
五、创建Workflow
将HiveServer2移动到箭头处,添加sql脚本,添加参数:
outputpath=/user/hue/learn_oozie/mazy_hive_1/output
如下图所示:
六、设置Workflow并执行
点击“设置”,如下图所示:
默认配置oozie.use.system.libpath
为true
,这样会在工作区目录下默认新建lib
包,如果需要jar包依赖的话,可以放在lib目录下。
工作区的目录HUE会默认生成,也可以自定义设置,lib文件会生成在该工作区内。
这里将工作区设为:/user/hue/learn_oozie/mazy_hive_1
。
设置完毕后,执行该Workflow。
七、查看结果
执行Workflow后,会生成一个job作业,job所属用户为登陆HUE Web的用户。 等Workflow执行成功后,在HDFS路径上查看/user/hue/learn_oozie/mazy_hive_1/output/00000-0
文件,如下图所示:
八、总结
在HUE上通过Oozie调用Hive SQL任务流:
- 需要先创建好Hive SQL语句,
- 然后在Oozie Workflow里面选择Hiveserver2;
- 选择之前创建好的Hive SQL语句,设置变量;
- 设置工作区及依赖的jar包路径
- 执行Workflow
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法