ETL-Hybridvorgänge mit vorhandenen lokalen SSIS-Bereitstellungen und Azure Data FactoryHybrid ETL with existing on-premises SSIS and Azure Data Factory

Organisationen, die ihre SQL Server-Datenbanken in die Cloud migrieren, können von erheblichen Kosteneinsparungen und Leistungszuwächsen sowie von einer höheren Flexibilität und einer besseren Skalierbarkeit profitieren.Organizations that migrate their SQL Server databases to the cloud can realize tremendous cost savings, performance gains, added flexibility, and greater scalability. Die Überarbeitung bereits vorhandener ETL-Prozesse (Extrahieren, Transformieren und Laden), die mit SQL Server Integration Services (SSIS) erstellt wurden, kann sich jedoch als Migrationshindernis erweisen.However, reworking existing extract, transform, and load (ETL) processes built with SQL Server Integration Services (SSIS) can be a migration roadblock. In anderen Fällen erfordert der Prozess zum Laden von Daten eine komplexe Logik bzw. bestimmte Datentoolkomponenten, die von Azure Data Factory v2 noch nicht unterstützt werden.In other cases, the data load process requires complex logic and/or specific data tool components that are not yet supported by Azure Data Factory v2. Häufig werden SSIS-Funktionen wie Transformationen für Fuzzysuche und Fuzzygruppierung, CDC (Change Data Capture), SCD (Slowly Changing Dimensions) und DQS (Data Quality Services) verwendet.Commonly used SSIS capabilities include Fuzzy Lookup and Fuzzy Grouping transformations, Change Data Capture (CDC), Slowly Changing Dimensions (SCD), and Data Quality Services (DQS).

Für die Lift & Shift-Migration einer vorhandenen SQL-Datenbank ist möglicherweise ein ETL-Hybridansatz am besten geeignet.To facilitate a "lift and shift" migration of an existing SQL database, a hybrid ETL approach may be the most suitable option. Ein Hybridansatz verwendet zwar Data Factory als primäre Orchestrierungsengine, nutzt aber weiterhin vorhandene SSIS-Pakete für die Bereinigung von Daten und die Verwendung lokaler Ressourcen.A hybrid approach uses Data Factory as the primary orchestration engine, but continues to leverage existing SSIS packages to clean data and work with on-premises resources. Bei diesem Ansatz wird die Data Factory-basierte SQL Server-IR (Integration Runtime) verwendet, um eine Lift & Shift-Migration vorhandener Datenbanken in die Cloud zu ermöglichen, und es werden bereits vorhandener Code und vorhandene SSIS-Pakete genutzt.This approach uses the Data Factory SQL Server Integrated Runtime (IR) to enable a "lift and shift" migration of existing databases into the cloud, while using existing code and SSIS packages.

Dieses Beispielszenario ist für Organisationen relevant, die Datenbanken in die Cloud verlagern und die Verwendung von Data Factory als primäre cloudbasierte ETL-Engine in Betracht ziehen, während sie vorhandene SSIS-Pakete in ihren neuen Clouddatenworkflow integrieren.This example scenario is relevant to organizations that are moving databases to the cloud and are considering using Data Factory as their primary cloud-based ETL engine while incorporating existing SSIS packages into their new cloud data workflow. Viele Organisationen haben stark in die Entwicklung von SSIS-ETL-Paketen für bestimmte Datenaufgaben investiert.Many organizations have significant invested in developing SSIS ETL packages for specific data tasks. Die Vorstellung, diese Pakete umschreiben zu müssen, kann durchaus abschreckend sein.Rewriting these packages can be daunting. Darüber hinaus sind viele vorhandene Codepakete von lokalen Ressourcen abhängig, was eine Migration in die Cloud verhindert.Also, many existing code packages have dependencies on local resources, preventing migration to the cloud.

Mit Data Factory können Kunden ihre bereits vorhandenen ETL-Pakete nutzen und weitere Investitionen in die lokale ETL-Entwicklung zurückfahren.Data Factory lets customers take advantage of their existing ETL packages while limiting further investment in on-premises ETL development. In diesem Beispiel werden mögliche Anwendungsfälle für die Nutzung vorhandener SSIS-Pakete im Rahmen eines neuen Clouddatenworkflows mit Azure Data Factory v2 erläutert.This example discusses potential use cases for leveraging existing SSIS packages as part of a new cloud data workflow using Azure Data Factory v2.

Mögliche AnwendungsfällePotential use cases

