Dela via


Köra en uppdatering på en DLT-pipeline

I den här artikeln beskrivs pipelineuppdateringar och information om hur du utlöser en uppdatering.

Vad är en pipeline-uppdatering?

När du har skapat en pipeline och är redo att köra den startar du en uppdatering. En pipelineuppdatering gör följande:

  • Startar ett kluster med rätt konfiguration.
  • Identifierar alla definierade tabeller och vyer och söker efter eventuella analysfel, till exempel ogiltiga kolumnnamn, saknade beroenden och syntaxfel.
  • Skapar eller uppdaterar tabeller och vyer med de senaste tillgängliga data.

Med hjälp av en verifiera uppdateringkan du söka efter problem i en pipelines källkod utan att vänta på att tabeller ska skapas eller uppdateras. Den här funktionen är användbar när du utvecklar eller testar pipelines eftersom du snabbt kan hitta och åtgärda fel i pipelinen, till exempel felaktiga tabell- eller kolumnnamn.

Hur utlöses pipelineuppdateringar?

Använd något av följande alternativ för att starta pipelineuppdateringar:

Uppdateringsutlösare Detaljer
Handbok Du kan utlösa pipelineuppdateringar manuellt från pipelinens användargränssnitt, pipelinelistan eller en notebook-fil som är kopplad till en pipeline. Se Utlösa en pipelineuppdatering manuellt och Utveckla och felsöka DLT-pipelines i anteckningsböcker.
Schemalagd Du kan schemalägga uppdateringar för pipelines med hjälp av arbetsuppgifter. Se DLT-pipelineuppgift för jobb.
Programmatisk Du kan programmatiskt utlösa uppdateringar med hjälp av verktyg, API:er och CLI:er från tredje part. Se Köra en DLT-pipeline i ett arbetsflöde och Pipeline API.

utlöser en pipelineuppdatering manuellt

Använd något av följande alternativ för att manuellt utlösa en pipelineuppdatering:

  • Klicka på DLT-startikonen -knappen på pipeline-detaljsidan.
  • I pipelinelistan klickar du på högerpilikonen i kolumnen Actions.

Notis

Standardbeteendet för manuellt utlösta pipelineuppdateringar är att uppdatera alla datauppsättningar som definierats i pipelinen.

pipeline uppdateringssemantik

I följande tabell beskrivs beteendet för materialiserade vyer och strömmande tabeller för standarduppdatering och fullständig uppdatering:

Uppdateringstyp Semantik för materialiserad vy Semantik för strömmande tabell
Uppdatera (standard) Uppdaterar resultaten för att återspegla de aktuella resultaten för den definierande frågan. Bearbetar nya poster via logik som definierats i strömmande tabeller och flöden.
Fullständig uppdatering Uppdaterar resultaten för att återspegla de aktuella resultaten för den definierande frågan. Rensar data i strömningstabeller, rensar tillståndsinformation (kontrollpunkter) från flöden och processar om alla poster från datakällan.

Som standardinställning uppdateras alla materialiserade vyer och strömmande tabeller i en pipeline vid varje uppdatering. Du kan också utelämna tabeller från uppdateringar med hjälp av följande funktioner:

Båda dessa funktioner stöder standarduppdateringssemantik eller fullständig uppdatering. Du kan också använda dialogrutan Välj tabeller för uppdatering för att exkludera ytterligare tabeller när du kör en uppdatering för misslyckade tabeller.

Ska jag använda en fullständig uppdatering?

Databricks rekommenderar att du endast kör fullständiga uppdateringar när det behövs. En fullständig uppdatering ombearbetar alltid alla poster från de angivna datakällorna via logiken som definierar datauppsättningen. Tiden och resurserna för att slutföra en fullständig uppdatering korreleras med storleken på källdata.

Materialiserade vyer returnerar samma resultat oavsett om standard eller fullständig uppdatering används. Om du använder en fullständig uppdatering med strömmande tabeller återställs all tillståndsbearbetning och kontrollpunktsinformation och kan resultera i borttagna poster om indata inte längre är tillgängliga.

Databricks rekommenderar endast fullständig uppdatering när indatakällorna innehåller de data som behövs för att återskapa det önskade tillståndet för tabellen eller vyn. Tänk på följande scenarier där indatakällans data inte längre är tillgängliga och resultatet av att köra en fullständig uppdatering:

Datakälla Orsaksindata saknas Utfall av fullständig uppdatering
Kafka Kort kvarhållningströskel Poster som inte längre finns i Kafka-källan tas bort från måltabellen.
Filer i objektlagring Livscykelpolicy Datafiler som inte längre finns i källkatalogen tas bort från måltabellen.
Poster i en tabell Tas bort för kompatibilitet Endast poster som finns i källtabellen bearbetas.

Om du vill förhindra att fullständiga uppdateringar körs i en tabell eller vy anger du tabellegenskapen pipelines.reset.allowed till false. Se DLT-tabellens egenskaper. Du kan också använda ett tilläggsflöde för att lägga till data i en befintlig strömmande tabell utan att kräva en fullständig uppdatering.

Starta en pipelineuppdatering för valda tabeller

