【问题标题】:Oozie java action gets killed then restarted by clusterOozie java 操作被杀死然后由集群重新启动
【发布时间】:2014-10-23 18:05:37
【问题描述】:

我正在使用 oozie java 操作步骤来启动 java main。这个 java 应用程序进行一些计算,然后根据该数据运行另一个 map-reduce 作业。 由于 oozie java 操作作为仅地图作业运行,因此它也可以在作业跟踪器中看到。

我们的一个节点内存不足,因此任务跟踪器终止了 oozie map-only 作业并在另一个节点上重新启动它。 然而,在杀死它之前,java 应用程序已经产生了自己的 map reduce 作业。 当 oozie map-only 作业在另一个节点上重新启动时,它再次生成了另一个 map-reduce 作业,其数据与前一个相同。 现在查看作业跟踪器会针对相同的数据运行重复的 map-reduce 作业。

您如何防止/管理/更改设置,以使 oozie 在仅映射进程中启动的 java 程序仅运行一次,或者是否必须限制 Java 应用程序才能运行多次.

任何帮助将不胜感激,

【问题讨论】:

    标签: java hadoop oozie


    【解决方案1】:

    如果由于主机内存不足而导致单映射器引导作业失败,那么您在 Oozie 方面无能为力。对于集群中的每个服务,这种主机 OOM 场景都可能存在很大问题。

    解决这个问题的首选方法是确保主机根本不会耗尽​​内存,方法是只在每个 TaskTracker 节点上允许尽可能多的 map 和 reduce 插槽,因为有可用的内存。您可能还会发现,通过使用 YARN 资源管理框架而不是基于 JobTracker 的 MapReduce (MR1),将资源分配给节点更加高效和可调整。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-07
      • 2015-08-30
      • 2019-02-08
      相关资源
      最近更新 更多