Freigeben über


Dataverse-Daten im Delta Lake-Format exportieren

Verwenden Sie Azure Synapse Link for Dataverse, um Ihre Microsoft Dataverse-Daten im Delta Lake-Format nach Azure Synapse Analytics zu exportieren. Untersuchen Sie dann Ihre Daten und verkürzen Sie die Zeit, bis Sie Erkenntnisse erhalten. Dieser Artikel enthält die folgenden Informationen und zeigt Ihnen, wie Sie die folgenden Aufgaben ausführen:

  • Erklärt Delta Lake und Parquet und warum Sie Daten in diesem Format exportieren sollten.
  • Export Ihrer Dataverse-Daten im Delta Lake-Format in Ihren Azure Synapse Analytics-Arbeitsbereich mit dem Azure Synapse Link.
  • Überwachung Ihres Azure Synapse Link und Datenkonvertierung.
  • Anzeigen Ihrer Daten aus Azure Data Lake Storage Gen2.
  • Anzeigen Ihrer Daten aus dem Synapse-Arbeitsbereich.

Wichtig

  • Wenn Sie mit vorhandenen benutzerdefinierten Ansichten von CSV auf Delta Lake aktualisieren, empfehlen wir, das Skript zu aktualisieren, um alle partitionierten Tabellen durch nicht partitionierte zu ersetzen. Suchen Sie dazu nach Instanzen von _partitioned und ersetzen Sie diese durch eine leere Zeichenfolge.
  • Für die Dataverse-Konfiguration ist „Nur anhängen“ standardmäßig aktiviert, um CSV-Daten im appendonly-Modus zu exportieren. Die Delta-Lake-Tabelle wird jedoch eine direkte Updatestruktur haben, da die Delta Lake-Konvertierung mit einem periodischen Zusammenführungsprozess einhergeht.
  • Bei der Erstellung von Spark-Pools fallen keine Kosten an. Gebühren fallen erst an, wenn ein Spark-Auftrag im Ziel-Spark-Pool ausgeführt und die Spark-Instanz bei Bedarf instanziiert wird. Diese Kosten beziehen sich auf die Nutzung des Spark des Azure Synapse workspace und werden monatlich abgerechnet. Die Kosten für die Durchführung von Spark-Berechnungen hängen hauptsächlich vom Zeitintervall für die inkrementelle Aktualisierung und den Datenmengen ab. Weitere Informationen: Azure Synapse Analytics Preisgestaltung
  • Es ist wichtig, diese zusätzlichen Kosten zu berücksichtigen, wenn Sie sich für die Verwendung dieses Features entscheiden, da sie nicht optional sind und bezahlt werden müssen, um diese Funktion weiterhin nutzen zu können.
  • Das Ende des Lebenszyklus (EOLA) für Azure Synapse-Runtime für Apache Spark 3.1 wurde am 26. Januar 2023 angekündigt. Gemäß der Synapse-Runtime-Lebenszyklusrichtlinie für Apache Spark, wird die Azure Synapse-Runtime für Apache Spark 3.1 ab dem 26. Januar 2024 eingestellt und deaktiviert. Nach dem EOL-Datum sind die zurückgezogenen Runtimes für neue Spark-Pools nicht verfügbar und vorhandene Workflows können nicht ausgeführt werden. Metadaten bleiben vorübergehend im Synapse-Arbeitsbereich. Weitere Informationen: Azure Synapse Rundtime für Apache Spark 3.1 (EOLA). Damit Ihr Synapse Link für Dataverse mit Export in das Delta-Lake-Format ein Upgrade auf Spark 3.3 durchführt, nehmen Sie ein direktes Upgrade für Ihre vorhandenen Profile durch. Weitere Informationen: Direktes Upgrade auf Apache Spark 3.3 mit Delta Lake 2.2
  • Ab dem 4. Januar 2024 wird bei der ersten Erstellung der Verknüpfung nur noch der Spark-Pool der Version 3.3 unterstützt.

Hinweis

