Eine nahezu Echtzeit-, schreibgeschützte Replikation einer Azure SQL Database in Fabric erstellen, ohne die Quelle zu beeinträchtigen.
→Verwenden Sie Fabric Mirroring für Azure SQL Database.
Warum: Mirroring bietet eine latenzarme, kontinuierliche Replikation von Daten in OneLake als Delta-Tabellen, ideal für Echtzeit-Analysen ohne ETL-Entwicklung.
Einen Datensatz mit einem anderen Arbeitsbereich teilen oder auf externe Daten zugreifen, ohne eine Kopie zu erstellen.
→Erstellen Sie einen Shortcut, der auf die Quell-Lakehouse-Tabelle oder den externen Datenspeicherort verweist.
Warum: Shortcuts fungieren als symbolische Links, die eine einheitliche Ansicht der Daten in OneLake bieten und gleichzeitig Datenredundanz, Speicherkosten und Synchronisierungsprobleme vermeiden.
Hochgeschwindigkeits-Streaming-Daten mit historischen Batch-Daten für eine vereinheitlichte Analyse kombinieren.
→Verwenden Sie Eventstream für die Echtzeit-Erfassung und ein Lakehouse mit Delta Lake-Tabellen für die vereinheitlichte Speicherung.
Warum: Eventstream verwaltet den Streaming-Pfad, während die ACID-Eigenschaften von Delta Lake es ermöglichen, sowohl als Ziel für Streaming-Anhängungen als auch für Batch-Updates zu dienen.
Sowohl T-SQL-basierte Analyse als auch Python-basierte Data Science auf denselben Lakehouse-Daten ermöglichen.
→Nutzen Sie den automatisch generierten SQL-Analyse-Endpunkt für das Lakehouse.
Warum: Fabric bietet Dual-Engine-Zugriff auf dieselben Delta-Tabellen: einen SQL-Endpunkt für T-SQL-Abfragen und die Spark-Engine für Notebooks, ohne Datenredundanz.
Daten von einer lokalen Datenquelle (z. B. Oracle, SQL Server) in Fabric aufnehmen.
→Ein lokales Datengateway installieren und konfigurieren.
Warum: Das Gateway fungiert als sichere Brücke, die Daten zwischen dem lokalen Netzwerk und dem Fabric-Cloud-Dienst weiterleitet, ohne die Quelle dem Internet preiszugeben.
Neue Dateien automatisch verarbeiten, sobald sie in Azure Blob Storage eintreffen.
→Verwenden Sie einen Storage Event Trigger für die Datenpipeline, der so konfiguriert ist, dass er bei Blob-Erstellungsereignissen ausgelöst wird.
Warum: Ereignisgesteuerte Trigger bieten eine geringere Latenz und sind effizienter als geplantes Polling, das Daten übersehen oder unnötig ausgeführt werden kann.
Logik für Slowly Changing Dimension Type 2 implementieren oder Change Data Capture (CDC)-Streams verarbeiten.
→Verwenden Sie die Delta Lake MERGE-Operation mit `WHEN MATCHED` und `WHEN NOT MATCHED` Klauseln.
Warum: MERGE bietet atomare Upsert-Funktionen (Update/Insert/Delete), die die grundlegende Operation zur Pflege historischer Datensätze in SCD2-Mustern darstellen.
Eine DataFrame-Spalte, die verschachtelte Arrays von Objekten enthält, in separate Zeilen umwandeln.
→Wenden Sie die Funktion `explode()` auf die Array-Spalte in einem PySpark-Notebook an.
Warum: `explode()` ist die Standard-Spark-Funktion zum Entschachteln von Arrays, die für jedes Element im Array eine neue Zeile erstellt.
Spät eintreffende Daten in einer zustandsbehafteten Streaming-Aggregation (z. B. fensterbasierte Zählungen) verarbeiten.
→Konfigurieren Sie ein Watermark auf der Ereigniszeitspalte in der Spark Structured Streaming-Abfrage.
Warum: Watermarking definiert einen Zeitschwellenwert, wie lange die Engine auf verspätete Daten wartet, verhindert ein unbegrenztes Wachstum des Zustands und gewährleistet gleichzeitig die Korrektheit.
Einen inkrementellen Datenimport von einem Quellsystem durchführen, das eine Zeitstempelspalte, aber keine CDC besitzt.
→Ein High-Watermark-Muster implementieren. Speichern Sie den maximalen Zeitstempel des letzten Laufs und verwenden Sie diesen, um die Quelle im nächsten Lauf zu filtern.
Warum: Dies ist ein effizientes und gängiges Muster, um nur neue oder aktualisierte Datensätze zu extrahieren, ohne den Overhead vollständiger Tabellenscans oder die Notwendigkeit formaler CDC.
Eine Pipeline-Aktivität schlägt aufgrund vorübergehender Netzwerkprobleme oder Quellsystemlast intermittierend fehl.
→Konfigurieren Sie die Wiederholungsrichtlinie der Aktivität mit einer bestimmten Anzahl und einem exponentiellen Backoff-Intervall.
Warum: Baut Resilienz in die Pipeline ein, indem fehlgeschlagene Operationen automatisch wiederholt werden, was oft vorübergehende Probleme ohne manuelles Eingreifen löst.
Große Mengen an Telemetrie- oder Protokolldaten mit geringer Latenz für Echtzeit-Explorationsanalysen aufnehmen und abfragen.
→Daten in ein Eventhouse aufnehmen und diese mit Kusto Query Language (KQL) abfragen.
Warum: Eventhouse (aufbauend auf Azure Data Explorer) und KQL sind speziell für Hochleistungs-Zeitreihen- und Log-Analysen konzipiert.
Eine einzige, wiederverwendbare Pipeline erstellen, um Dutzende von Tabellen mit derselben Transformationslogik zu laden.
→Verwenden Sie einen metadatenbasierten Ansatz. Speichern Sie Quell-/Zielinformationen in einer Steuertabelle und verwenden Sie eine ForEach-Aktivität, um zu iterieren und Parameter an eine generische untergeordnete Pipeline zu übergeben.
Warum: Dieses Muster ist hochgradig skalierbar und wartbar, wodurch die Duplizierung und der Verwaltungsaufwand beim Erstellen separater Pipelines für jede Tabelle vermieden werden.
Die Leistung eines Dataflow Gen2 optimieren, der Daten aus einer relationalen Datenbank wie SQL Server bezieht.
→Transformationen entwerfen, die gefaltet werden können. Überprüfen Sie den Query Folding-Status im Power Query-Editor.
Warum: Query Folding verschiebt die Transformationslogik auf die Quelldatenbank-Engine, was deutlich performanter ist, als alle Daten zur Transformation in die Spark-Engine zu ziehen.
Eine Tabelle abfragen, wie sie zu einem bestimmten Zeitpunkt in der Vergangenheit existierte, für eine Prüfung oder zur Wiederherstellung nach einer versehentlichen Aktualisierung.
→Verwenden Sie Delta Lake's Zeitreisefunktion mit `VERSION AS OF` oder `TIMESTAMP AS OF` in der Abfrage.
Warum: Delta Lake versioniert nativ jede Transaktion und ermöglicht so Point-in-Time-Abfragen ohne manuelle Snapshots oder Backups.