【问题标题】:Scheduling of jobs through SQL Server stored procedure通过 SQL Server 存储过程调度作业
【发布时间】:2019-05-13 08:32:46
【问题描述】:

我必须编写一个存储过程来调度 Azure 管道(作业)。

  • 频率----一天内批处理需要运行的次数
  • Timing 列将包含批处理开始时间的条目

表 A 将有批次的静态条目。频率表示一天中作业将运行多少次,计时列将批处理运行时间以逗号(,)分隔

Batch_ID   Batch_Name  Frequency    Timing 
-----------------------------------------------
1          ABC           2          7:00,13:00

表 B 将列出对应于一个特定批次的作业。此表将是静态的,并且像表 B 一样具有一次条目。

表 B

Batch_ID   JOB_ID       JOB_NM
--------------------------------
1            1           Job_1
1            2           Job_1

表 C 将包含批量作业的依赖关系

表 C

Batch_ID    JOB_ID      DEPENDENY_JOB_ID
----------------------------------------
1             1
1             2              1

当批处理执行时,表 D 将填充批处理开始时间。

表 D

Batch_ID   Batch_Name   Status    start_Time   end_time
-------------------------------------------------------
1             abc       Start     7:00

一旦表 E 被填充,表 D 将填充作业详细信息。作业 2 将仅在作业 1 完成时开始。

表 E

Batch_ID   Batch_Name  JOB_ID    JOB_NM      Start_Time     End_Time
----------------------------------------------------------------------
1            abc         1        Job_1       7:00
1            abc         2        Job_2       7:15

当 Job 2 完成后,我们将更新 Table D 结束时间列。

第一次运行完成后,我们需要检查表 A 的频率列并再次运行作业(如果大于 1)并再次执行整个练习。

如果我们的第 1 批没有在第 2 批的开始时间之前完成,那么我们必须保留第 2 批直到第 1 批完成。

谁能帮助我如何开始这个?

【问题讨论】:

  • 你的问题缺少问题。
  • 听起来您知道自己想要/需要做什么,所以请随时实施。祝你好运!如果您遇到困难,请务必让我们知道并提出相关问题。 (旁注,我建议不要存储分隔数据,因此当您执行此操作时,我建议将其更改为规范化数据结构。)
  • 老板你有什么问题?
  • 我知道你是怎么开始的。 . . create procedure。如果您的意图是有人为您编写所有这些代码,那么您的问题对于 Stack Overflow 来说太宽泛了。

标签: sql sql-server oracle azure azure-data-factory-2


【解决方案1】:

正如@Gordon Linoff 所说,您的“问题”缺少问题。

如果我可以对此发表意见,我认为在数据工厂和数据库中的存储过程之间拆分您的逻辑不是一个好的设计理念。请注意,将来维护管道的用户可能无法访问数据库,并且无法理解其中的一半。即使您是维护这一点的人,2 年后您也可能会忘记您所做的事情,并且遵循两种资源之间的界限可能会花费您更多的时间。这也会使故障排除变得更加困难。

这实际上取决于您正在处理的场景,但总结一下:尝试将所有与逻辑相关的东西放在一个地方。

希望这有帮助!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-02
    • 2014-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-01
    • 2012-02-29
    • 1970-01-01
    相关资源
    最近更新 更多