Der Azure Synapse Link-Status in Power Apps (make.powerapps.com) spiegelt den Delta-Lake-Konvertierungsstatus wider:

  • Count zeigt die Gesamtanzahl der Datensätze in der Delta-Lake-Tabelle an.
  • Last synchronized on Datetime stellt den Zeitstempel der letzten erfolgreichen Konvertierung dar.
  • Sync status wird als aktiv angezeigt, sobald die Datensynchronisierung und die Delta-Lake-Konvertierung abgeschlossen sind, was bedeutet, dass die Daten zur Nutzung bereit sind.

Was ist Delta Lake?

Delta Lake ist ein Open-Source-Projekt, das den Aufbau einer Lakehouse-Architektur auf Data Lakes ermöglicht. Delta Lake bietet zusätzlich zu bestehenden Data Lakes ACID-Transaktionen (Atomarität, Konsistenz, Isolation und Dauerhaftigkeit), skalierbare Metadatenverarbeitung und vereinheitlicht Streaming- und Stapelverarbeitungs-Datenverarbeitung. Azure Synapse Analytics ist mit Linux Foundation Delta Lake kompatibel. Die aktuelle Version von Delta Lake, die in Azure Synapse enthalten ist, bietet Sprachunterstützung für Scala, PySpark und .NET. Weitere Informationen: Was ist Delta Lake?. Weitere Informationen erhalten Sie auch im Video Einführung in Delta-Tabellen.

Apache Parquet ist das Basisformat für Delta Lake, mit dem Sie die effizienten Komprimierungs- und Codierungsschemata nutzen können, die für das Format systemeigen sind. Das Parquet-Dateiformat verwendet eine spaltenweise Komprimierung. Dies ist effizient und spart Speicherplatz. Abfragen, die bestimmte Spaltenwerte abrufen, müssen nicht die gesamten Zeilendaten lesen, wodurch die Leistung verbessert wird. Daher benötigt der serverlose SQL-Pool weniger Zeit und weniger Speicheranforderungen zum Lesen der Daten.

Warum sollte ich Delta Lake verwenden?

  • Skalierbarkeit: Delta Lake baut auf der Open-Source-Apache-Lizenz auf, die entwickelt wurde, um Industriestandards für die Verarbeitung umfangreicher Datenverarbeitungs-Workloads zu erfüllen.
  • Zuverlässigkeit: Delta Lake bietet ACID-Transaktionen und gewährleistet selbst bei Ausfällen oder gleichzeitigem Zugriff Datenkonsistenz und -zuverlässigkeit.
  • Leistung: Delta Lake nutzt das spaltenweise Speicherformat von Parquet und bietet bessere Komprimierungs- und Codierungstechniken, die im Vergleich zu CSV-Abfragedateien zu einer verbesserten Abfrageleistung führen können.
  • Kostengünstig: Das Dateiformat Delta Lake ist eine hochkomprimierte Datenspeichertechnologie, die Unternehmen erhebliche potenzielle Speichereinsparungen bietet. Dieses Format wurde speziell entwickelt, um die Datenverarbeitung zu optimieren und möglicherweise die Gesamtmenge der verarbeiteten Daten oder die für On-Demand-Computing erforderliche Laufzeit zu reduzieren.
  • Einhaltung des Datenschutzes: Delta Lake mit Azure Synapse Link bietet Tools und Funktionen, einschließlich vorläufigem und endgültigem Löschen, um verschiedene Datenschutzbestimmungen, einschließlich der Datenschutz-Grundverordnung (DSGVO), einzuhalten.

Beim Einrichten eines Azure Synapse Link for Dataverse können Sie das Feature Nach Delta Lake exportieren aktivieren und eine Verbindung mit einem Synapse-Arbeitsbereich und einem Spark-Pool herstellen. Azure Synapse Link exportiert die ausgewählten Dataverse Tabellen im CSV-Format in festgelegten Zeitintervallen und verarbeitet sie über einen Spark-Job zur Delta Lake-Konvertierung. Nach Abschluss dieses Konvertierungsprozesses werden die CSV-Daten zwecks Speicherplatzeinsparung bereinigt. Darüber hinaus ist eine Reihe von Wartungsaufträgen geplant, die täglich ausgeführt werden und automatisch Komprimierungs- und Bereinigungsprozesse durchführen, um Datendateien zusammenzuführen und zu bereinigen, um die Speicherung weiter zu optimieren und die Abfrageleistung zu verbessern.

