Auslösen von Aufträgen beim Eintreffen neuer Dateien

Sie können Dateieingangstrigger verwenden, um eine Ausführung Ihres Azure Databricks-Auftrags auszulösen, wenn neue Dateien an einem externen Speicherort wie beispielsweise Amazon S3, Azure Storage oder Google Cloud Storage eintreffen. Sie können dieses Feature verwenden, wenn ein geplanter Auftrag möglicherweise ineffizient ist, da neue Daten nach einem unregelmäßigen Zeitplan eingehen.

Dateieingangstrigger bemühen sich, im Minutentakt auf neue Dateien zu überprüfen, obwohl dies durch die Leistung des zugrunde liegenden Cloudspeichers beeinträchtigt werden kann. Dateieingangstrigger verursachen keine zusätzlichen Kosten außer Cloudanbieterkosten, die mit dem Auflisten von Dateien am Speicherort verbunden sind.

Ein Dateieingangstrigger kann so konfiguriert werden, dass der Stamm eines externen Unity Catalog-Speicherorts oder -Volumes oder ein Unterpfad eines externen Speicherorts oder Volumes überwacht wird. Für das Unity Catalog-Stammvolume /Volumes/mycatalog/myschema/myvolume/ sind beispielsweise die folgenden Pfade für einen Dateieingangstrigger zulässig:

/Volumes/mycatalog/myschema/myvolume/
/Volumes/mycatalog/myschema/myvolume/mydirectory/

Anforderungen

Für die Verwendung von Dateiankunftstriggern sind folgende Voraussetzungen erforderlich:

Begrenzungen

  • Maximal fünfzig Aufträge können mit einem Dateiankunftsauslöser in einem Azure Databricks-Arbeitsbereich konfiguriert werden.
  • Ein Speicherort, der für einen Dateieingangstrigger konfiguriert ist, darf nur bis zu 10.000 Dateien enthalten. Speicherorte mit mehr Dateien können nicht auf neue Dateieingänge überwacht werden. Wenn der konfigurierte Speicherort ein Unterpfad eines externen Unity Catalog-Speicherorts oder -Volumes ist, gilt der Grenzwert von 10.000 Dateien für den Unterpfad und nicht für das Stammverzeichnis des Speicherorts. Der Stamm des Speicherorts kann z. B. mehr als 10.000 Dateien in seinen Unterverzeichnissen enthalten, das konfigurierte Unterverzeichnis darf jedoch den Grenzwert von 10.000 Dateien nicht überschreiten.
  • Der Pfad, der für einen Dateieingangstrigger verwendet wird, darf keine externen Tabellen oder verwalteten Speicherorte von Katalogen und Schemas enthalten.

Hinzufügen eines Dateiankunftstriggers

Zum Hinzufügen eines Dateieingangstriggers zu einem Auftrag:

  1. Klicken Sie auf der Seitenleiste auf Workflows.
  2. Klicken Sie in der Spalte Name auf der Registerkarte Aufträge auf den Auftragsnamen.
  3. Im Bereich Auftragsdetails rechts klicken Sie auf Trigger hinzufügen.
  4. Wählen Sie im Triggertyp Dateiankunft aus.
  5. Geben Sie unter Speicherort die URL des Stammverzeichnisses oder eines Unterpfads eines externen Unity Catalog-Speicherorts oder das Stammverzeichnis oder einen Unterpfad eines zu überwachenden Unity Catalog-Volumes ein.
  6. (Optional) Konfigurieren Sie erweiterte Einstellungen:
    • Minimale Zeit zwischen Triggern in Sekunden: Die mindeste Zeit, bis eine Ausführung nach Abschluss einer vorherigen Ausführung ausgelöst wird. Dateien, die in diesem Zeitraum eingehen, lösen eine Ausführung erst nach Ablauf der Wartezeit aus. Verwenden Sie diese Einstellung, um die Häufigkeit der Ausführungserstellung zu steuern.
    • Warten Sie nach der letzten Änderung in Sekunden: Die Zeit, bis eine Ausführung nach der Dateiankunft ausgelöst wird. Ein anderer Dateieingang innerhalb dieses Zeitraums setzt den Timer zurück. Diese Einstellung kann verwendet werden, wenn Dateien in Batches eingehen, und der gesamte Batch muss verarbeitet werden, nachdem alle Dateien eingegangen sind.
  7. Klicken Sie auf Verbindung testen, um die Konfiguration zu überprüfen.
  8. Klicken Sie auf Speichern.

Empfangen von Benachrichtigungen über fehlerhafte Dateieingangstrigger

Um benachrichtigt zu werden, wenn ein Dateieingangstrigger nicht ausgewertet werden kann, konfigurieren Sie E-Mail- oder Systemzielbenachrichtigungen bei Auftragsfehlern. Weitere Informationen finden Sie unter Hinzufügen von E-Mail- und Systembenachrichtigungen für Auftragsereignisse.