我需要開發一個事件驅動的管道,它應該在檔案到達 ADLS2 時觸發,即 ABFS。檔案到達后,我需要在 Azure Databricks 集群上觸發 4 個后續 Spark 作業。
對于編排 Spark 作業,我可以使用 Databricks 作業作為選項,以便可以在管道中觸發作業。
但是只有在檔案到達后才應該觸發第一個作業。
我目前正在探索實作這一目標的方法,但需要專家建議以盡可能好的方式設計這個成本。
一種解決方案可能是使用 Azure 資料工廠來編排基于存盤事件觸發器組件的整個流程,但僅僅因為基于事件的觸發器而使用 ADF 在我看來并不可行,因為應用程式的其余部分,即 Spark 作業可以流水線化來自 Databricks 作業功能。
此外,就成本而言,ADF 可能很昂貴。
另一種解決方案可能是使用 Azure Functions Blob Trigger 來了解檔案到達,但我無法理解如何從 Azure Functions 觸發 Azure Databricks 作業。與函式一起使用可能具有成本效益,因為在檔案到達之前函式不會運行/激活。
注意:一個小時內可能有多個檔案到達。檔案到達時沒有固定的持續時間。
此外,觸發檔案與資料檔案不同。即在觸發檔案到達時,Spark 管道將消耗實際的資料檔案。
資料檔案和觸發器檔案具有不同的擴展名,并且都到達 ABFS。
uj5u.com熱心網友回復:
您對 ADF 成本的擔憂是多余的。管道非常便宜。實際移動資料和使用 CPU 的活動是大部分成本所在。例如,資料流在托管 Spark 集群上運行,這反映在定價中。請參閱資料工廠定價。使用管道來編排 Databricks 作業是一種常見、簡單且(至少對于 ADF 而言)非常便宜的方法。
如果要從 Azure 函式啟動 Databricks 作業,可以使用API。另請查看Databricks Autoloader,但連續運行 Databricks 集群可能會很昂貴。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/495260.html
標籤:天蓝色 天蓝色函数 天蓝色数据块 天蓝色数据工厂 2 天蓝色数据湖-gen2
上一篇:我們如何在Azure-ad-b2c中為ROPC身份驗證創建用戶流,然后我們如何在postman或laravel控制器中使用它
