hadoop - 在 Oozie 中循环

标签 hadoop oozie

我是 Oozie 的新手。有人可以帮我解决这个要求吗?

我有一个 Java 代码,因为我有一个保存文件名的 ArrayList。 假设如果我的 ArrayList 包含 10 个文件,然后遍历列表中的每个文件,我必须调用另一个 PigHive 操作乌兹。

我对此进行了探索,发现 Oozie 不支持直接循环,我可能不得不使用 oozie 子工作流

那么有人可以帮我解决这个问题吗?

最佳答案

oozie 不支持循环。

在您的场景中,我建议采用以下方法。

  1. 创建动态生成 workflow.xml 的 Java 代码。
  2. 此 workflow.xml 应该有您的第一个 java 操作,然后是内部 hive 和 pig 操作,然后一次又一次地迭代这些操作,直到循环完成。注意 Action 名称应该有一些标志,这样每个循环 Action 都有不同的名称,只有这样 oozie 才会执行工作流。

您的工作流程会说:

循环 1 - Javaction1、hiveaction1 和 pigaction1

循环 2. Javaction2、hiveaction2 和 pigaction2

希望对您有所帮助。

关于hadoop - 在 Oozie 中循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40004717/

相关文章:

hadoop - 单节点hadoop集群上的实验室练习

regex - Nutch MalformedURLException导致爬网过程终止

java - 获取 E0902 : Exception occured:[Server IPC version 9 cannot communicate with client version 4]

hadoop - 如何在 Hadoop 1.1.1 上安装 Oozie 3.3.1?

python - 使用 MRJob 更改 Mapreduce 中间输出位置

java - 从MapReduce开始的工作被杀了。为什么?

maven - 尝试执行时出现 Oozie 错误 "bin/mkdistro.sh -DskipTests"

java - Apache Spark 对常规文件的行为

Hadoop 特权操作异常

hadoop - HDFS dfs.name.dir的可用空间不足