Azure Data Factory 中的整合執行階段
適用於:Azure Data Factory Azure Synapse Analytics
提示
試用 Microsoft Fabric 中的 Data Factory,這是適用於企業的全方位分析解決方案。 Microsoft Fabric 涵蓋從資料移動到資料科學、即時分析、商業智慧和報告的所有項目。 了解如何免費開始新的試用!
Integration Runtime (IR) 是 Azure Data Factory 和 Azure Synapse 管線在不同網路環境中提供下列資料整合功能的計算基礎結構:
- 資料流程:在受控的 Azure 計算環境中執行資料流程。
- 資料移動:跨 (內部部署或虛擬私人網路的) 公用或私人網路資料存放區複製資料。 此服務支援內建的連接器、格式轉換、資料行對應,以及高效能和可調整的資料傳輸。
- 活動分派:分派與監視在 Azure Databricks、Azure HDInsight、ML 工作室 (傳統版)、Azure SQL Database、SQL Server 及其他各種計算服務上執行的轉換活動。
- SSIS 套件執行:在受控 Azure 計算環境中,以原生方式執行 SQL Server Integration Services (SSIS) 套件。
在 Data Factory 和 Synapse 管線中,活動可以定義要執行的動作。 連結服務可定義目標資料存放區或計算服務。 整合執行階段可以連接活動與連結服務。 受連結服務或活動所參考,提供可直接執行活動或分派活動的計算環境。 這讓活動能在最接近目標資料存放區或計算服務的可能區域中執行,發揮最大的效能,同時能夠彈性地符合安全性和合規性需求。
您可直接透過管理中樞以及任何參考整合執行階段的活動、資料集或資料流程,在 Azure Data Factory 和 Azure Synapse UI 中建立整合執行階段。
整合執行階段類型
Data Factory 提供三種 Integration Runtime (IR) 類型,建議您選擇最適合資料整合功能和最符合網路環境需求的類型。 三種 IR 類型如下:
- Azure
- 自我裝載
- Azure-SSIS
注意
Synapse 管線目前僅支援 Azure 或自我裝載整合執行階段。
下表描述每個整合執行階段類型的功能和網路支援:
IR 類型 | 公用網路支援 | 私人連結支援 |
---|---|---|
Azure | 資料流程 資料移動 活動分派 |
資料流程 資料移動 活動分派 |
自我裝載 | 資料移動 活動分派 |
資料移動 活動分派 |
Azure-SSIS | SSIS 封裝執行 | SSIS 封裝執行 |
注意
輸出控制項會隨 Azure IR 的服務而異。 在 Synapse 中,工作區可以選擇在使用 Azure IR 時,限制來自受控虛擬網路的輸出流量。 使用 Azure IR 時,Data Factory 會開啟所有連接埠供輸出通訊使用。 Azure-SSIS IR 可與您的 vNET 整合,提供輸出通訊控制項。
Azure 整合執行階段
Azure 整合執行階段可以:
- 在 Azure 中執行資料流程
- 在雲端資料存放區間執行複製活動
- 在公用網路中分派下列轉換活動:
- .NET 自訂活動
- Azure 函式活動
- Databricks Notebook/ Jar/ Python 活動
- Data Lake Analytics U-SQL 活動
- 取得中繼資料活動
- HDInsight Hive 活動
- HDInsight Pig 活動
- HDInsight MapReduce 活動
- HdInsight Spark 活動
- HDInsight 串流活動
- 查閱活動
- Machine Learning Studio (傳統版) 批次執行活動
- Machine Learning Studio (傳統版) 更新資源活動
- 預存程序活動
- 驗證活動
- 網路活動
Azure IR 網路環境
Azure Integration Runtime 支援連線至具有公開存取端點的資料存放區和計算服務。 啟用受控虛擬網路的 Azure Integration Runtime,支援在私人網路環境中使用私人連結服務連線到資料存放區。 在 Synapse 中,工作區可以選擇限制來自 IR 受控虛擬網路的輸出流量。 在 Data Factory 中,所有連接埠都開放供輸出通訊使用。 Azure-SSIS IR 可與您的 vNET 整合,提供輸出通訊控制項。
Azure IR 計算資源和調整規模
Azure 整合執行階段在 Azure 中提供完全受控、無伺服器的計算。 您不必擔心基礎結構佈建、軟體安裝、修補或容量大小調整。 此外,您只需支付實際使用時間。
Azure 整合執行階段提供原生計算,能夠以安全、可靠且高效能的方式,在雲端資料存放區之間移動資料。 您可以設定要在複製活動上使用的資料整合單位數量,Azure IR 的計算大小會彈性地因應擴大,您不必明確調整 Azure Integration Runtime 的大小。
活動分派是輕量型的作業,可將活動路由傳送至目標計算服務,所以在此情節中,不需要擴大計算大小。
如需有關建立與設定 Azure IR 的資訊,請參閱如何建立與設定 Azure Integration Runtime。
注意
Azure Integration Runtime 具有與資料流程執行階段相關的屬性,可定義用來執行資料流程的基礎計算基礎結構。
自我裝載整合執行階段
自我裝載 IR 能夠:
- 在雲端資料存放區和私人網路中的資料存放區之間執行複製活動。
- 在內部部署或 Azure 虛擬網路中,針對計算資源分派下列轉換活動:
- Azure 函式活動
- 自訂活動 (在 Azure Batch 上執行)
- Data Lake Analytics U-SQL 活動
- 取得中繼資料活動
- HDInsight Hive 活動 (BYOC - 自攜叢集)
- HDInsight Pig 活動 (BYOC)
- HDInsight MapReduce 活動 (BYOC)
- HDInsight Spark 活動 (BYOC)
- HDInsight Streaming 活動 (BYOC)
- 查閱活動
- Machine Learning Studio (傳統版) 批次執行活動
- Machine Learning Studio (傳統版) 更新資源活動
- Machine Learning 執行管線活動
- 預存程序活動
- 驗證活動
- 網路活動
注意
使用自我裝載整合執行階段來支援需要自備驅動程式 (例如 SAP Hana、MySQL 等) 的資料存放區。如需詳細資訊,請參閱支援的資料存放區。
注意
Java Runtime Environment (JRE) 是自我裝載 IR 的相依性。 請確認已在同一部主機上安裝 JRE。
自我裝載 IR 網路環境
如果想要在無法從公用雲端環境直接存取的私人網路環境中安全執行資料整合,您可以在防火牆後的內部部署環境或虛擬私人網路內安裝自我裝載 IR。 自我裝載整合執行階段只會建立對網際網路的 HTTP 型輸出連線。
自我裝載 IR 計算資源和調整規模
請在私人網路內的內部部署機器或虛擬機器上安裝自我裝載 IR。 目前,我們只支援在 Windows 作業系統上執行自我裝載 IR。
若要達到高可用性和延展性,您可以在主動-主動模式下,將邏輯執行個體和多個內部部署機器產生關聯,以擴增自我裝載 IR。 如需詳細資訊,請參閱如何建立與設定自我裝載 IR一文。
Azure-SSIS 整合執行階段
若要隨即轉移現有的 SSIS 工作負載,您可以建立 Azure-SSIS IR,以原生方式執行 SSIS 套件。
Azure-SSIS IR 網路環境
Azure-SSIS IR 可以佈建在公用網路或私人網路中。 將 Azure-SSIS IR 加入已連線至內部網路的虛擬網路,即可支援內部部署資料存取。
Azure-SSIS IR 計算資源和調整規模
Azure-SSIS IR 是一個完全受控的 Azure VM 叢集,專門用來執行您的 SSIS 套件。 您可以自備 Azure SQL Database 或 SQL 受控執行個體,供 SSIS 專案/套件 (SSISDB) 目錄使用。 指定節點大小可以擴大計算能力,指定叢集的節點數目可以擴增計算能力。 您可以依需求來停止和啟動 Azure-SSIS Integration Runtime,以管理執行成本。
如需詳細資訊,請參閱如何建立與設定 Azure-SSIS IR。 建立之後,您可以使用熟悉的工具,例如 SQL Server Data Tools (SSDT) 和 SQL Server Management Studio (SSMS),就像在內部部署環境中使用 SSIS 一樣,幾乎不需要變更就能部署與管理現有的 SSIS 套件。
如需 Azure-SSIS 執行階段的詳細資訊,請參閱下列文章:
- 教學課程:將 SSIS 套件部署至 Azure。 本文逐步說明如何建立 Azure-SSIS IR,並使用 Azure SQL 資料庫裝載 SSIS 目錄。
- 如何:建立 Azure-SSIS 整合執行階段。 本文詳細解說教學課程的內容,並提供使用 SQL 受控執行個體以及將 IR 加入虛擬網路的指示。
- 監視 Azure-SSIS IR。 本文示範如何擷取 Azure-SSIS IR 相關資訊,以及如何在傳回的資訊中提供狀態描述。
- 管理 Azure-SSIS IR。 本文示範如何停止、啟動或移除 Azure-SSIS IR。 它也會示範如何將更多節點新增至 IR,藉此擴增 Azure-SSIS IR。
- 將 Azure-SSIS IR 加入虛擬網路。 這篇文章提供將 Azure SSIS IR 加入至 Azure 虛擬網路的概念資訊。 還會提供使用 Azure 入口網站設定虛擬網路,並將 Azure-SSIS IR加入其中的步驟。
整合執行階段位置
處理站位置與 IR 位置的關聯性
當您建立 Data Factory 執行個體或 Synapse 工作區時,您需要指定其位置。 執行個體的中繼資料會儲存在這裡,然後從這裡起始管線觸發程序。 中繼資料只會儲存在所選的區域,不會儲存在其他區域。
同時,管線可以存取其他 Azure 區域的資料存放區和計算資料,以在資料存放區之間移動資料或使用計算服務處理資料。 此行為會透過全域可用的 IR 來達成,以確保資料合規性、效率,並降低網路輸出成本。
IR 位置會定義其後端計算的位置,以及資料移動、活動分派和 SSIS 套件的執行位置。 IR 位置與其所屬 Data Factory 的位置可不相同。
Azure IR 位置
您可以設定 Azure IR 的位置區域,如此即會在所選區域中執行或分派活動。
預設值是自動解析公用網路中的 Azure IR。 使用此選項:
就複製活動而言,最好能自動偵測接收器資料存放區的位置,然後使用相同區域 (如有) 或同地理位置中最接近的 IR;如果偵測不到接收器資料存放區的區域,則會改用執行個體區域中的 IR。
例如,Data Factory 或 Synapse 工作區建立在美國東部,
- 將資料複製到美國西部的 Azure Blob 時,如果偵測到 Blob 位於美國西部區域,則會在美國西部的 IR 上執行複製活動;如果區域偵測失敗,則會在美國東部的 IR 上執行複製活動。
- 將資料複製到無法偵測之區域的 Salesforce 時,會在美國東部的 IR 上執行複製活動。
提示
如果您的資料合規性需求很嚴格,且必須確保資料不會離開特定的地理位置,您可以在特定區域中明確建立 Azure IR,並使用 ConnectVia 屬性將連結服務指向此 IR。 例如,如果您想要將位於英國南部的 Blob 資料複製到英國南部的 Azure Synapse 工作區,且想要確保資料不會離開英國,請在英國南部建立 Azure IR,並將兩個連結服務都連結至此 IR。
至於查閱/GetMetadata/Delete 活動執行 (管線活動)、轉換活動分派 (外部活動),以及撰寫作業 (測試連線、瀏覽資料夾清單和資料表清單,以及預覽資料),則會使用與 Data Factory 或 Synapse 工作區同區域中的 IR。
至於資料流程,會使用 Data Factory 或 Synapse 工作區區域中的 IR。
提示
最佳做法是確保資料流程盡可能在與對應資料存放區相同的區域中執行。 自動解析 Azure IR (如果資料存放區位置與 Data Factory 或 Synapse 工作區位置相同),或是在與資料存放區相同的區域中建立新的 Azure IR 執行個體,然後在其中執行資料流程,即可達成此目的。
如果啟用包含 Azure IR 自動解析功能的受控虛擬網路,則會使用 Data Factory 或 Synapse 工作區區域中的 IR。
您可以在 Data Factory Studio 或 Synapse Studio 的管線活動監視檢視或活動監視承載中,監視活動執行期間生效的 IR 位置。
自我裝載 IR 位置
自我裝載 IR 在邏輯上會向 Data Factory 或 Synapse 工作區註冊,但用以支援其功能的計算則由您提供。 因此,自我裝載 IR 沒有明確的位置屬性。
用來執行資料移動時,自我裝載 IR 會從來源取出資料,並寫入目的地。
Azure-SSIS IR 位置
注意
Synapse 管線目前不支援 Azure-SSIS 整合執行階段。
為您的 Azure-SSIS IR 選取正確的位置,對於在擷取、轉換和載入 (ETL) 工作流程中達到高效能至關重要。
- 您的 Azure-SSIS IR 位置不必和您的 Data Factory 位置相同,但應該與您自己的 Azure SQL Database 或 SSISDB 所在的 SQL 受控執行個體位置相同。 如此一來,您的 Azure-SSIS Integration Runtime 就可以輕鬆存取 SSISDB,不會在不同的位置間產生過多流量。
- 如果您沒有現有的 SQL Database 或 SQL 受控執行個體,但有內部部署資料來源/目的地,建議您在連線到內部部署網路的同一虛擬網路位置中,建立新的 Azure SQL Database 或 SQL 受控執行個體。 如此一來,您就可以使用新的 Azure SQL Database 或 SQL 受控執行個體建立您的 Azure-SSIS IR,並加入該虛擬網路。 所有項目都位於同一位置,將資料移動和相關聯的成本降至最低,同時發揮最大的效能。
- 如果現有 Azure SQL Database 或 SQL 受控執行個體的位置,和連線至內部部署網路的虛擬網路位置不同,請先使用現有的 Azure SQL Database 或 SQL 受控執行個體建立您的 Azure-SSIS IR,並加入相同位置的另一個虛擬網路。 然後,設定不同位置之間的虛擬網路對虛擬網路連線。
下圖顯示 Data Factory 及其整合執行階段的位置設定:
決定使用哪一個 IR
如果活動與多個整合執行階段相關聯,則會解析為其中之一。 自我裝載整合執行階段優先於使用受控虛擬網路之 Azure Data Factory 或 Synapse 工作區執行個體中的 Azure 整合執行階段。 後者又優先於全域 Azure 整合執行階段。
例如,使用一個複製活動將資料從來源複製到接收器。 全域 Azure 整合執行階段與來源連結服務相關聯,而 Azure Data Factory 受控虛擬網路中的 Azure 整合執行階段則與接收器連結服務相關聯,結果就是來源和接收器連結服務都使用 Azure Data Factory 受控虛擬網路中的 Azure 整合執行階段。 但若自我裝載整合執行階段與來源的連結服務相關聯,則來源和接收器連結服務都會使用自我裝載整合執行階段。
複製活動
複製活動需要來源和接收器連結服務定義資料流程的方向。 下列邏輯可決定使用哪個整合執行階段執行個體來執行複製:
- 在兩個雲端資料來源之間複製:如果來源和接收器連結服務都使用 Azure IR,則使用指定的區域 Azure IR,或在您選擇自動解析 IR (預設值) 選項時自動判斷 Azure IR 的位置,如整合執行階段位置一節所述。
- 在雲端資料來源與私人網路資料來源間複製:如果來源或接收器連結服務指向自我裝載 IR,則會在自我裝載 IR 上執行複製活動。
- 在私人網路的兩個資料來源間複製:來源和接收器連結服務都必須指向相同的整合執行階段執行個體,而該 IR 則會用來執行複製活動。
查閱和 GetMetadata 活動
查閱和 GetMetadata 的活動會在與資料存放區連結服務相關聯的整合執行階段上執行。
外部轉換活動
每個利用外部計算引擎的外部轉換活動都有一個指向整合執行階段的目標計算連結服務。 這個 IR 執行個體決定分派外部手動編碼轉換活動的位置。
資料流程活動
資料流程活動會在相關聯的 Azure 整合執行階段上執行。 資料流程所使用的 Spark 計算是由 Azure IR 中的資料流程屬性所決定,並由服務全權管理。
CI/CD 中的 Integration Runtime
整合執行階段不會經常變更,且在 CI/CD 的所有階段中都類似。 Data Factory 要求在 CI/CD 的所有階段中,要有相同的名稱和相同類型的整合執行階段。 如果您想要在所有階段中共用整合執行階段,請考慮使用只包含共用整合執行階段的專用處理站。 然後即可在所有環境中,使用此共用處理站作為連結的整合執行階段類型。
相關內容
請參閱以下文章:
- 新增 Azure 整合執行階段
- 建立自我裝載整合執行階段
- 建立 Azure-SSIS Integration Runtime。 本文詳細解說教學課程的內容,並提供使用 SQL 受控執行個體以及將 IR 加入虛擬網路的指示。