我正在 Azure"数据工厂"中设置管道,目的是从存储中获取平面文件并将其加载到 Azure SQL DB 中的表中。
此管道的模板指定我需要开始和结束时间,本教程说将其设置为 1 天。
我试图理解这一点。如果它是Linux中的CRON作业或Windows Server中的计划任务,那么我只需告诉它何时开始(即每天早上6点),并且需要多长时间才能完成。
这让我想到了几个相关的问题:
- 为什么需要指定结束时间?
- 如果我不知道运行需要多长时间怎么办?
- 如果我在将来设置得太远,我是否会遇到数据管道无法及时完成的风险?
- 如果我设置得太早,管道会中断吗?
- 为什么它被硬编码为日期而不是频率(即它说使用这种格式 - "2014-10-14T16:32:41Z")
我发现了一个先前的问题,它阐明了如何进行频率而不是硬编码日期,但是解决方案仍然没有回答我上面的问题。
1 天计划只是一个示例,用于突出显示以下概念:如果频率设置为每小时 1 天,则预计会有 24 个活动窗口,如示例中所示。
为什么需要指定结束时间?
您不必指定结束时间,如果需要,您可以无限期地运行管道。 但是,您可能出于业务原因设置结束时间,例如与年度业务周期重合。 整个管道的开始和结束时间适用于其中的活动集合。活动将根据您为数据集的活动和可用性设置的频率(每小时、每天等)运行。 您还可以设置活动的开始时间,或者偏移或延迟它们(例如,如果要处理昨天的数据),或者设置过去的开始日期以回填数据。
为什么它被硬编码为日期而不是频率?
管道开始和结束是日期而不是频率的原因是,它是管道处于活动状态的总日期间隔,并且各个处理活动处理它们运行的频率和时间。
如果我不知道运行需要多长时间怎么办?
一旦活动开始,它们将运行到完成。 如果它们超过结束日期,管道将根本不会启动新的活动。
如果我在将来设置得太远,我是否会遇到数据管道无法及时完成的风险?
否,及时完成仅与您的集群大小、数据量和并发设置有关。
如果我设置得太早,管道会中断吗?
见上文
我们提供这种复杂的计划,以便您可以更灵活地编排多个服务,同时让 ADF 管理云资源,而不仅仅是启动 cron 作业。在我们的文档中有更多关于调度的细微信息,https://azure.microsoft.com/en-us/documentation/articles/data-factory-scheduling-and-execution/
为什么需要指定结束时间?
在 ADF1 中,如果要指定开始时间,则必须指定结束时间。如果未指定开始和结束时间,那很好,你将能够部署管道,但管道中的活动不会触发。