2017-05-11 58 views
0

我在尋求關於流程編排最佳實踐的建議。爲了給一些方面,我有以下任務,以協調:Azure Process Orchestration

  1. 擴展Azure的批次池提供足夠的節點
  2. 執行自定義.NET代碼調用服務器來檢索任務的列表。這些任務每天都在變化。將這些任務排隊到批處理池。
  3. 在批處理池中執行每個任務(自定義.Net代碼)。每個任務都會在Azure存儲帳戶中創建數據。
  4. 縮小批處理池,因爲它不再需要。
  5. 開始/放大數據倉庫
  6. 批量將數據導入數據倉庫(期望使用PolyBase和BCP的組合)。
  7. 彙總數據並生成輸出到Azure存儲帳戶。
  8. 暫停/縮小的數據倉庫

我目前比較數據倉庫來運行手冊來進行上述操作。

我發現Runbooks在設計和運行時的可視化方面非常原始。

我發現數據倉庫更具視覺效果。但是,數據分割看起來過於龐大。我只是希望每天早晨在上午8點執行流程。我不希望它在過去的幾天中試圖執行(例如,如果我修改模板)。我希望數據倉庫能夠更好地處理活動流水線上的失敗/恢復。

我還有其他方法可以考慮嗎?

感謝 大衛

回答

0

這是一個相當寬泛的問題,所以我會提供了一個廣闊的十歲上下的答案...

Azure的數據工廠(ADF)當然可以做到大部分內容在列表中需要上面有幾個例外/調整,如下所示。

批量計算池縮放。這需要在服務中使用自動縮放功能在本地處理,並傳遞一個命令來處理這個問題。 ADF沒有直接設置這項活動。

的自定義.NET代碼,你在點3和4何況你可以寫這些爲獲得傳遞給執行批處理服務ADF自定義活動。因此,允許ADF處理這些DLL等,而不是另外創建批處理任務,而ADF只是執行它們。 ADF將處理所有這些。

在這裏創建自定義活動的更多信息:https://www.purplefrogsystems.com/paul/2016/11/creating-azure-data-factory-custom-activities/

數據倉庫ADF具有開箱即用的功能來執行你的查詢和允許的參數傳球到存儲過程等

最後,對於DW縮放和暫停我認爲您需要在這裏使用Azure自動化。我不知道ADF中的任何東西都可以提供這種級別的控制,除非您再次打破.Net。

希望這可以指導您如何進步。

+0

感謝您的回覆。足夠快樂地寫出自定義.Net。在將此標記爲答案之前,Runbook除外,是否還有其他用於Process Orchestration的Data Factory替代方案? 我不喜歡Data Factory的切片方面(可能是因爲缺乏理解),但擔心諸如「不要在sat/sun上運行」等問題,或者如果我在過去使用startDate創建管道,它也想運行以前的所有日期......當我真的希望它從今天開始(我知道我可以用正確的startDate創建它,但是關心修改現有的日期)。 – DavidReid

+0

PowerShell是你的朋友。如果需要,您可以使用ADF cmdlet覆蓋切片。 –