In der Vergangenheit war SSIS für viele SQL Server-Datenexperten das bevorzugte ETL-Tool für Datentransformationen und -ladevorgänge.Traditionally, SSIS has been the ETL tool of choice for many SQL Server data professionals for data transformation and loading. Gelegentlich wurden bestimmte SSIS-Features oder Plug-In-Komponenten von Drittanbietern verwendet, um die Entwicklung voranzutreiben.Sometimes, specific SSIS features or third-party plugging components have been used to accelerate the development effort. Kommt ein Austausch oder eine Neuentwicklung dieser Pakete nicht in Frage, können Kunden ihre Datenbanken nicht in die Cloud migrieren.Replacement or redevelopment of these packages may not be an option, which prevents customers from migrating their databases to the cloud. Kunden suchen daher nach Möglichkeiten, wie sie ihre vorhandenen Datenbanken möglichst effizient in die Cloud migrieren und ihre vorhandenen SSIS-Pakete weiter verwenden können.Customers are looking for low impact approaches to migrating their existing databases to the cloud and taking advantage of their existing SSIS packages.

Im Anschluss finden Sie einige potenzielle lokale Anwendungsfälle:Several potential on-premises use cases are listed below:

  • Laden von Netzwerkrouterprotokollen in eine Datenbank zu AnalysezweckenLoading network router logs to a database for analysis.
  • Vorbereiten von Beschäftigungsdaten der Personalabteilung für AnalyseberichtePreparing human resources employment data for analytical reporting.
  • Laden von Produkt- und Vertriebsdaten in ein Data Warehouse, um Umsatzprognosen zu erstellenLoading product and sales data into a data warehouse for sales forecasting.
  • Automatisieren von Ladevorgänge für Speicher operativer Daten oder Data Warehouses für das Finanz- und Rechnungswesen.Automating loading of operational data stores or data warehouses for finance and accounting.

AufbauArchitecture

Übersicht über die Architektur eines ETL-Hybridprozesses mit Azure Data Factory

  1. Daten werden aus dem Blobspeicher in Data Factory gelesen.Data is sourced from Blob storage into Data Factory.
  2. Die Data Factory-Pipeline ruft eine gespeicherte Prozedur auf, um einen lokal gehosteten SSIS-Auftrag über die Integrated Runtime auszuführen.The Data Factory pipeline invokes a stored procedure to execute an SSIS job hosted on-premises via the Integrated Runtime.
  3. Die Datenbereinigungsaufträge werden ausgeführt, um die Daten für die Downstreamnutzung vorzubereiten.The data cleansing jobs are executed to prepare the data for downstream consumption.
  4. Nach erfolgreicher Datenbereinigung werden die bereinigten Daten mithilfe einer Kopieraufgabe in Azure geladen.Once the data cleansing task completes successfully, a copy task is executed to load the clean data into Azure.
  5. Die bereinigen Daten werden dann in Tabellen in Azure Synapse Analytics geladen.The clean data is then loaded into tables in the Azure Synapse Analytics.

KomponentenComponents

  • Blobspeicher wird als Dateispeicher sowie als Datenquelle für Data Factory verwendet.Blob storage is used to store files and as a source for Data Factory to retrieve data.
  • SQL Server Integration Services enthält die lokalen ETL-Pakete für die Ausführung aufgabenspezifischer Workloads.SQL Server Integration Services contains the on-premises ETL packages used to execute task-specific workloads.
  • Azure Data Factory ist die Cloudorchestrierungsengine, die Daten aus mehreren Quellen miteinander kombiniert, orchestriert und in ein Data Warehouse lädt.Azure Data Factory is the cloud orchestration engine that takes data from multiple sources and combines, orchestrates, and loads the data into a data warehouse.
  • Azure Synapse zentralisiert Daten in der Cloud, sodass über standardmäßige ANSI-SQL-Abfragen problemlos darauf zugegriffen werden kann.Azure Synapse centralizes data in the cloud for easy access using standard ANSI SQL queries.

AlternativenAlternatives

Data Factory kann auch Datenbereinigungsprozeduren aufrufen, die mit anderen Technologien (etwa mit einem Databricks-Notebook, einem Python-Skript oder einer auf einem virtuellen Computer ausgeführten SSIS-Instanz) implementiert werden.Data Factory could invoke data cleansing procedures implemented using other technologies, such as a Databricks notebook, Python script, or SSIS instance running in a virtual machine. Eine mögliche Alternative zum Hybridansatz ist das Installieren kostenpflichtiger oder lizenzierter benutzerdefinierter Komponenten für Azure-SSIS Integration Runtime.Installing paid or licensed custom components for the Azure-SSIS integration runtime may be a viable alternative to the hybrid approach.

ÜberlegungenConsiderations

Die Integrated Runtime (IR) unterstützt zwei Modelle: selbstgehostet und von Azure gehostet.The Integrated Runtime (IR) supports two models: self-hosted IR or Azure-hosted IR. Sie müssen sich zunächst für eine dieser beiden Optionen entscheiden.You first must decide between these two options. Die selbstgehostete Variante ist kostengünstiger, aber auch mit einem höheren Wartungs- und Verwaltungsaufwand verbunden.Self-hosting is more cost effective but has more overhead for maintenance and management. Weitere Informationen finden Sie unter Selbstgehostete Integrationslaufzeit.For more information, see Self-hosted IR. Eine Entscheidungshilfe für die Wahl der passenden IR finden Sie bei Bedarf unter Ermitteln der richtigen Integrationslaufzeit.If you need help determining which IR to use, see Determining which IR to use.

