Arbetsbelastningshantering
Gäller för:✅ SQL-analysslutpunkt och lager i Microsoft Fabric
Den här artikeln beskriver arkitekturen och arbetsbelastningshanteringen bakom datalagerhantering i Microsoft Fabric.
Databehandling
Slutpunkten för lager- och SQL-analys delar samma underliggande bearbetningsarkitektur. När data hämtas eller matas in utnyttjar den en distribuerad motor som skapats för både små och storskaliga data och beräkningsfunktioner.
Bearbetningssystemet är serverlöst i och med att serverdelsberäkningskapaciteten skalas upp och ned autonomt för att uppfylla arbetsbelastningskraven.
När en fråga skickas utför SQL-klientdelen (FE) frågeoptimering för att fastställa den bästa planen baserat på datastorleken och komplexiteten. När planen har genererats ges den till DQP-motorn (Distributed Query Processing). DQP samordnar distribuerad körning av frågan genom att dela upp den i mindre frågor som körs på serverdelsberäkningsnoder. Varje liten fråga kallas för en uppgift och representerar en distribuerad körningsenhet. Den läser filer från OneLake, kopplar resultat från andra uppgifter, grupper eller orderdata som hämtats från andra uppgifter. För inmatningsjobb skriver den även data till rätt måltabeller.
När data bearbetas returneras resultaten till SQL-klientdelen för serverdel för att betjäna tillbaka till användaren eller anropa programmet.
Elasticitet och återhämtning
Serverdelsberäkningskapaciteten drar nytta av en snabb etableringsarkitektur. Även om det inte finns något serviceavtal för resurstilldelning hämtas vanligtvis nya noder inom några sekunder. När resursefterfrågan ökar använder nya arbetsbelastningar den utskalade kapaciteten. Skalning är en onlineåtgärd och frågebearbetningen avbryts inte.
Systemet är feltolerant och om en nod blir felfri distribueras åtgärder som körs på noden om till felfria noder för slutförande.
Slutpunkten för lager- och SQL-analys ger bra kapacitet som gör att arbetsbelastningar kan använda fler resurser för att uppnå bättre prestanda och använda utjämning för att erbjuda lättnader för kunder som skapar plötsliga toppar under sina tider med hög belastning, medan de har mycket inaktiv kapacitet som inte används. Utjämning förenklar kapacitetshanteringen genom att sprida utvärderingen av beräkning för att säkerställa att kundjobben fungerar smidigt och effektivt.
Schemaläggning och resurshantering
Schemaläggaren för distribuerad frågebearbetning fungerar på aktivitetsnivå. Frågor representeras för schemaläggaren som en riktad acyklisk graf (DAG) med uppgifter. Det här konceptet är bekant för Spark-användare. En DAG möjliggör parallellitet och samtidighet eftersom uppgifter som inte är beroende av varandra kan köras samtidigt eller i fel ordning.
När frågor tas emot schemaläggs deras uppgifter baserat på FIFO-principer (first-in-first-out). Om det finns inaktiv kapacitet kan schemaläggaren använda en "best fit"-metod för att optimera samtidighet.
När schemaläggaren identifierar resurstryck anropas en skalningsåtgärd. Skalning hanteras autonomt och serverdelstopologin växer när samtidigheten ökar. Eftersom det tar några sekunder att hämta noder är systemet inte optimerat för konsekventa undersekunders prestanda för frågor som kräver distribuerad bearbetning.
När trycket minskar skalar serverdelstopologin ned igen och frigör resursen tillbaka till regionen.
Inmatningsisolering
Gäller för:✅ Warehouse i Microsoft Fabric
I serverdelsberäkningspoolen i Warehouse i Microsoft Fabric tillhandahålls inläsningsaktiviteter resursisolering från analytiska arbetsbelastningar. Detta förbättrar prestanda och tillförlitlighet eftersom inmatningsjobb kan köras på dedikerade noder som är optimerade för ETL och inte konkurrerar med andra frågor eller program om resurser.
Sessioner
Slutpunkten för lager- och SQL-analys har en användarsessionsgräns på 724 per arbetsyta. När den här gränsen har nåtts returneras ett fel: The user session limit for the workspace is 724 and has been reached
.
Kommentar
Eftersom Microsoft Fabric är en SaaS-plattform finns det många systemanslutningar som körs för att kontinuerligt optimera miljön. DMV:er visar både system- och användarsessioner. Mer information finns i Övervaka med DMV:er.
Bästa praxis
Microsoft Fabric-arbetsytan ger en naturlig isoleringsgräns för det distribuerade beräkningssystemet. Arbetsbelastningar kan dra nytta av den här gränsen för att hantera både kostnader och prestanda.
OneLake-genvägar kan användas för att skapa skrivskyddade repliker av tabeller i andra arbetsytor för att distribuera belastning över flera SQL-motorer, vilket skapar en isoleringsgräns. Detta kan effektivt öka det maximala antalet sessioner som utför skrivskyddade frågor.