Hive暂停和恢复任务

时间:2017-07-28 01:38:21

标签: hadoop hive

我的问题

我是Hive和Hadoop环境中的新手。我想暂停并恢复在Hadoop上运行的Hive作业。

我尝试了什么

我想要一些与之相关的想法。我在想的是如果可行的话,我可以保存映射器和减速器的状态。

但我不知道如何跟踪mapper和reducer。我在hadoop中找到了一些接口和类,比如JobId,JobClient,它可以帮助跟踪它们。我还阅读了一些用于跟踪每项任务的工作流程类型,但不太清晰。

1 个答案:

答案 0 :(得分:0)

这实际上是不可能的

如果我没有弄错Hive的工作 (或任何hadoop mapreduce工作)可以等​​待,运行或完成(成功或失败)。

通常无法暂停蜂巢作业并继续。 肯定没有一个'调试快捷方式'比如在某些语言中允许你在一个步骤中间暂停处理,我也没有看到断点。

但这是你如何接近

1。拆分作业

这是实用(虽然有限)的方法。

不是制作一个配置单元脚本,而是制作2并运行第一个。第一个可以执行部分​​步骤,或者只能对部分数据进行操作,从而有效地允许您暂停'。然后恢复将运行补充的第二个脚本。

(如果你想要你可以使用一个调度程序启动第一个,然后一段时间后或触发后启动第二个,但我会开始简单)

2。冻结整个环境

对于大多数意图和目的而言,这不太实用,但可能是有用的,可能对资源有用。

你可以冻结整个群集,如果你真的想要深入了解,这应该可以选择一半左右。

如何执行此操作(并调查系统状态)不是关于配置单元的问题,而是所有节点的整个操作系统。如果您只有1个节点,我认为通过将其放入虚拟机可以很简单。