Delen via


Taken continu uitvoeren

Gebruik de doorlopende modus om workloads te plannen om continu uit te voeren. Databricks raadt aan continue modus te gebruiken voor always-on streamingworkloads.

Continue modus vervangt verouderde aanbevelingen voor Structured Streaming-workloads om taken te configureren met een onbeperkt beleid voor opnieuw proberen en maximaal één gelijktijdige uitvoering.

Belangrijk

Serverloze rekenkracht voor taken biedt geen ondersteuning voor continue modus.

Taak configureren voor uitvoering in continue modus

Ga als volgt te werk om een taak te configureren die moet worden uitgevoerd in de continue modus:

  1. Klik in de zijbalk op Werkstromen.
  2. Klik op de taaknaam in de kolom Naam op het tabblad Taken .
  3. Klik op Trigger toevoegen in het deelvenster Taakdetails , selecteer Doorlopend in triggertype en klik op Opslaan.

Als u een doorlopende taak wilt stoppen, klikt u op de knop Onderbreken . Klik op Hervatten om de taak opnieuw te starten in continue modus.

Notitie

  • Er kan slechts één actief exemplaar van een doorlopende taak zijn.
  • Er bestaat een vertraging tussen een uitvoeringsafwerking en een nieuwe uitvoering die wordt gestart. Deze vertraging moet minder dan 60 seconden duren.
  • U kunt taakafhankelijkheden met een doorlopende taak niet gebruiken.
  • U kunt opnieuwproberenbeleid niet gebruiken in een doorlopende taak. In plaats daarvan worden doorlopende taken geconfigureerd op taak- en taakniveau om het automatisch opnieuw te proberen met behulp van een exponentieel uitstel algoritme.
  • Selecteer Nu uitvoeren om een nieuwe taakuitvoering te activeren voor een onderbroken doorlopende taak.
  • Als u uw doorlopende taak een nieuwe configuratie wilt laten ophalen, annuleert u de bestaande uitvoering. Er wordt automatisch een nieuwe uitvoering gestart. U kunt ook op Opnieuw opstarten klikken om de taakuitvoering opnieuw te starten met de bijgewerkte configuratie.

Hoe worden fouten verwerkt voor doorlopende taken?

Fouten op taak- en werk niveau worden beheerd met behulp van een exponentiële terugval algoritme.

Mislukte taken worden opnieuw geprobeerd met een exponentieel toenemende vertraging totdat het maximum aantal toegestane nieuwe pogingen is bereikt. Nadat de maximum aantal nieuwe pogingen is bereikt, wordt de uitvoering geannuleerd en wordt een nieuwe uitvoering geactiveerd.

Opeenvolgende fouten op taakniveau worden ook beheerd met exponentieel uitstel, waardoor continue taken kunnen worden uitgevoerd zonder te onderbreken en terug te keren naar een goede status wanneer herstelbare fouten optreden.

Wanneer een doorlopende taak de toegestane drempelwaarde voor opeenvolgende fouten overschrijdt, wordt in het volgende beschreven hoe volgende taakuitvoeringen worden beheerd:

  1. De taak wordt opnieuw gestart na een periode voor opnieuw proberen die door het systeem is ingesteld.
  2. Als de volgende taakuitvoering mislukt, wordt de periode voor opnieuw proberen verhoogd en wordt de taak na deze nieuwe periode opnieuw gestart.
    1. Voor elke volgende mislukte taakuitvoering wordt de periode voor opnieuw proberen verhoogd tot een maximale periode voor opnieuw proberen die door het systeem is ingesteld. Nadat de maximale periode voor nieuwe pogingen is bereikt, blijft de taak opnieuw proberen met behulp van de maximale periode voor opnieuw proberen. Er is geen limiet voor het aantal nieuwe pogingen voor een doorlopende taak.
    2. Als de taakuitvoering is voltooid en een nieuwe uitvoering wordt gestart, of als de uitvoering een drempelwaarde zonder fouten overschrijdt, wordt de taak als in orde beschouwd en wordt de back-offreeks opnieuw ingesteld.

U kunt een doorlopende taak opnieuw starten in de status Exponentieel uitstel in de gebruikersinterface taken of door de taak-id door te geven aan de POST/api/2.1/jobs/run-now-aanvraag in de Taken 2.1-API of de POST /api/2.0/jobs/run-now-aanvraag in de Taken 2.0-API.