Visuelle Datentransformation benötigt? Mapping Data Flow konfigurieren

Veröffentlicht am:

Ein Bericht benötigt nur Verkäufe über 5, die eingehende CSV enthält jedoch alle Verkäufe. Die Daten müssen als Spalten gelesen, nach Betrag gefiltert und für den Bericht gespeichert werden. Mapping Data Flow verbindet diese Transformationen visuell; Azure führt sie auf verwalteten Apache-Spark-Rechenressourcen aus.

Verwende adf-ctappweu, stctadfweu, die Verbindung ls_ctstorage und pipeline/input/sales.csv aus Azure Data Factory erstellen. Die Datei enthält Notebook für 12.50 und Pen für 2.00. Behalte die Rolle Storage Blob Data Contributor für die Factory bei.

CSV als Spalten lesen

Öffne in Data Factory Studio Author → + → Dataset → Azure Blob Storage → DelimitedText:

Name: ds_sales_csv
Linked service: ls_ctstorage
Container: pipeline
Directory: input
File: sales.csv
First row as header: Checked
Import schema: From connection/store

Behalte das Komma als Trennzeichen. Das Dataset beschreibt Speicherort und Spalten der Datei.

Wähle Author → + → Data flow → Mapping Data Flow, vergib df_filter_sales und füge eine Quelle namens sales mit ds_sales_csv hinzu. Prüfe unter Projection, dass order_id, product und amount vorhanden sind.

Verkäufe über 5 behalten

Wähle + nach der Quelle → Filter, nenne ihn aboveFive und trage unter Filter on diesen Ausdruck ein:

toDecimal(amount, 10, 2) > 5

Er wandelt den Betrag vor dem Vergleich in eine Zahl mit zwei Dezimalstellen um. Aktiviere Data flow debug mit der kleinen Standardkonfiguration und warte auf Bereitschaft. Debug startet kostenpflichtige Spark-Rechenressourcen, auch während der Bearbeitung.

Wähle beim Filter Data preview → Refresh.

Mapping-Data-Flow-Filter mit Betragsausdruck und Vorschau ausschließlich für Notebook

Erwarte eine Zeile: order_id 1, Notebook, Betrag 12.50. Die Vorschau zeigt, welche Zeile den Filter passiert.

Ergebnis schreiben

Wähle + nach dem Filter → Sink, nenne das Ziel filteredSales und erstelle ein neues Dataset vom Typ Azure Blob Storage → DelimitedText:

Name: ds_sales_processed
Linked service: ls_ctstorage
Container: pipeline
Directory: processed
File: leer lassen
First row as header: Checked
Import schema: None

Trage processed direkt in das Verzeichnisfeld ein; die Ausführung erstellt diesen Ordner. Wähle im Ziel unter Settings → File name option → Output to single file den Namen sales-filtered.csv und bestätige bei Nachfrage eine einzelne Partition. Behalte die automatische Spaltenzuordnung. Eine Datei ist für dieses kleine Beispiel praktisch; größere Datenmengen profitieren von parallelen Ausgabedateien.

Mapping Data Flow mit sales → aboveFive → filteredSales und Einstellung für eine Ausgabedatei

Prüfe die Reihenfolge und den Dateinamen. Die Vorschau wertet Transformationen aus; eine Pipelineausführung schreibt das Ergebnis.

Ausführen und prüfen

Schalte Data flow debug aus. Erstelle eine Pipeline namens pl_transform_sales, füge eine Data Flow-Aktivität hinzu und wähle unter Settings den Flow df_filter_sales mit AutoResolveIntegrationRuntime. Wähle Validate → Publish all, danach Add trigger → Trigger now.

Öffne Monitor, warte auf Succeeded und öffne die Details der Data-Flow-Aktivität.

Data Factory Monitor mit pl_transform_sales und Status Succeeded

Prüfe Succeeded. Falls Zeilenmetriken verfügbar sind, erwarte 2 gelesene Zeilen und 1 geschriebene Zeile. Der Spark-Start kann selbst für diese kleine Datei mehrere Minuten dauern.

Öffne anschließend stctadfweu → Containers → pipeline → processed und aktualisiere die Ansicht.

Speichercontainer pipeline mit geöffnetem Ordner processed und aufgelisteter sales-filtered.csv

Prüfe, dass sales-filtered.csv im Ausgabeordner erscheint. Öffne die Datei oder lade sie herunter und prüfe die Kopfzeile sowie einen Notebook-Datensatz mit dem numerischen Betrag 12.50. Das bestätigt das gespeicherte Transformationsergebnis.

Abschließen

Lasse Debug nach dem Test ausgeschaltet. Pipelineausführungen verursachen Spark-Rechenkosten. Behalte die Ressourcen für den nächsten Trip oder lösche anschließend rg-cloudtrips-adf-test-weu.