Bei Verwendung der von Azure gehosteten Variante müssen Sie entscheiden, wie viel Leistung für die Verarbeitung Ihrer Daten erforderlich ist.For the Azure-hosted approach, you should decide how much power is required to process your data. Bei der von Azure gehosteten Konfiguration können Sie im Rahmen der Konfigurationsschritte die VM-Größe auswählen.The Azure-hosted configuration allows you to select the VM size as part of the configuration steps. Weitere Informationen zum Auswählen von VM-Größen finden Sie unter Überlegungen zur Leistung.To learn more about selecting VM sizes, see VM performance considerations.

Die Entscheidung wird deutlich einfacher, wenn Sie bereits über SSIS-Pakete mit lokalen Abhängigkeiten verfügen (beispielsweise Datenquellen oder Dateien, auf die nicht von Azure aus zugegriffen werden kann).The decision is much easier when you already have existing SSIS packages that have on-premises dependencies such as data sources or files that are not accessible from Azure. In diesem Fall kommt nur die selbstgehostete IR in Frage.In this scenario, your only option is the self-hosted IR. Dieser Ansatz ist am flexibelsten und ermöglicht es, die Cloud als Orchestrierungsengine zu nutzen, ohne vorhandene Pakete umschreiben zu müssen.This approach provides the most flexibility to leverage the cloud as the orchestration engine, without having to rewrite existing packages.

Letztendlich geht es darum, die verarbeiteten Daten zur weiteren Optimierung in die Cloud zu laden oder mit anderen in der Cloud gespeicherten Daten zu kombinieren.Ultimately, the intent is to move the processed data into the cloud for further refinement or combining with other data stored in the cloud. Achten Sie im Rahmen des Entwurfsprozesses auf die Anzahl von Aktivitäten, die in den Data Factory-Pipelines verwendet werden.As part of the design process, keep track of the number of activities used in the Data Factory pipelines. Weitere Informationen finden Sie unter Pipelines und Aktivitäten in Azure Data Factory.For more information, see Pipelines and activities in Azure Data Factory.

PreisePricing

Data Factory ist eine kostengünstige Möglichkeit, um die Datenverschiebung in die Cloud zu orchestrieren.Data Factory is a cost-effective way to orchestrate data movement in the cloud. Die Kosten basieren auf verschiedenen Faktoren:The cost is based on the several factors.

  • Anzahl von PipelineausführungenNumber of pipeline executions
  • Anzahl verwendeter Entitäten/Aktivitäten innerhalb der PipelineNumber of entities/activities used within the pipeline
  • Anzahl von ÜberwachungsvorgängenNumber of monitoring operations
  • Anzahl von Integrationsdurchläufen (in Azure gehostete IR oder selbstgehostete IR)Number of Integration Runs (Azure-hosted IR or self-hosted IR)

Für Data Factory wird eine nutzungsbasierte Abrechnung verwendet.Data Factory uses consumption-based billing. Kosten fallen daher nur während Pipelineausführungen und während der Überwachung an.Therefore, cost is only incurred during pipeline executions and monitoring. Die Ausführung einer einfachen Pipeline kostet gerade einmal 50 Cent, die Überwachung lediglich 25 Cent.The execution of a basic pipeline would cost as little as 50 cents and the monitoring as little as 25 cents. Mit dem Azure-Kostenrechner können Sie eine genauere Schätzung auf der Grundlage Ihrer spezifischen Workload erstellen.The Azure cost calculator can be used to create a more accurate estimate based on your specific workload.

Wenn Sie eine ETL-Hybridworkload ausführen, müssen Sie auch die Kosten für den virtuellen Computer berücksichtigen, der als Host für Ihre SSIS-Pakete fungiert.When running a hybrid ETL workload, you must factor in the cost of the virtual machine used to host your SSIS packages. Diese Kosten richten sich nach der Größe des virtuellen Computers und reichen von D1v2 (ein Kern, 3,5 GB RAM, Datenträger mit 50 GB) bis E64V3 (64 Kerne, 432 GB RAM, Datenträger mit 1.600 GB).This cost is based on the size of the VM ranging from a D1v2 (1 core, 3.5 GB RAM, 50 GB Disk) to E64V3 (64 cores, 432 GB RAM, 1600 GB disk). Weitere Informationen zur Wahl der geeigneten VM-Größe finden Sie unter Überlegungen zur Leistung.If you need further guidance on selection the appropriate VM size, see VM performance considerations.

Nächste SchritteNext steps