Azure进程编排

Azure进程编排,azure,azure-data-factory,azure-automation,azure-batch,Azure,Azure Data Factory,Azure Automation,Azure Batch,我正在寻找关于流程编排的最佳实践的建议。要提供一些上下文,我需要协调以下任务: 扩大Azure批处理池以提供足够的节点 执行自定义.Net代码,该代码调用服务器以检索任务列表。这些任务每天都在变化。将这些任务排入批处理池 在批处理池上执行每个任务(自定义.Net代码)。每个任务都在Azure存储帐户中创建数据 缩小批处理池,因为不再需要它 启动/扩展数据仓库 将数据批量导入数据仓库(预期使用PolyBase和BCP的组合) 聚合数据并生成输出到Azure存储帐户 暂停/缩小数据仓库 我目前正在将

我正在寻找关于流程编排的最佳实践的建议。要提供一些上下文,我需要协调以下任务:

  • 扩大Azure批处理池以提供足够的节点
  • 执行自定义.Net代码,该代码调用服务器以检索任务列表。这些任务每天都在变化。将这些任务排入批处理池
  • 在批处理池上执行每个任务(自定义.Net代码)。每个任务都在Azure存储帐户中创建数据
  • 缩小批处理池,因为不再需要它
  • 启动/扩展数据仓库
  • 将数据批量导入数据仓库(预期使用PolyBase和BCP的组合)
  • 聚合数据并生成输出到Azure存储帐户
  • 暂停/缩小数据仓库
  • 我目前正在将数据仓库与Runbook进行比较,以执行上述操作

    我发现Runbook在设计和运行时的可视化方面非常原始

    我发现数据仓库更加直观。然而,数据切片似乎是大刀阔斧的。我只是希望流程在每天早上8点执行。我不希望它试图执行过去几天(如果我修改模板的例子)。我希望数据仓库也能更好地处理活动管道中的故障/恢复

    有没有其他的方法我应该考虑/建议?

    谢谢
    大卫

    这是一个相当宽泛的问题,所以我会给出一个宽泛的答案

    Azure Data Factory(ADF)当然可以完成上面列表中所需的大部分功能,但有一些例外/调整,如下所示

    批处理计算池扩展。这需要使用自动缩放功能在服务中本地处理,并传递一个命令来处理。ADF中没有可以直接设置的活动

    您在第3点和第4点中提到的自定义.Net代码。您可以将这些作为ADF自定义活动编写,并将其传递给批处理服务执行。因此,允许ADF处理这些DLL的etc,而不是让其他东西创建批处理任务,而ADF只是执行它们。ADF将处理所有这些

    有关在此处创建自定义活动的详细信息:

    对于数据仓库,ADF具有开箱即用的功能来执行查询,并允许将参数传递给存储过程等

    最后,对于DW扩展和暂停,我认为您需要在这里使用Azure自动化。我不知道ADF中有什么可以提供这种级别的控制,除非你再次突破.Net


    希望这能给你一个前进的方向。

    谢谢你的回复。很高兴编写自定义.Net。在我将此标记为答案之前,除了运行手册之外,是否还有其他用于流程编排的数据工厂替代方案?我不喜欢数据工厂的切片方面(可能是因为缺乏理解),但担心诸如“不要在sat/sun上运行”之类的问题,或者如果我在过去创建了一个带有startDate的管道,它还希望运行所有以前的日期。。。当我真的希望它从今天开始(我知道我可以用正确的开始日期创建它,但担心修改现有版本)。PowerShell是您的朋友。如果需要,可以使用ADF cmdlet覆盖切片。