[英]How can I create a one time pipeline run with a long delay in c# data factory
我需要根據存儲在數據庫中的文件,使用某些參數來觸發我在天藍色數據工廠內部構建的管道。 我的問題是我需要安排此管道以在一定時間(通常為幾個小時)后觸發ONCE。 這是安排計划所必需的,我無法通過事件驅動。 我正在使用.NET SDK
我已經創建了到數據工廠的連接並創建了計划觸發器。 我的問題是,計划觸發器不允許我觸發一次然后停止。 它需要間隔和停止日期,我試圖將停止日期設置為與開始日期相同,但是卻出現“間隔不能超過結束日期”的錯誤。
for (int x = 0; x < intervals.Count; x++)
{
// Create a schedule trigger
string triggerName = location + deliveryDate+x;
ScheduleTrigger myTrigger = new ScheduleTrigger()
{
Pipelines = new List<TriggerPipelineReference>()
{
// Associate the Adfv2QuickStartPipeline pipeline with the trigger
new TriggerPipelineReference()
{
PipelineReference = new PipelineReference(pipelineName),
Parameters = pipelineParameters,
}
},
Recurrence = new ScheduleTriggerRecurrence()
{
StartTime = intervals[x],
TimeZone = "UTC",
EndTime = intervals[x],
Frequency = RecurrenceFrequency.Day
}
};
// Now, create the trigger by invoking the CreateOrUpdate method
triggerResources.Add(triggerName,new TriggerResource()
{
Properties = myTrigger
});
}
我無法進行管道運行,因為如果有可能,我無法在一定的延遲(例如2個小時)后進行運行,我只會創建延遲的管道運行...我嘗試了所有操作,例如將頻率留空,將其更改為各種可能性,甚至使用不同的觸發類,例如翻滾和事件。
有一個簡單的粗略解決方案。 使用整數類型的參數創建一個新管道。 管道中的第一個活動將是“等待活動”。 使用參數設置“等待活動”應持續多長時間。 管道中的第二個活動將是“執行管道活動”,它取決於“等待”活動,並將觸發您真正要運行的管道。
該解決方案使您可以選擇等待多長時間,然后執行要運行的實際管道。 我認為,等待活動以秒為單位,因此您需要做一些算術運算。 但是,由於您可以手動觸發,所以這不是問題。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.