java—使用oozie通过hive/hadoop调度特殊查询

mzmfm0qo  于 2021-06-03  发布在  Hadoop
关注(0)|答案(2)|浏览(307)

oozie是否支持通过restapi进行用户调度,支持临时配置单元查询?
我们正在构建一个系统,用户可以在hadoop中搜索文档,支持用户(可选)指定要搜索的数据的某些属性,使用hive对hadoop执行查询。由于对可选字段的这种支持,我们无法提前知道配置单元查询的外观(在配置单元查询中将使用哪些表)。我们有一个服务,在运行时,我们处理用户的查询以生成相应的配置单元查询。
我们希望能够通过oozie安排这些查询,但是我还没有找到关于如何通过oozie执行这些查询的文档。我想这是可能的。是否有示例java代码可用于描述如何执行此操作?

qcuzuvrc

qcuzuvrc1#

通过rest api提交代理配置单元作业允许用户提交作业,而无需在hdfs上创建工作流xml:
https://oozie.apache.org/docs/5.1.0/webservicesapi.html#proxy_hive_job_submission
您还可以使用fluentapi以编程方式构建工作流:
https://oozie.apache.org/docs/5.1.0/dg_fluentjobapi.html#a_more_verbose_example
https://github.com/apache/oozie/blob/master/fluent-job/fluent-job-api/src/test/java/org/apache/oozie/fluentjob/api/action/testhive2actionbuilder.java
如上所述,oozie协调器可以用来安排和定期执行工作流。除了时间依赖性之外,还可以定义用于启动工作流的数据依赖性(例如hdfs上是否存在特定文件)。

x7yiwoj4

x7yiwoj42#

使用oozie协调器来调度作业,这里是apache文档,这里是oozie协调器的示例。另外,看看azkaban(1,2)的调度。

相关问题