Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Med aktiviteten Uppdatera SQL-slutpunkt i Microsoft Fabric-pipelines kan du programmatiskt uppdatera en Lakehouse SQL-slutpunkt som en del av ett orkestrerat arbetsflöde. Den här metoden säkerställer att nedströmskonsumenter, till exempel Power BI-rapporter, notebook-filer eller externa SQL-klienter, ser de senaste data när dataförberedelser eller underhållssteg har slutförts.
Använd den här aktiviteten om du vill att SQL-slutpunkter omedelbart ska återspegla de senaste uppdateringarna utan att behöva använda manuella uppdateringar eller ad hoc-processer. Använd den här aktiviteten när din pipeline:
- Uppdaterar eller underhåller Lakehouse-data (till exempel efter kopieringsjobb, notebook-körning eller Lakehouse-underhållsaktiviteter).
- Kräver att Lakehouse SQL-slutpunkten återspeglar de senaste metadata- och dataändringarna.
- Behöver deterministisk uppdateringstidpunkt innan efterföljande steg, som rapportering, analys eller export.
Förutsättningar
Innan du använder den här aktiviteten kontrollerar du att:
- Ett klientkonto med en aktiv prenumeration. Skapa ett konto kostnadsfritt.
- En arbetsyta med en Lakehouse
- Det finns en SQL-slutpunkt för Lakehouse.
- Pipelineidentiteten (användaren eller tjänstens huvudnamn) har behörighet att uppdatera SQL-slutpunkten.
Lägg till en aktivitet för att uppdatera SQL-slutpunkt i pipelinen i användargränssnittet
Skapa en ny pipeline på din arbetsyta.
Sök efter Uppdatera SQL-slutpunkt i fönstret Pipelineaktiviteter och välj den för att lägga till den i pipelinearbetsytan.
Välj den nya aktiviteten Uppdatera SQL-slutpunkt på arbetsytan om den inte redan är markerad.
Se Allmänna-inställningar vägledning för att konfigurera inställningsfliken Allmänt.
Uppdatera inställningar för SQL-slutpunktsaktivitet
Välj fliken Inställningar för att konfigurera aktiviteten.
Konfigurera anslutningen genom att välja en befintlig anslutning från listrutan Anslutning eller skapa en ny anslutning och ange dess konfigurationsinformation.
Ange arbetsyta som innehåller Lakehouse.
Ange den SQL-slutpunkt som innehåller den materialiserade sjövyn som ska uppdateras. Den här SQL-slutpunkten är Lakehouse vars SQL-slutpunkt du vill uppdatera. SQL-slutpunkten som är associerad med den valda Lakehouse.
Aktivitetsbeteende
När aktivitetskörningen är klar:
Om pop-up-fönstret Utdata visar statusen Lyckades, synkroniserar begäran osynkroniserade data framgångsrikt.
En NotRun-status i popup-fönstret Utdata innebär att uppdateringen av SQL-slutpunkten inte kördes. Det här villkoret innebär vanligtvis att du inte har lagt till nya data sedan den senaste synkroniseringen, så du behövde inte köra dem.
Om popup-fönstret Utdata visar statusen Fel gick något fel.
Anmärkning
Körningen av aktiviteten anger dessa status i popup-fönstret för utdata. Blanda inte ihop dessa statusar med själva aktivitetsstatusen.
Vanliga scenarier
- Uppdaterar SQL-slutpunkten efter att en notebook skriver transformerade data till en Lakehouse.
- Utlöser en SQL-slutpunktsuppdatering när optimerings- eller vakuumåtgärderna har slutförts.
- Se till att rapporter och instrumentpaneler frågar efter det senaste Lakehouse-tillståndet vid väldefinierade punkter i en pipeline.
Varför misslyckas min SQL-slutpunktsuppdatering när underliggande data är låsta?
Aktiviteten Uppdatera SQL-slutpunkt kan misslyckas tillfälligt när andra processer aktivt uppdaterar underliggande Lakehouse-data. Dessa processer omfattar inmatningspipelines, notebook-filer eller samtidiga skrivåtgärder.
Det här felet inträffar eftersom SQL-slutpunkten måste hämta interna lås för att slutföra uppdateringen. Om en annan åtgärd låser data överskrids tidsgränsen för begäran eller returnerar ett fel.
Det här beteendet förväntas baserat på hur SQL-slutpunkter hanterar metadatauppdateringsåtgärder.
Symptoms
- Aktiviteten misslyckas tillfälligt, inte konsekvent.
- Felmeddelanden anger uppdateringskonflikter eller låskonkurration.
- Pipelines med flera sekventiella SQL-slutpunktsaktiviteter för uppdatering visar högre felfrekvenser.
Grundorsak
SQL-slutpunkter kräver exklusiv åtkomst till vissa metadatastrukturer under uppdateringen. Om en annan beräkningsprocess skriver till Lakehouse vid samma tidpunkt inträffar låsstrid.
Det här beteendet är inte en defekt i aktiviteten Uppdatera SQL-slutpunkt. Det är det naturliga resultatet av samtidiga läs- och skrivåtgärder på underliggande data.
Lösningar
Två praktiska metoder kan åtgärda problemet:
- Använd endast en uppdatering av SQL-slutpunktsaktivitet i slutet av bearbetningen
- Implementera ett återkommande uppdateringsschema
Använd endast en uppdatering av SQL-slutpunktsaktivitet i slutet av bearbetningen
Om du vill minska sannolikheten för låskonflikter konsoliderar du din pipeline så att:
- Alla inmatnings-, transformerings- och uppdateringsaktiviteter körs först.
- Sedan körs bara en Uppdatera SQL-slutpunktsaktivitet i slutet.
- Den här metoden eliminerar inte fel helt, men minskar avsevärt hur ofta de inträffar.
Implementera ett återkommande uppdateringsschema
Om ditt scenario inte kräver strikt transaktionskonsekvens vid ett visst tillfälle använder du ett återkommande uppdateringsmönster:
- Schemalägg en uppdatering var 15:e minut – kontinuerligt. Vissa uppdateringsförsök kan misslyckas på grund av låsning, men det räcker för att hålla SQL-slutpunkten relativt uppdaterad.
Den här metoden är praktisk och robust för många analysarbetsbelastningar.
Spara och kör eller schemalägg pipelinan
Växla till fliken Start överst i pipelineredigeraren och välj knappen Spara för att spara din pipeline. Välj Kör för att köra den direkt eller Schemalägg för att schemalägga körningar vid specifika tidpunkter eller intervall. Mer information om pipelinekörningar finns i: schemalägga pipelinekörningar.
När du har kört kan du övervaka pipelinekörningen och visa körningshistoriken från fliken Utdata under arbetsytan.
Kända problemområden
- Aktiviteten Uppdatera SQL-slutpunkt kan ibland misslyckas när andra processer aktivt uppdaterar underliggande Lakehouse-data. Lösningar finns i avsnittet Varför misslyckas min SQL-slutpunktsuppdatering när underliggande data är låsta?