Anmerkung
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen, dich anzumelden oder die Verzeichnisse zu wechseln.
Der Zugriff auf diese Seite erfordert eine Genehmigung. Du kannst versuchen , die Verzeichnisse zu wechseln.
Autoloader verarbeitet neue Datendateien inkrementell und effizient, sobald sie im Cloudspeicher eingehen, ohne zusätzliche Einrichtung.
Funktionsweise des Autoloaders
Der Autoloader verarbeitet neue Datendateien inkrementell und effizient, sobald sie im Cloudspeicher empfangen werden. Stellt eine strukturierte Streamingquelle namens cloudFiles bereit. Mithilfe eines Eingabeverzeichnispfads im Clouddateispeicher verarbeitet die cloudFiles-Quelle automatisch neue Dateien, sobald diese eingehen. Dabei können auch bereits vorhandene Dateien in diesem Verzeichnis verarbeitet werden. Auto Loader unterstützt sowohl Python als auch SQL in Lakeflow Spark Declarative Pipelines.
Sie können den Autoloader verwenden, um Milliarden von Dateien zu verarbeiten, um eine Tabelle zu migrieren oder abzugleichen. Der Autoloader führt eine Skalierung durch, um die Erfassung von Millionen von Dateien pro Stunde in Quasi-Echtzeit zu unterstützen.
Unterstützte Quellen zum automatischen Laden
Autoloader kann Datendateien aus den folgenden Quellen laden:
Amazon S3 (
s3://)Azure Data Lake Storage (ADLS,
abfss://)Google Cloud Storage (GCS,
gs://)Azure Blob Storage (
wasbs://)Hinweis
Der Legacy-WASB-Treiber (Windows Azure Storage Blob) ist veraltet. ABFS hat zahlreiche Vorteile gegenüber WASB. Weitere Informationen finden Sie in der Azure-Dokumentation zu ABFS. Eine Dokumentation zum Arbeiten mit dem Legacy-WASB-Treiber finden Sie unter Herstellen einer Verbindung mit Azure Blob Storage mit WASB (Legacy).
Databricks File System (DBFS,
dbfs:/).
Der Autoloader kann die Dateiformate JSON, CSV, XML, PARQUET, AVRO, ORC, TEXT und BINARYFILE erfassen.
Wie verfolgt das automatische Laden den Erfassungsfortschritt nach?
Wenn Dateien ermittelt werden, werden ihre Metadaten in einem skalierbaren Schlüssel-Wert-Speicher (RocksDB) am Prüfpunktspeicherort Ihrer Autoloader-Pipeline gespeichert. Dieser Schlüssel-Wert-Speicher stellt sicher, dass Daten genau einmal verarbeitet werden.
Bei Ausfällen kann das automatische Laden durch Informationen, die am Prüfpunktspeicherort gespeichert sind, von dort aus fortgesetzt werden, wo es unterbrochen wurde, und weiterhin Garantien des Typs „Genau einmal“ bieten, wenn Daten in Delta Lake geschrieben werden. Sie müssen keinen Zustand selbst pflegen oder verwalten, um Fehlertoleranz oder genau einmal semantische Semantik zu erzielen.
Inkrementelle Aufnahme mithilfe von Auto Loader mit Lakeflow Spark Declarative Pipelines
Databricks empfiehlt auto Loader in Lakeflow Spark Declarative Pipelines für inkrementelle Datenaufnahme. Lakeflow Spark Declarative Pipelines erweitert die Funktionalität in Apache Spark Structured Streaming und ermöglicht es Ihnen, nur einige Zeilen deklarativen Python- oder SQL-Code zu schreiben, um eine Datenpipeline in Produktionsqualität mit:
- Automatische Skalierung der Computeinfrastruktur für Kosteneinsparungen
- Überprüfung der Datenqualität mit Erwartungen
- Handhabung der automatischen Schemaentwicklung
- Überwachung mit Metriken im Ereignisprotokoll
Sie müssen keinen Schema- oder Prüfpunktstandort bereitstellen, da Lakeflow Spark Declarative Pipelines diese Einstellungen automatisch für Ihre Pipelines verwaltet. Siehe Laden von Daten in Pipelines.
Databricks empfiehlt Auto Loader außerdem immer dann, wenn Sie Apache Spark Structured Streaming zum Erfassen von Daten aus Cloudobjektspeichern verwenden. APIs sind für Python und Scala verfügbar.
Erste Schritte mit Databricks Auto Loader
Lesen Sie die folgenden Artikel, um mit dem Konfigurieren der inkrementellen Datenaufnahme mithilfe von Auto Loader mit Lakeflow Spark Declarative Pipelines zu beginnen:
- Lernprogramm: Erstellen einer ETL-Pipeline mit Lakeflow Spark Declarative Pipelines
- Onboarding von Daten aus Azure Data Lake Storage
Beispiele: allgemeine Muster für das automatische Laden
Beispiele für allgemeine Auto Loader-Muster finden Sie unter Allgemeine Muster zum Laden von Daten.
Konfigurieren von Optionen für den Autoloader
Sie können den Autoloader basierend auf Datenvolumen, Vielfalt und Geschwindigkeit optimieren.
- Schemaerkennung und -entwicklung in Auto Loader konfigurieren
- Konfigurieren des Autoloaders für Produktionsworkloads
Eine vollständige Liste der Optionen für den Autoloader finden Sie unter:
Wenn es zu unerwarteter Leistung kommt, lesen Sie die häufig gestellten Fragen.
Konfigurieren der Dateierkennungsmodi von Autoloader
Autoloader unterstützt zwei Dateierkennungsmodi. Siehe:
- Auto-Loader-Datenströme mit Verzeichnislistenmodus
- Konfiguration der Auto-Loader-Streams im Dateibenachrichtigungsmodus
Vorteile von Auto Loader gegenüber der Verwendung von strukturiertem Streaming direkt auf Dateien
In Apache Spark können Sie Dateien mithilfe von spark.readStream.format(fileFormat).load(directory) inkrementell einlesen. Der Autoloader bietet gegenüber der Dateiquelle die folgenden Vorteile:
- Skalierbarkeit: Der Autoloader ist in der Lage, Milliarden von Dateien effizient zu erkennen. Nachfüllungen können asynchron erfolgen, um keine Rechenressourcen zu verschwenden.
- Leistung: Die Kosten für das Ermitteln von Dateien mit dem Autoloader steigen mit der Anzahl der erfassten Dateien und nicht mit der Anzahl von Verzeichnissen, in denen sich die Dateien befinden können. Siehe Auto Loader-Streams im Verzeichnisauflistungsmodus.
- Unterstützung von Schemarückschluss und -entwicklung: Das automatische Laden kann Schemaabweichungen erkennen, Sie bei Schemaänderungen benachrichtigen und Daten retten, die andernfalls ignoriert worden oder verloren gegangen wären. Siehe Wie funktioniert die Schemaerkennung von Auto Loader?.
- Kosten: Der Autoloader verwendet native Cloud-APIs, um Listen von Dateien abzurufen, die im Speicher vorhanden sind. Darüber hinaus kann der Dateibenachrichtigungsmodus des automatischen Ladens dazu beitragen, Die Cloudkosten weiter zu reduzieren, indem die Verzeichnisauflistung vollständig vermieden wird. Der Autoloader kann automatisch Dateibenachrichtigungsdienste für den Speicher einrichten, um die Dateiermittlung wesentlich kostengünstiger zu gestalten.