4.2、使用oozie调度我们的hive

第一步:拷贝hive的案例模板

cd /export/servers/oozie-4.1.0-cdh5.14.0

cp -ra examples/apps/hive2/ oozie_works/

第二步:编辑hive模板

这里使用的是hiveserver2来进行提交任务,需要注意我们要将hiveserver2的服务给启动起来:

nohup hive --service metastore &

nohup hive --service hiveserver2 &

修改job.properties

cd /export/servers/oozie-4.1.0-cdh5.14.0/oozie_works/hive2

vim job.properties

nameNode=hdfs://node01:8020

jobTracker=node01:8032

queueName=default

jdbcURL=jdbc:hive2://node03:10000/default

examplesRoot=oozie_works

oozie.use.system.libpath=true

# 配置我们文件上传到hdfs的保存路径 实际上就是在hdfs 的/user/root/oozie_works/hive2这个路径下

oozie.wf.application.path=${nameNode}/user/${user.name}/${examplesRoot}/hive2

修改workflow.xml

vim workflow.xml

<?xml version="1.0" encoding="UTF-8"?>

<workflow-app xmlns="uri:oozie:workflow:0.5" name="hive2-wf">

<start to="hive2-node"/>

<action name="hive2-node">

<hive2 xmlns="uri:oozie:hive2-action:0.1">

<job-tracker>${jobTracker}</job-tracker>

<name-node>${nameNode}</name-node>

<prepare>

<delete path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data/hive2"/>

      

<mkdir path="${nameNode}/user/${wf:user()}/${examplesRoot}/output-data"/>

      

</prepare>

<configuration>

<property>

<name>mapred.job.queue.name</name>

<value>${queueName}</value>

</property>

</configuration>

<jdbc-url>${jdbcURL}</jdbc-url>

<script>script.q</script>

<param>INPUT=/user/${wf:user()}/${examplesRoot}/input-data/table</param>

      

<param>OUTPUT=/user/${wf:user()}/${examplesRoot}/output-data/hive2</param>

      

</hive2>

<ok to="end"/>

<error to="fail"/>

</action>

<kill name="fail">

<message>Hive2 (Beeline) action failed, error message[${wf:errorMessage(wf:lastErrorNode())}]</message>

</kill>

<end name="end"/>

</workflow-app>

编辑hive的sql文件

vim script.q

DROP TABLE IF EXISTS test;

CREATE EXTERNAL TABLE test (a INT) STORED AS TEXTFILE LOCATION '${INPUT}';

insert into test values(10);

insert into test values(20);

insert into test values(30);

第三步:上传工作文件到hdfs

cd /export/servers/oozie-4.1.0-cdh5.14.0/oozie_works

hdfs dfs -put hive2/ /user/root/oozie_works/

第四步:执行oozie的调度

cd /export/servers/oozie-4.1.0-cdh5.14.0

bin/oozie job -oozie http://node03:11000/oozie -config oozie_works/hive2/job.properties  -run

第五步:查看调度结果

最新文章

  1. linux shell basic command
  2. logback详细配置(三)
  3. Oracle创建用户并赋予权限
  4. KVC在定义Model类中的妙用
  5. Cocos2d-x学习笔记(5)
  6. 专业的GIS(电子地图、地理信息系统)在房地产行业的初步应用?
  7. .NET Core 获取操作系统各种信息
  8. .Net Core在Centos7上初体验
  9. reducer 按key聚合
  10. shell 命令 创建/删除 软连接 ln -s
  11. 用Python实现大文件分割
  12. AtCoder Regular Contest 102 E Stop. Otherwise...
  13. express框架学习笔记
  14. boolalpha的作用
  15. SSM搭建一个后台管理系统
  16. php中$this-&gt;是什么意思
  17. 实时计算DStream下求平均值(reduceByKey or combineByKey)
  18. js中将一个字一个字的打印出来
  19. 2014年第五届蓝桥杯JavaB组省赛试题解析
  20. delphi 登陆窗口的问题 [问题点数:30分,结帖人tianhuo_soft]

热门文章

  1. 阿里云oss操作
  2. 二分查找及几种变体的Python实现
  3. 关于window.location.href页面跳转的坑
  4. vue element 时间选择器设置禁用日期
  5. spring boot中的底层配置文件application.yam(application.property)的装配原理初探
  6. js缓慢滑块
  7. Codeforces Round #579 (Div. 3)D(字符串,思维)
  8. 安卓手机的屏幕规格很多。app开发者在设计User Interface的时候,要怎么处理,才能适应不同屏幕大小?
  9. c语言中“#if 0 / #if 1 ... #endif”的作用
  10. CSS - 去除图片img底侧空白缝隙