JobManagerTask 的 Azure Batch 和用例
Azure Batch and use cases for JobManagerTask
我目前正在研究 Azure Batch 服务,我对 JobManagerTask
...
的正确使用感到困惑
...也许 Azure Batch 应用程序的整体架构应该是什么样子。我根据在 Github .
上找到的 Microsoft 代码示例构建了以下架构
这些是我当前的应用程序组件。
App1 - ClusterHead
- 创建一个作业(包括自动池)
- 定义
JobManagerTask
- 在工作站上运行
App2 - JobManagerTask
- 将输入数据拆分成块
- 将块(工作单元)推送到输入队列
- 创建任务(
CloudTask
)
App3 - WorkloadRunner
- 从输入队列中提取
- 执行任务
- 推送到输出队列
Azure 存储帐户
- 链接到 Azure Batch 帐户
- 提供输入和输出队列
- 提供结果table
Azure 持久函数
- 通过使用 DurableEntities 实现聚合器模式,以便我可以过早地访问传入的结果。
- 由输出队列中的消息触发
- 聚合结果并将实体写入 Azure 存储 table
问题
- 是否正确使用
JobManagerTask
?
- 为什么我 want/need 封装了 JobManagerTask 的额外 binary/application 包?
- 有人可以举例说明什么时候我更愿意使用
JobManagerTask
而不是 手动 创建工作吗?
提前致谢!
你的例子是一个如何使用 JobManagerTask 的例子,尽管正如你提到的,如果生成的数据全部由 JobManagerTask 生成并且是固定的,那么将它合并到你的 ClusterHead 中是有意义的你提到。在您的情况下,这仅取决于您是希望数据的拆分和上传作为作业的一部分发生,还是 运行 在工作站上进行。
一个区域JobManagerTasks excel是如果进来的数据是连续的。基本上,如果你有一群写入原始输入队列的作者,你可以让你的 JobManagerTask 运行 不断地从该队列中读取并拆分 data/creating 任务。
我目前正在研究 Azure Batch 服务,我对 JobManagerTask
...
...也许 Azure Batch 应用程序的整体架构应该是什么样子。我根据在 Github .
上找到的 Microsoft 代码示例构建了以下架构这些是我当前的应用程序组件。
App1 - ClusterHead
- 创建一个作业(包括自动池)
- 定义
JobManagerTask
- 在工作站上运行
App2 - JobManagerTask
- 将输入数据拆分成块
- 将块(工作单元)推送到输入队列
- 创建任务(
CloudTask
)
App3 - WorkloadRunner
- 从输入队列中提取
- 执行任务
- 推送到输出队列
Azure 存储帐户
- 链接到 Azure Batch 帐户
- 提供输入和输出队列
- 提供结果table
Azure 持久函数
- 通过使用 DurableEntities 实现聚合器模式,以便我可以过早地访问传入的结果。
- 由输出队列中的消息触发
- 聚合结果并将实体写入 Azure 存储 table
问题
- 是否正确使用
JobManagerTask
? - 为什么我 want/need 封装了 JobManagerTask 的额外 binary/application 包?
- 有人可以举例说明什么时候我更愿意使用
JobManagerTask
而不是 手动 创建工作吗?
提前致谢!
你的例子是一个如何使用 JobManagerTask 的例子,尽管正如你提到的,如果生成的数据全部由 JobManagerTask 生成并且是固定的,那么将它合并到你的 ClusterHead 中是有意义的你提到。在您的情况下,这仅取决于您是希望数据的拆分和上传作为作业的一部分发生,还是 运行 在工作站上进行。
一个区域JobManagerTasks excel是如果进来的数据是连续的。基本上,如果你有一群写入原始输入队列的作者,你可以让你的 JobManagerTask 运行 不断地从该队列中读取并拆分 data/creating 任务。