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.
Underhåll av deltatabeller hjälper dig att hålla tabellerna snabba och lagringseffektiva när de växer. Med tiden kan Delta-tabeller ackumulera många små filer, borttagna data kan fortsätta att förbruka lagringsutrymme och inaktuell statistik kan minska frågeeffektiviteten. Regelbundet underhåll hjälper dig att förbättra läsprestanda, frigöra lagring och hålla tabellmetadata i linje med hur dina arbetsbelastningar får åtkomst till data. Använd den här artikeln som en snabbguide till de huvudsakliga underhållsåtgärder som är tillgängliga för Delta-tabeller.
Varför underhåll är viktigt
När Delta-tabeller växer ändrar skrivaktiviteten tabellens fysiska layout. Upprepade inmatningsjobb kan skapa många små filer, uppdaterings- och borttagningsåtgärder kan lämna kvar orefererade filer eller mjukt borttagna rader, och äldre statistik kan göra det svårare för Spark att hoppa över onödiga data. Om du underhåller tabeller regelbundet minskar du kostnaderna för genomsökningar, hjälper Fabric optimera frågor mer effektivt och undviker att betala för att behålla lagring som aktiva tabellversioner inte längre behöver.
Använd OPTIMIZE för komprimering av behållare
Använd OPTIMIZE när deltatabellen har samlat många små filer och du vill konsolidera dem till färre, större filer. Den här åtgärden förbättrar läsprestandan genom att minska filhanteringskostnaderna och göra genomsökningarna mer effektiva.
OPTIMIZE stöder även andra argument och funktioner som VORDER. För fullständig syntax, alternativ och exempel, se tabellkompaktering och V-ordning.
Använd VACUUM för lagringsrensning
Använd VACUUM när du vill ta bort orefererade datafiler som är äldre än den konfigurerade lagringsperioden. I Fabric hjälper den här åtgärden dig att frigöra OneLake-lagring efter uppdateringar, borttagningar, sammanslagningar, överskrivningsåtgärder och komprimering.
VACUUM fokuserar på lagringsrensning i stället för frågejustering, så den kompletterar vanligtvis andra underhållsaktiviteter i stället för att ersätta dem. För vägledning om lagringstid och körningsdetaljer, se VACUUM.
Använda REORG för riktad omorganisation
Använd REORG när du behöver skriva om tabelltillståndet för ett specifikt underhållsmål i stället för allmän filkomprimering. I Delta Lake tar REORG TABLE ... APPLY (PURGE) fysiskt bort rader som har markerats som borttagna av borttagningsvektorer. De alternativ som stöds och när du ska använda dem finns i Omorganisera Delta-tabeller med REORG.
Note
REORG behövs vanligtvis inte eftersom OPTIMIZE automatiskt rensar filer där större än 5% poster refereras av borttagningsvektorer.
Håll statistiken aktuell
Fabric Spark Runtime stöder två typer av statistik i Delta-tabeller: filstatistik och tabellstatistik.
- Filstatistik – Delta Lake registrerar värden per fil, min, max och null-count för indexerade kolumner varje gång en datafil skrivs. Spark-motorn använder den här statistiken för att hoppa över filer som inte kan innehålla rader som matchar ett frågepredikat, vilket minskar mängden data som genomsöks. Som standard samlas statistik in för de första 32 kolumnerna. Mer information om hur överhoppning av filer fungerar och hur du kan anpassa för vilka kolumner statistik samlas in finns i Överhoppning av filer.
- Tabellstatistik – Statistik på kolumnnivå som aggregeras över alla filer i tabellen underhålls automatiskt så att Spark har bättre metadata för frågeplanering. Den här statistiken förbättrar prestandan genom bättre optimeringsbeslut för filter, kopplingar och sammansättningar. Information om hur automatiserad statistik fungerar och hur du konfigurerar finns i Automatiserad statistik för Delta-tabeller.
Använda autokompaction för kontinuerlig filhantering
Delta Lake stöder också automatisk komprimering efter skrivningar så att tabeller kan vara hälsosammare utan att kräva ett separat manuellt jobb varje gång. Du kan styra det här beteendet via tabellegenskaper eller arbetsyteinställningar, beroende på hur du hanterar dina Spark-arbetsbelastningar. Mer information om hur du aktiverar finns i Automatisk komprimering .
Köra underhåll från lakehouse-användargränssnittet
Om du föredrar ett UI-baserat arbetsflöde kan du köra underhållsåtgärder direkt från Lakehouse explorer, se Lakehouse table maintenance.
Följ en praktisk underhållstakt
Kör OPTIMIZE efter inmatning av stora datamängder i batch eller när små filer börjar samlas och gör läsningen långsammare. Kör VACUUM regelbundet, till exempel varje vecka eller efter större komprimeringscykler, för att frigöra lagring från filer som tabellen inte längre refererar till.
REORG TABLE ... APPLY (PURGE) behövs inte som en del av rutinunderhållet eftersom OPTIMIZE automatiskt rensar bort filer där mer än 5 % av posterna refereras av borttagningsvektorer. Reservera PURGE för scenarier som kräver explicit kontroll, till exempel efterlevnads- eller GDPR-skyldigheter. Övervaka tabellvillkoret med DESCRIBE DETAIL och DESCRIBE HISTORY så att du kan spåra filantal, storlek och underhållshistorik före och efter varje åtgärd.
-- View current table state
DESCRIBE DETAIL table_name;
-- View history of transactions
DESCRIBE HISTORY table_name;