【问题标题】:Azure Process OrchestrationAzure 流程编排
【发布时间】:2017-05-11 17:05:35
【问题描述】:

我正在寻求有关流程编排最佳实践的建议。为了提供一些上下文,我有以下任务要编排:

  1. 向上扩展 Azure Batch Pool 以提供足够的节点
  2. 执行调用服务器以检索任务列表的自定义 .Net 代码。这些任务每天都在变化。将这些任务排入批处理池。
  3. 在批处理池上执行每个任务(自定义 .Net 代码)。每个任务都会在 Azure 存储帐户中创建数据。
  4. 缩小不再需要的批处理池。
  5. 启动/扩展数据仓库
  6. 将数据批量导入数据仓库(预计使用 PolyBase 和 BCP 的组合)。
  7. 聚合数据并将输出生成到 Azure 存储帐户。
  8. 暂停/缩小数据仓库

我目前正在将数据仓库与运行手册进行比较以执行上述操作。

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

我发现数据仓库更具视觉吸引力。然而,数据切片似乎是大材小用。我只是希望该过程在每天早上 8 点执行。我不希望它在过去几天内尝试执行(例如,如果我修改了模板)。我希望数据仓库也能更好地处理活动管道中的故障/恢复。

我还应该考虑其他方法/建议吗?

谢谢 大卫

【问题讨论】:

    标签: azure azure-data-factory azure-automation azure-batch


    【解决方案1】:

    这是一个相当广泛的问题,所以我将提供一个广泛的答案......

    Azure 数据工厂 (ADF) 当然可以完成上面列表中您需要的大部分工作,但有一些例外/调整,如下所示。

    批量计算池缩放。这需要使用自动缩放功能在服务中本地处理并传递命令来处理这个问题。 ADF 中没有 Activity 可以直接设置它。

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

    在此处创建自定义活动的更多信息:https://www.purplefrogsystems.com/paul/2016/11/creating-azure-data-factory-custom-activities/

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

    最后,对于 DW 缩放和暂停,我认为您需要在此处使用 Azure 自动化。我不知道 ADF 中有任何东西可以提供这种级别的控制,除非您再次破坏 .Net。

    希望这可以指导您如何取得进展。

    【讨论】:

    • 感谢您的回复。编写自定义 .Net 足够快乐。在我将此标记为答案之前,除了运行手册之外,是否还有其他用于流程编排的数据工厂替代品?我不喜欢数据工厂的切片方面(可能是由于缺乏理解),但担心诸如“不要在星期六/太阳上运行”之类的问题,或者如果我在过去创建了一个带有 startDate 的管道,它想要还要运行所有以前的日期...当我真的希望它从今天开始时(我知道我可以使用正确的 startDate 创建它,但担心修改现有的)。
    • PowerShell 是您的朋友。如果需要,您可以使用 ADF cmdlet 覆盖切片。
    猜你喜欢
    • 2022-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-19
    • 1970-01-01
    • 2021-09-08
    • 2011-08-17
    • 2019-04-21
    相关资源
    最近更新 更多