為您的情節選擇正確的整合執行階段設定
整合執行階段是 Azure Data Factory 所提供資料整合解決方案基礎結構的重要部分。 這需要您充分考慮如何適應設計解決方案開始時的現有網路結構和資料來源,以及考慮效能、安全性和成本。
不同整合執行階段類型的比較
在 Azure Data Factory 中,我們有三種整合執行階段:Azure 整合執行階段、自我裝載整合執行階段和 Azure-SSIS 整合執行階段。 針對 Azure 整合執行階段,您也可以啟用受控虛擬網路,使其架構與全域 Azure 整合執行階段不同。
此表列出所有整合執行階段某些層面的差異。 您可以根據實際需求來選擇適當項目。 針對 Azure-SSIS 整合執行階段,您可以深入了解建立 Azure-SSIS 整合執行階段文章。
功能 | Azure 整合執行階段 | 具有受控虛擬網路的 Azure 整合執行階段 | 自我裝載整合執行階段 |
---|---|---|---|
受控計算 | Y | Y | 否 |
Autoscale | Y | Y* | 否 |
資料流程 | Y | Y | 否 |
內部部署資料存取 | 否 | Y** | Y |
私人連結/私人端點 | 否 | Y*** | Y |
自訂元件/驅動程式 | N | N | 是 |
* 啟用存留時間 (TTL) 時,整合執行階段的計算大小會根據設定予以保留,而且無法進行自動調整。
** 內部部署環境必須透過 Express Route 或 VPN 連線至 Azure。 不支援自訂元件和驅動程式。
*** 私人端點是由 Azure Data Factory 服務所管理。
請務必選擇適當的整合執行階段類型。 其不僅必須適合您現有的資料整合架構和需求,您也需要考慮如何進一步滿足不斷增長的業務需求,以及任何未來的工作負載增加。 但是沒有一刀切的方式。 下列考量可以協助您導覽決策:
什麼是整合執行階段和資料存放區位置?
整合執行階段位置會定義其後端計算的位置,以及資料移動、活動分派和資料轉換的執行位置。 為了獲得更佳的效能和傳輸效率,整合執行階段應該更接近資料來源或接收器。- Azure 整合執行階段會根據某些規則來自動偵測最適合的位置 (也稱為自動解析)。 請參閱這裡的詳細資料:Azure IR 位置。
- 具有受控虛擬網路的 Azure 整合執行階段的區域與您的資料處理站相同。 這無法像 Azure 整合執行階段一樣地自動解析。
- 自我裝載整合執行階段位在您本機電腦或 Azure 虛擬機器的區域中。
是否可以公開存取資料存放區?
如果可公開存取資料存放區,則不同整合執行階段類型之間的差異並不大。 如果存放區位於防火牆後方或是內部部署或虛擬網路這類私人網路中,則較好的選擇是具有受控虛擬網路的 Azure 整合執行階段或是自我裝載整合執行階段。- 使用具有受控虛擬網路的 Azure 整合執行階段來存取防火牆後方或私人網路中的資料存放區時,需要一些額外的設定,例如 Private Link 服務和 Load Balancer。 您可以參閱本教學課程使用私人端點從 Data Factory 受控 VNet 存取內部部署 SQL Server作為範例。 如果資料存放區位於內部部署環境中,則內部部署必須透過 Express Route 或 S2S VPN 連線至 Azure。
- 自我裝載整合執行階段更具彈性,而且不需要額外的設定、Express Route 或 VPN。 但您需要自行提供和維護機器。
- 您也可以將 Azure 整合執行階段的公用 IP 位址新增至防火牆的允許清單,並允許其存取資料存放區,但這不是高度安全生產環境中所要的解決方案。
資料傳輸期間需要何種層級的安全性?
如果您需要處理高度機密的資料,則會想要在資料傳輸期間防範中間人攻擊。 然後,您可以選擇使用私人端點和 Private Link 來確保資料安全性。- 使用具有受控虛擬網路的 Azure 整合執行階段時,您可以建立資料存放區的受控私人端點。 私人端點是由受控虛擬網路內的 Azure Data Factory 服務所維護。
- 您也可以在虛擬網路中建立私人端點,而自我裝載整合執行階段可以使用它們來存取資料存放區。
- Azure 整合執行階段不支援私人端點和 Private Link。
您能夠提供何種層級的維護?
維護基礎結構、伺服器和設備是企業 IT 部門的其中一項重要工作。 其通常需要很多時間和精力。- 您不需要擔心維護,例如 Azure 整合執行階段以及具有受控虛擬網路的 Azure 整合執行階段的更新、修補程式和版本。 Azure Data Factory 服務會負責所有維護工作。
- 因為自我裝載整合執行階段安裝在客戶機器上,所以終端使用者必須負責維護。 不過,您可以啟用自動更新,以在有更新時自動取得最新版本的自我裝載整合執行階段。 若要了解如何啟用自動更新以及管理自我裝載整合執行階段的版本控制,您可以參閱自我裝載整合執行階段自動更新和過期通知文章。 我們也提供自我裝載整合執行階段的診斷工具,以檢查一些常見問題。 若要深入了解診斷工具,請參閱自我裝載整合執行階段診斷工具文章。 此外,建議明確使用 Azure 監視器和 Azure Log Analytics 來收集該資料,並啟用單一窗口來監視自我裝載整合執行階段。 在設定自我裝載整合執行階段以收集記錄分析文章中深入了解如何設定此作業,以取得指示。
您有哪些並行需求?
處理大規模資料 (例如大規模資料移轉) 時,我們希望盡可能提高處理效率和速度。 並行通常是資料整合的主要需求。- 在所有整合執行階段類型中,Azure 整合執行階段具有最高的並行支援。 資料整合單位 (DIU) 是在 Azure Data Factory 上執行的功能單位。 您可以選取所需的 DIU 數目,例如複製活動。 在 DIU 的範圍內,您可以同時執行多個活動。 針對不同的區域群組,我們將有不同的上限。 了解 Data Factory 限制文章中這些限制的詳細資料。
- 具有受控虛擬網路的 Azure 整合執行階段與 Azure 整合執行階段具有類似的機制,但因為某些架構限制,其可支援的並行小於 Azure 整合執行階段。
- 自我裝載整合執行階段可執行的並行活動取決於機器大小和叢集大小。 如果您需要更高的並行,則可以選擇較大的機器,或在叢集中使用更多的自我裝載整合節點。
您是否需要任何特定功能?
整合執行階段類型之間會有一些功能差異。- Azure 整合執行階段和具有受控虛擬網路的 Azure 整合執行階段支援資料流程。 不過,您無法使用自我裝載整合執行階段來執行資料流程。
- 如果您需要安裝自訂元件 (例如 ODBC 驅動程式、JVM 或 SQL Server 憑證),則自我裝載整合執行階段是唯一的選項。 Azure 整合執行階段和具有受控虛擬網路的 Azure 整合執行階段不支援自訂元件。
整合執行階段的架構
根據每個整合執行階段的特性,需要不同的架構,才能符合資料整合的商務需求。 下列是一些可用作參考的典型架構。
Azure 整合執行階段
Azure 整合執行階段是完全受控的自動調整計算,可用來移動來自 Azure 或非 Azure 資料來源的資料。
- 從 Azure 整合執行階段到資料存放區的流量是透過公用網路。
- 我們提供 Azure 整合執行階段的靜態公用 IP 位址範圍,而且這些 IP 位址可以新增至目標資料存放區防火牆的允許清單。 若要深入了解如何取得 Azure Integration Runtime 的公用 IP 位址,請參閱 Azure Integration Runtime IP 位址文章。
- Azure 整合執行階段可以根據資料來源和資料接收器的區域進行自動解析。 或者,您可以選擇特定區域。 建議您選擇最接近資料來源或接收器的區域,以提供較佳的執行效能。 深入了解疑難排解 Azure IR 上的複製活動文章中的效能考量。
具有受控虛擬網路的 Azure 整合執行階段
使用具有受控虛擬網路的 Azure 整合執行階段時,您應該使用受控私人端點來連線資料來源,以確保傳輸期間的資料安全性。 透過一些額外的設定 (例如 Private Link Service 和 Load Balancer),受控私人端點也可以用來存取內部部署資料來源。
- 受控私人端點無法跨不同的環境重複使用。 您需要為每個環境建立一組受控私人端點。 如需受控私人端點所支援的所有資料來源,請參閱支援的資料來源和服務文章。
- 您也可以使用受控私人端點來連線至您想要協調的外部計算資源,例如 Azure Databricks 和 Azure Functions。 若要查看完整的受支援外部計算資源清單,請參閱支援的資料來源和服務文章。
- 受控虛擬網路是由 Azure Data Factory 服務所管理。 受控虛擬網路與客戶虛擬網路之間不支援 VNET 對等互連。
- 客戶無法直接變更設定,例如受控虛擬網路上的 NSG 規則。
- 如果環境之間的任何受控私人端點屬性不同,則您可以參數化該屬性並在部署期間提供個別值來將其覆寫。 請參閱適用於 CI/CD 的最佳做法文章中的詳細資料。
自我裝載整合執行階段
若要防止來自不同環境的資料彼此干擾,並確保生產環境的安全性,我們需要為每個環境建立相對應的自我裝載整合執行階段。 這確保不同環境之間的隔離足夠。
因為自我裝載整合執行階段會在客戶管理的機器上執行,所以為了盡可能降低成本、維護和升級工作,我們可以針對相同環境中的不同專案利用自我裝載整合執行階段的共用函數。 如需自我裝載整合執行階段共用的詳細資料,請參閱在 Azure Data Factory 中建立共用的自我裝載整合執行階段文章。 同時,若要讓資料在傳輸期間更為安全,我們可以選擇使用私人連結來連線資料來源和金鑰保存庫,以及連線自我裝載整合執行階段與 Azure Data Factory 服務之間的通訊。
- Express Route 不是必要的。 如果沒有 Express Route,則資料將無法透過虛擬網路或私人連結這類專人網路連線至接收器,而是透過公用網路。
- 如果內部部署網路透過 Express Route 或 VPN 連線至 Azure 虛擬網路,則可以在中樞 VNET 的虛擬機器上安裝自我裝載整合執行階段。
- 中樞輪輻虛擬網路架構不僅可以用於不同的專案,還可以用於不同的環境 (Prod、QA 和 Dev)。
- 可以與多個資料處理站共用自我裝載整合執行階段。 主要資料處理站將其參考為共用的自我裝載整合執行階段,而其他項目將其稱為連結的自我裝載整合執行階段。 實體自我裝載整合執行階段可以在叢集中有多個節點。 通訊只會發生在主要自我裝載整合執行階段與主要節點之間,而且工作會從主要節點散發至次要節點。
- 內部部署資料存放區的認證可以儲存至本機電腦或 Azure Key Vault。 高度建議使用 Azure Key Vault。
- 自我裝載整合執行階段與資料處理站之間的通訊可以通過私人連結。 但目前,透過 Azure 轉送進行互動式製作,以及從下載中心自動更新至最新版本不支援私人連結。 流量會通過內部部署環境的防火牆。 如需詳細資訊,請參閱 Azure Private Link for Azure Data Factory 文章。
- 只有主要資料處理站才需要私人連結。 所有流量都會通過主要資料處理站,然後流向其他資料處理站。
- 預期跨所有 CI/CD 階段都要有自我裝載整合執行階段的相同名稱。 您可以考慮使用三元處理站以僅包含共用的自我裝載整合執行階段,以及在各種生產階段中使用連結的自我裝載整合執行階段。 如需詳細資訊,請參閱持續整合和傳遞文章。
- 您可以使用內部部署網路和 Express Route 的設定 (透過內部部署 Proxy 或中樞虛擬網路),來控制流量如何進入下載中心和 Azure 轉送。 請確定 Proxy 或 NSG 規則允許流量。
- 如果您想要保護自我裝載整合執行階段節點之間的通訊,則可以使用 TLS/SSL 憑證以從內部網路啟用遠端存取。 如需詳細資訊,請參閱使用 TLS/SSL 憑證從內部網路啟用遠端存取 (進階)文章。