Delen via


Taken activeren wanneer nieuwe bestanden binnenkomen

U kunt triggers voor bestandsaankomst gebruiken om een uitvoering van uw Azure Databricks-taak te activeren wanneer nieuwe bestanden binnenkomen op een externe locatie, zoals Amazon S3, Azure Storage of Google Cloud Storage. U kunt deze functie gebruiken wanneer een geplande taak mogelijk inefficiënt is omdat nieuwe gegevens volgens een onregelmatige planning binnenkomen.

Triggers voor bestandsinkomst doen er alles aan om elke minuut te controleren op nieuwe bestanden, hoewel dit kan worden beïnvloed door de prestaties van de onderliggende cloudopslag. Voor triggers voor bestands aankomst worden geen andere kosten in rekening gebracht dan de kosten van de cloudprovider die zijn gekoppeld aan het weergeven van bestanden op de opslaglocatie.

Een trigger voor aankomst van bestanden kan worden geconfigureerd om de hoofdmap van een externe locatie of volume van een Unity Catalog te bewaken, of een subpad van een externe locatie of volume. Voor het hoofdvolume /Volumes/mycatalog/myschema/myvolume/van de Unity-catalogus zijn bijvoorbeeld de volgende geldige paden voor een trigger voor bestands aankomst:

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

Een bestandsinkomsttrigger controleert recursief op nieuwe bestanden in alle submappen van de geconfigureerde locatie. Als u bijvoorbeeld een trigger voor bestands aankomst voor de locatie maakt en deze locatie /Volumes/mycatalog/myschema/myvolume/mydirectory/ de volgende submappen heeft:

/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirA
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirB
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirC/subdirD

De trigger controleert op nieuwe bestanden in mydirectory, subdirA, subdirBen subdirC.subdirC/subdirD

Vereisten

Het volgende is vereist voor het gebruik van triggers voor bestands aankomst:

  • Voor de werkruimte moet Unity Catalog zijn ingeschakeld.
  • U moet een opslaglocatie gebruiken die een Unity Catalog-volume of een externe locatie is die is toegevoegd aan de Unity Catalog-metastore. Zie Een externe locatie maken om cloudopslag te verbinden met Azure Databricks.
  • U moet machtigingen hebben READ voor de opslaglocatie en MACHTIGINGEN VOOR HET BEHEREN van de taak. Zie Taak-ACL's voor meer informatie over taakmachtigingen.

Beperkingen

  • Alleen nieuwe bestandentriggers worden uitgevoerd. Het overschrijven van een bestaand bestand met een bestand met dezelfde naam activeert geen uitvoering.
  • Maximaal vijftig taken kunnen worden geconfigureerd met een trigger voor bestands aankomst in een Azure Databricks-werkruimte.
  • Een opslaglocatie die is geconfigureerd voor een trigger voor bestands aankomst kan maximaal 10.000 bestanden bevatten. Locaties met meer bestanden kunnen niet worden bewaakt voor nieuwe aankomsten van bestanden. Als de geconfigureerde opslaglocatie een subpad is van een externe locatie of volume van Unity Catalog, is de bestandslimiet van 10.000 van toepassing op het subpad en niet op de hoofdmap van de opslaglocatie. De hoofdmap van de opslaglocatie kan bijvoorbeeld meer dan 10.000 bestanden bevatten in de submappen, maar de geconfigureerde submap mag niet groter zijn dan de limiet van 10.000 bestanden.
  • Het pad dat wordt gebruikt voor een trigger voor het binnenkomen van bestanden mag geen externe tabellen of beheerde locaties van catalogi en schema's bevatten.
  • Het pad dat wordt gebruikt voor een trigger voor bestands aankomst kan bijvoorbeeld geen jokertekens bevatten, * of ?.

Een trigger voor het ontvangen van bestanden toevoegen

Een trigger voor bestands aankomst toevoegen aan een taak:

  1. Klik in de zijbalk op Werkstromen.
  2. Klik in de kolom Naam op het tabblad Taken op de taaknaam.
  3. Klik in het deelvenster Taakdetails aan de rechterkant op Trigger toevoegen.
  4. Selecteer in triggertype De aankomst van het bestand.
  5. Voer in de opslaglocatie de URL in van de hoofdmap of een subpad van een externe locatie van een Unity Catalog of het hoofd- of subpad van een Unity Catalog-volume dat moet worden bewaakt.
  6. (Optioneel) Geavanceerde opties configureren:
    • Minimale tijd tussen triggers in seconden: de minimale tijd die moet worden gewacht om een uitvoering te activeren nadat een vorige uitvoering is voltooid. Bestanden die in deze periode binnenkomen, activeren pas een uitvoering nadat de wachttijd is verlopen. Gebruik deze instelling om de frequentie van het maken van de uitvoering te bepalen.
    • Wacht na laatste wijziging in seconden: de tijd die moet worden gewacht om een uitvoering te activeren na aankomst van het bestand. Bij een andere aankomst van het bestand in deze periode wordt de timer opnieuw ingesteld. Deze instelling kan worden gebruikt wanneer bestanden binnenkomen in batches en de hele batch moet worden verwerkt nadat alle bestanden zijn aangekomen.
  7. Klik op Verbinding testen om de configuratie te valideren.
  8. Klik op Opslaan.

Meldingen ontvangen van mislukte triggers voor aankomst van bestanden

Als u een melding wilt ontvangen als een trigger voor het binnenkomen van een bestand niet kan worden geëvalueerd, configureert u e-mail- of systeembestemmingsmeldingen bij taakfouten. Zie E-mail- en systeemmeldingen toevoegen voor taakevenementen.