Du kan också ombearbeta data för endast valda tabeller i pipelinen. Under utvecklingen ändrar du till exempel bara en enskild tabell och vill minska testtiden, eller så misslyckas en pipelineuppdatering och du vill bara uppdatera de misslyckade tabellerna.

Not

Du kan använda selektiv uppdatering med endast utlösta pipelines.

Starta en uppdatering som endast uppdaterar markerade tabeller på sidan Pipeline-information:

  1. Klicka på Välj tabeller för uppdatering. Dialogrutan Välj tabeller för uppdatering visas.

    Om du inte ser knappen Välj tabeller för uppdatering kontrollerar du att Pipeline-information sidan visar den senaste uppdateringen och att uppdateringen är klar. Om en DAG inte visas för den senaste uppdateringen, till exempel på grund av att uppdateringen misslyckades, visas inte knappen Välj tabeller för uppdatering.

  2. Om du vill välja de tabeller som ska uppdateras klickar du på varje tabell. De markerade tabellerna är märkta. Om du vill ta bort en tabell från uppdateringen klickar du på tabellen igen.

  3. Klicka på Uppdatera markering.

    Not

    Knappen Uppdatera markering visar antalet valda tabeller inom parenteser.

Om du vill bearbeta data som redan har matats in för de valda tabellerna klickar du på Blue Down Caret bredvid knappen Uppdatera markering och klickar på fullständig uppdateringsmarkering.

Starta en pipelineuppdatering för misslyckade tabeller

Om en pipelineuppdatering misslyckas på grund av fel i en eller flera tabeller i pipelinediagrammet kan du starta en uppdatering av endast misslyckade tabeller och eventuella underordnade beroenden.

Not

Undantagna tabeller uppdateras inte, även om de är beroende av en misslyckad tabell.

För att uppdatera felaktiga tabeller klickar du på Uppdatera felaktiga tabellerpå sidan Pipeline-information.

Så här uppdaterar du endast markerade misslyckade tabeller:

  1. Klicka på knappen ned bredvid knappen Återställ misslyckade tabeller och klicka på Välj tabeller för uppdatering. Dialogrutan Välj tabeller för uppdatering visas.

  2. Om du vill välja de tabeller som ska uppdateras klickar du på varje tabell. De valda tabellerna är markerade och märkta. Om du vill ta bort en tabell från uppdateringen klickar du på tabellen igen.

  3. Klicka på Uppdatera markering.

    Not

    Knappen Uppdatera markering visar antalet valda tabeller inom parenteser.

Om du vill bearbeta data som redan har matats in för de valda tabellerna, klickar du på Blue Down Caret bredvid knappen Uppdatera markering och klickar på Fullständig uppdatering.

Kontrollera om det finns fel i en pipeline utan att vänta på att tabellerna ska uppdateras

Viktig

Uppdateringsfunktionen för DLT Validate finns i offentlig förhandsversion.

Om du vill kontrollera om en pipelines källkod är giltig utan att köra en fullständig uppdatering använder du Verifiera. En Validate uppdatering löser definitionerna av datamängder och flöden som definierats i pipelinen men materialiserar eller publicerar inga datamängder. Fel som påträffas under valideringen, till exempel felaktiga tabell- eller kolumnnamn, rapporteras i användargränssnittet.

Om du vill köra en Validate uppdatering klickar du på Blue Down Caret på sidan med pipelineinformation bredvid Starta och klickar på Verifiera.

När Validate uppdateringen är klar visar händelseloggen händelser som endast är relaterade till den Validate uppdateringen och inga mått visas i DAG. Om fel hittas finns information i händelseloggen.

Du kan bara se resultat för den senaste uppdateringen Validate. Om Validate-uppdateringen var den senaste körda uppdateringen kan du se resultatet genom att välja den i uppdateringshistoriken. Om en annan uppdatering körs efter Validate uppdateringen är resultatet inte längre tillgängligt i användargränssnittet.

utvecklings- och produktionslägen

Du kan optimera pipelinekörningen genom att växla mellan utvecklings- och produktionslägen. Använd knapparna DLT Environment Toggle Icon i pipelinegränssnittet för att växla mellan dessa två lägen. Som standardinställning körs pipelines i utvecklingsläge.

När du kör din pipeline i utvecklingsläge gör DLT-systemet följande:

  • Återanvänder ett kluster för att undvika omkostnaderna för omstarter. Som standard körs kluster i två timmar när utvecklingsläget är aktiverat. Du kan ändra detta med inställningen pipelines.clusterShutdown.delay i Konfigurera beräkning för en DLT-pipeline.
  • Inaktiverar pipeline-återförsök så att du omedelbart kan identifiera och åtgärda fel.

I produktionsläge gör DLT-systemet följande:

  • Startar om klustret för specifika återställningsbara fel, inklusive minnesläckor och inaktuella autentiseringsuppgifter.
  • Utför igen i händelse av specifika fel, till exempel om det inte gick att starta ett kluster.

Not

Växling mellan utvecklings- och produktionslägen styr endast beteendet för kluster- och pipelinekörning. Lagringsplatser och målscheman i katalogen för publiceringstabeller måste konfigureras som en del av pipelineinställningarna och påverkas inte när du växlar mellan lägen.