oozie 是用来做任务调度的。
可以在配置按照一定时间运行hql语句,这用来做定时的数据清洗很有用。
前提是你的hive和你的oozie都已经配置好了。hive配置很简单,oozie配置中的问题可以看我的上一篇博客。
分为几步,
1 hive-site.xml 及对应版本的hive 的jar包,都要上传到hdfs。你肯定在hdfs上已经建立了对应的目录。
2 配置主要是三个文件,
job.properties
workflow.xml //流程定义
script.q
//存放你要执行的hql语句,参数可以通过workflow.xml中的param传过来。
job.properties //中需要加上
hiveSitePath=hdfs://node1:8020/user/root/hive/hive-site.xml
root是我的oozie用户,可以改成你的hdfs目录
oozie.libpath=hdfs://node1:8020/user/root/share/lib/hive
此外,需要注意的就是 job.properties 中,jobTracker=node1:8032 根据你的hadoop的实际配置来填写,如果没有在配置中找不到这样的设置,就像这样去填写yarn的端口就可以了。
最后
oozie.use.system.libpath=true