并行作业管理器 (PJM)

并行作业管理器 (PJM) 提供用于提交和管理事务批处理作业的工具和框架,这些作业作为独立并行下级作业的协调集合运行。

PJM 基本知识

  • 并行作业管理器位于批处理容器中,而不是单独系统应用程序中。
  • 仅需要单个 xJCL 文件。xJCL 将顶级作业 xJCL 的内容与下级作业 xJCL 的内容进行组合。
  • 不需要创建单独数据库。
  • 由于 PJM 是批处理容器的一部分,因此您不需要安装和配置 PJM。
  • 将批处理应用程序中的 PJM API 打包为实用程序 Java™ 归档 (JAR)。不需要共享库。
  • xd.spi.properties 文件的内容属于 xJCL。不需要 xd.spi.properties 文件。

PJM 操作和 API 调用

以下两个图像说明了并行作业的 PJM 体系结构和序列。首先,将 xJCL 提交到作业调度程序。 作业调度程序会将 xJCL 分派到运行 xJCL 引用的应用程序的端点。批处理容器通过检查 xJCL 中作业的运行属性具有并行运行的下级作业。批处理容器将运行委派给 PJM 子组件。PJM 调用参数化 API 并使用 xJCL 中的信息,以帮助将作业划分为下级作业。然后,PJM 会调用 LogicalTX 同步 API 以指示逻辑事务的开始。 PJM 会生成下级作业 xJCL 并将下级作业提交给作业调度程序。作业调度程序将下级作业分派给批处理容器端点以使其可以运行。批处理容器运行下级作业。获取检查点时,会调用下级作业收集器 API。此 API 收集有关下级作业的相关状态信息。将此数据发送到下级作业分析器 API 进行说明。所有下级作业到达最终状态后,会调用 beforeCompletion 和 afterCompletion 同步 API。还会调用分析器 API 以计算作业的返回码。

逻辑事务是贯穿并行作业整个运行的工作单元划分。它的生命周期与并行作业的下级作业的组合生命周期对应。由于扩展机制,您可以定制应用程序管理的资源,从而可以在此工作单元范围为落实和回滚目的来控制这些资源。

PJM 体系结构和编程模型

以下图像总结 PJM 体系结构,此体系结构显示调用 API 的位置:

PJM 体系结构

并行作业的顺序

以下图像显示并行作业中的事件顺序:

并行作业的顺序

PJM 作业管理

顶级作业提交下级作业并监视其完成情况。顶级作业结束状态受下级作业的结果影响,如下所示:
  1. 如果所有下级作业以结束的状态完成(即成功完成),那么顶级作业会以结束的状态完成。
  2. 如果任何下级作业以可重新启动的状态完成,且没有下级作业以失败的状态结束,那么顶级作业会以可重新启动的状态完成。
  3. 如果任何下级作业以失败的状态完成,那么顶级作业会以失败的状态完成。
  4. 如果顶级作业和下级作业处于可重新启动的状态,那么仅会重新启动顶级作业。如果手动重新启动任何下级作业,那么顶级作业不会正确处理逻辑事务。

指示主题类型的图标 概念主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=cgrid_cgparallel
文件名:cgrid_cgparallel.html