因此,我有一个带有计时器触发器的Azure功能应用程序。它每天早上4点运行。它所做的只是从Azure数据仓库中执行SQL存储过程。
问题是:存储过程需要将近20-25分钟才能完成。存储过程具有多项任务,其中包括调用其中的多个存储过程以将数据从Azure数据湖移至SQL数据仓库。当存储过程花费20分钟以上时,不会记录功能应用程序的执行。
为了更好地说明,如果我转到功能应用程序的监视器页面,则有时日志会丢失。因此很难判断功能应用程序是成功运行还是失败。
为避免这种情况,我们计划拆分存储过程任务,但是这里的问题是,父过程中的每个存储过程都依赖于序列。该序列非常重要,因为基础数据中存在数据依赖性。
我试图研究Azure中的持久功能,但需要一些专家就如何利用它提供建议。所以,我可以创建一个新的函数应用程序,并在父函数应用程序或其中的存储过程完成后触发该触发器吗?
请咨询。
答案 0 :(得分:1)
我认为您正在寻找的解决方案将是耐用的Azure函数
https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-overview
答案 1 :(得分:0)
头顶上方有两个快速选择:
具有一个功能来运行一个SP
简而言之:使用计时器触发功能1,运行第一个存储过程,并在SP完成后立即将消息放入队列中。队列Azure Data Factory上的消息将执行下一个SP。一路直到所有SP都完成。