gpt4 book ai didi

hadoop - 我应该永远使用 oozie 运行 MapReduce 任务吗?

转载 作者:可可西里 更新时间:2023-11-01 15:03:25 24 4
gpt4 key购买 nike

我有一个 mapReduce 任务 (https://github.com/flopezluis/testing-hadoop),它读取文件夹中的文件并将它们附加到 zip。我需要永远运行这个任务,所以当它完成处理它们时,它应该再次运行。我正在阅读有关 oozie 的信息,但我不确定它是否最合适,因为它可能对我的问题来说太大了。

如果 oozie 是最好的解决方案。如果我编写一个协调器每 10 分钟运行一次,如果任务耗时超过 10 分钟,协调器等待再次运行该任务会怎样?

任务说明

文件夹总是一样的。有不同的 zip 文件,一个是关键。这个想法是逐步创建 zip 文件。我认为这比处理完所有文件后创建 zip 文件要快。这些文件包含如下内容:

<info operationId="key1">
DATA1
</info>
<info operationId="key1">
DATA2
</info>
<info operationId="key2">
DATA3
</info>

所以 zipper 会是这样的:

key1.zip --> data1, data2

key3.zip --> data3

谢谢

最佳答案

您可以为此使用 oozie。 Oozie 有一个设置可以限制一次可以运行多少个作业实例。如果您的第一份工作在几分钟后还没有完成,它将等待运行下一份工作。

来自 Oozie 文档:

6.1.6。协调器操作执行策略协调器作业的执行策略可以在协调器应用程序中定义。• 超时:协调器作业可以指定其协调器操作的超时时间,即协调器操作在放弃执行之前处于 WAITING 或 READY 状态的时间。• 并发性:协调器作业可以为其协调器操作指定并发性,即在协调器引擎开始限制它们之前允许并发运行多少个协调器操作(RUNNING 状态)。• 执行策略:当协调器引擎中有协调器操作积压时,协调器作业可以指定其协调器操作的执行策略。不同的执行策略是“最旧优先”、“最新优先”和“仅最后一个”。积压通常是由于输入数据延迟、并发控制或手动重新运行协调器作业而发生的。

http://archive.cloudera.com/cdh/3/oozie-2.3.0-CDH3B4/CoordinatorFunctionalSpec.html#a6.1.6._Coordinator_Action_Execution_Policies

我还想评论一下,您可以让协调工作触发数据集的数据到达,但我对数据集不是很熟悉。

关于hadoop - 我应该永远使用 oozie 运行 MapReduce 任务吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11240487/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com