Anforderungen

  • Dataverse: Sie müssen über die Sicherheitsrolle Dataverse Systemadministrator verfügen. Darüber hinaus muss für Tabellen, die Sie über Azure Synapse Link exportieren möchten, die Eigenschaft Änderungen verfolgen aktiviert sein. Weitere Informationen: Erweiterte Optionen
  • Azure Data Lake Storage Gen2: Sie brauchen ein Azure Data Lake Storage Gen2-Konto und müssen als Besitzer und Storage-Blob-Datenmitwirkender Zugriff haben. Ihr Speicherkonto muss Hierarchischer Namespace und Öffentlicher Netzwerkzugriff sowohl für die Ersteinrichtung als auch für die Deltasynchronisierung aktivieren. Speicherkontoschlüsselzugriff zulassen ist nur für die Ersteinrichtung erforderlich.
  • Synapse Arbeitsbereich: Sie müssen über einen Synapse Arbeitsbereich und die Besitzer Rolle in der Zugriffssteuerung (IAM) und die Synapse Administrator Rolle Zugriff innerhalb des Synapse Studios haben. Der Synapse-Arbeitsbereich muss sich in derselben Region befinden wie Ihr Azure Data Lake Storage Gen2-Konto. Das Speicherkonto muss als verknüpfter Dienst innerhalb von Synapse Studio hinzugefügt werden. Um einen Synapse-Arbeitsbereich zu erstellen, gehen Sie zu Einen Synapse-Arbeitsbereich erstellen.
  • Ein Apache Spark Pool im verbundenen Azure Synapse Arbeitsbereich mit Apache Spark Version 3.3 unter Verwendung dieser empfohlenen Spark Pool-Konfiguration. Informationen darüber, wie Sie eine Lösung mit einem Spark Pool erstellen, finden Sie unter Neuen Apache Spark Pool erstellen.
  • Für die Verwendung dieses Features ist mindestens die Microsoft Dynamics 365-Version 9.2.22082 erforderlich. Weitere Informationen: Updates für den Vorabzugang abonnieren

Diese Konfiguration kann als Bootstrap-Schritt für durchschnittliche Anwendungsfälle betrachtet werden.

  • Knotengröße: klein (4 virtuelle Kerne/32 GB)
  • Autoskalierung: Aktiviert
  • Anzahl der Knoten: 5 bis 10
  • Automatisches Anhalten: Aktiviert
  • Leerlauf in Minuten: 5
  • Apache Spark: 3.3
  • Ausführende dynamisch zuweisen: Aktiviert
  • Standardanzahl der Ausführenden: 1 bis 9

Wichtig

Verwenden Sie den Spark-Pool ausschließlich für Delta Lake-Konversationsvorgänge mit Synapse verknüpfen für Dataverse. Um optimale Zuverlässigkeit und Leistung zu erzielen, vermeiden Sie die Ausführung anderer Spark-Jobs im selben Spark-Pool.

Dataverse mit dem Synapse-Arbeitsbereich verbindung und Daten im Delta Lake-Format exportieren

  1. Melden Sie sich in Power Apps an und wählen Sie die gewünschte Umgebung aus.

  2. Wählen Sie im linken Navigationsbereich Azure Synapse Link aus. Wenn sich das Element nicht im linken Seitenbereich befindet, wählen Sie …Mehr und dann das gewünschte Element aus.

  3. Wählen Sie auf der Befehlsleiste + Neuer Link

  4. Wählen Sie Mit Ihrem Azure Synapse Analytics-Arbeitsbereich verbinden und dann Abonnement, Ressourcengruppe und Arbeitsbereichsname aus.

  5. Wählen Sie Spark-Pool zur Verarbeitung verwenden und wählen Sie dann den vorab erstellten Spark-Pool und das Speicherkonto aus. Azure Synapse Link for Dataverse Konfiguration, die einen Spark-Pool enthält.

  6. Wählen Sie Weiter aus.

  7. Fügen Sie die Tabellen hinzu, die Sie exportieren möchten, und wählen Sie dann Erweitert aus.

  8. Wählen Sie andernfalls Erweiterte Konfigurationseinstellungen anzeigen aus und geben Sie den Zeitraum in Minuten ein, wie oft die inkrementellen Updates erfasst werden sollen.

  9. Wählen Sie Save (Speichern).

  1. Wählen Sie den gewünschten Azure Synapse Link und dann den Zum Azure Synapse Analytics-Arbeitsbereich wechseln in der Befehlszeile aus.
  2. Wählen Sie Überwachen > Apache Spark Anwendungen. Weitere Informationen: Verwenden Sie Synapse Studio, um Ihre Apache Spark Anwendungen zu überwachen

Anzeigen Ihrer Daten aus dem Synapse-Arbeitsbereich

  1. Wählen Sie den gewünschten Azure Synapse Link und dann den Zum Azure Synapse Analytics-Arbeitsbereich wechseln in der Befehlszeile aus.
  2. Erweitern Sie Lake-Datenbanken im linken Bereich, wählen Sie dataverse-environmentNameorganizationUniqueName aus und erweitern Sie dann Tabellen. Alle Parquet-Tabellen werden aufgelistet und stehen für die Analyse mit der Namenskonvention DataverseTableName zur Verfügung. (Nicht partitionierte Tabelle).

Hinweis

Verwenden Sie keine Tabellen mit der Namenskonvention _partitioned. Wenn Sie Delta Parquet als Format wählen, werden Tabellen mit der Namenskonvention _partition als Staging-Tabellen verwendet und entfernt, nachdem sie vom System verwendet wurden.

Anzeigen Ihrer Daten aus Azure Data Lake Storage Gen2

  1. Wählen Sie den gewünschten Azure Synapse Link und dann Zu Azure Data Lake wechseln in der Befehlsleiste aus.
  2. Wählen Sie die Container unter Datenspeicher aus.
  3. Wählen Sie dataverse-environmentName-organizationUniqueName aus. Alle Parquet-Dateien werden im Ordner deltalake gespeichert.

Direktes Upgrade auf Apache Spark 3.3 mit Delta Lake 2.2

Anforderungen

  1. Sie müssen über ein bestehendes Azure Synapse Link for Dataverse-Delta-Lake-Profil, das mit einer Synapse Spark-Version 3.1 ausgeführt wird.
  2. Sie müssen einen neuen Synapse Spark-Pool mit Spark Version 3.3 erstellen und dabei die gleiche oder eine höhere Knotenhardwarekonfiguration innerhalb desselben Synapse-Arbeitsbereichs verwenden. Informationen darüber, wie Sie eine Lösung mit einem Spark Pool erstellen, finden Sie unter Neuen Apache Spark Pool erstellen. Dieser Spark-Pool sollte unabhängig vom aktuellen 3.1-Pool erstellt werden.

Direktes Upgrade auf Spark 3.3:

  1. Melden Sie sich bei Power Apps an und wählen Sie Ihre bevorzugte Umgebung aus.
  2. Wählen Sie im linken Navigationsbereich Azure Synapse Link aus. Wenn sich das Element nicht im linken Navigationsbereich befindet, wählen Sie …Mehr und dann das gewünschte Element aus.
  3. Öffnen Sie das Azure Synapse Link-Profil und wählen Sie dann Upgrade auf Apache Spark 3.3 mit Delta Lake 2.2 aus.
  4. Wählen Sie den verfügbaren Spark-Pool aus der Liste und dann Aktualisieren aus.

Hinweis

Das Upgrade des Spark-Pools erfolgt nur, wenn ein neuer Spark-Auftrag für die Delta Lake-Konvertierung ausgelöst wird. Stellen Sie sicher, dass Sie nach der Auswahl von Aktualisieren mindestens eine Datenänderung vorgenommen haben.

Siehe auch

Was ist Azure Synapse Link for Dataverse?