Prestatierichtlijnen voor Fabric Data Warehouse
Van toepassing op:✅ Warehouse in Microsoft Fabric
Dit zijn richtlijnen om inzicht te krijgen in de prestaties van uw warehouse in Microsoft Fabric. In dit artikel vindt u richtlijnen en belangrijke artikelen waar u zich op kunt richten. Warehouse in Microsoft Fabric is een SaaS-platform waar activiteiten zoals workloadbeheer, gelijktijdigheid en opslagbeheer intern worden beheerd door het platform. Naast dit interne prestatiebeheer kunt u uw prestaties nog steeds verbeteren door performante query's te ontwikkelen op goed ontworpen magazijnen.
Prestaties van koude uitvoering (koude cache)
Caching met lokale SSD en geheugen is automatisch. De eerste 1-3 uitvoeringen van een query worden aanzienlijk trager uitgevoerd dan latere uitvoeringen. Als u problemen ondervindt met de prestaties van koude uitvoeringen, kunt u hier een aantal dingen doen die de prestaties van de koude run kunnen verbeteren:
Als de prestaties van de eerste uitvoering cruciaal zijn, probeert u handmatig statistieken te maken. Raadpleeg het artikel statistieken voor meer inzicht in de rol van statistieken en voor hulp bij het maken van handmatige statistieken om de queryprestaties te verbeteren. Als de prestaties van de eerste uitvoering echter niet kritiek zijn, kunt u vertrouwen op automatische statistieken die worden gegenereerd in de eerste query en blijven worden gebruikt in volgende uitvoeringen (zolang onderliggende gegevens niet aanzienlijk veranderen).
Als u Power BI gebruikt, gebruikt u waar mogelijk de Direct Lake-modus .
Metrische gegevens voor het bewaken van prestaties
Op dit moment bevat de Monitoring Hub geen magazijn. Als u Data Warehouse kiest, hebt u geen toegang tot de Monitoring Hub via de navigatiebalk.
Fabric-beheerders hebben toegang tot het rapport Capaciteitsgebruik en metrische gegevens voor actuele informatie die het gebruik van capaciteit bijhoudt die warehouse omvat.
Dynamische beheerweergaven (DMV's) gebruiken om de uitvoering van query's te bewaken
U kunt dynamische beheerweergaven (DMV's) gebruiken om de verbindings-, sessie- en aanvraagstatus in het magazijn te bewaken.
statistieken
Het warehouse maakt gebruik van een query-engine om een uitvoeringsplan voor een bepaalde SQL-query te maken. Wanneer u een query verzendt, probeert de queryoptimalisatie alle mogelijke plannen op te sommen en de meest efficiënte kandidaat te kiezen. Om te bepalen welk plan de minste overhead vereist, moet de engine de hoeveelheid werk of rijen kunnen evalueren die door elke operator kunnen worden verwerkt. Vervolgens kiest het op basis van de kosten van elk abonnement het abonnement met de minste hoeveelheid geschatte hoeveelheid werk. Statistieken zijn objecten die relevante informatie over uw gegevens bevatten, zodat de queryoptimalisatie deze kosten kan schatten.
U kunt statistieken ook handmatig bijwerken na elke gegevensbelasting of gegevensupdate om ervoor te zorgen dat het beste queryplan kan worden gebouwd.
Zie Statistieken in Fabric datawarehousing voor meer informatie en hoe u de automatisch gemaakte statistieken kunt uitbreiden.
Richtlijnen voor gegevensopname
Er zijn vier opties voor gegevensopname in een magazijn:
- COPY (Transact-SQL)
- Gegevenspijplijnen
- Gegevensstromen
- Opname van meerdere magazijnen
Als u wilt bepalen welke optie het meest geschikt is voor u en een aantal aanbevolen procedures voor gegevensopname wilt bekijken, bekijkt u Opnamegegevens.
Insert-instructies groeperen in batches (vermijd invoegingen in trickle)
Een eenmalige belasting van een kleine tabel met een INSERT-instructie, zoals in het volgende voorbeeld, is mogelijk de beste benadering, afhankelijk van uw behoeften. Als u echter de hele dag duizenden of miljoenen rijen moet laden, zijn singleton INSERTS niet optimaal.
INSERT INTO MyLookup VALUES (1, 'Type 1')
Zie De aanbevolen procedures voor het opnemen van gegevens voor hulp bij het afhandelen van deze scenario's voor het laden van trickle-load.
Transactiegrootten minimaliseren
INSERT-, UPDATE- en DELETE-instructies worden uitgevoerd in een transactie. Wanneer ze mislukken, moeten ze worden teruggedraaid. Als u het potentieel voor een lange terugdraaiactie wilt verminderen, minimaliseert u waar mogelijk transactiegrootten. Het minimaliseren van transactiegrootten kan worden uitgevoerd door INSERT-, UPDATE- en DELETE-instructies in delen te delen. Als u bijvoorbeeld een INSERT hebt die u verwacht 1 uur te duren, kunt u de INSERT opsplitsen in vier delen. Elke uitvoering wordt vervolgens ingekort tot 15 minuten.
Overweeg om CTAS (Transact-SQL) te gebruiken om de gegevens te schrijven die u in een tabel wilt bewaren in plaats van DELETE te gebruiken. Als een CTAS dezelfde tijd in beslag neemt, is het veiliger om uit te voeren omdat deze minimale transactielogboekregistratie heeft en indien nodig snel kan worden geannuleerd.
Collocate clienttoepassingen en Microsoft Fabric
Als u clienttoepassingen gebruikt, controleert u of u Microsoft Fabric gebruikt in een regio die zich dicht bij uw clientcomputer bevindt. Voorbeelden van clienttoepassingen zijn Power BI Desktop, SQL Server Management Studio en Azure Data Studio.
Ontwerp van stervormige schemagegevens gebruiken
Een stervormig schema ordent gegevens in feitentabellen en dimensietabellen. Het vereenvoudigt analytische verwerking door denormalisering van de gegevens van zeer genormaliseerde OLTP-systemen, het opnemen van transactionele gegevens en ondernemingshoofdgegevens in een gemeenschappelijke, opgeschoonde en geverifieerde gegevensstructuur die joins tijdens de query minimaliseert, vermindert het aantal rijen dat wordt gelezen en vergemakkelijkt aggregaties en groeperingsverwerking.
Zie Tabellen in datawarehousing voor meer ontwerprichtlijnen voor magazijnen.
Grootten van queryresultatensets verkleinen
Door de grootte van queryresultatensets te verkleinen, kunt u problemen aan de clientzijde voorkomen die worden veroorzaakt door grote queryresultaten. De resultatensets van de SQL Query-editor zijn beperkt tot de eerste 10.000 rijen om deze problemen in deze browsergebruikersinterface te voorkomen. Als u meer dan 10.000 rijen wilt retourneren, gebruikt u SQL Server Management Studio (SSMS) of Azure Data Studio.
Kies het beste gegevenstype voor prestaties
Wanneer u uw tabellen definieert, gebruikt u het kleinste gegevenstype dat uw gegevens ondersteunt, zodat de queryprestaties worden verbeterd. Deze aanbeveling is belangrijk voor CHAR- en VARCHAR-kolommen. Als de langste waarde in een kolom 25 tekens is, definieert u uw kolom als VARCHAR(25). Vermijd het definiëren van alle tekenkolommen met een grote standaardlengte.
Gebruik indien mogelijk gegevenstypen op basis van een geheel getal. SORTEER-, JOIN- en GROUP BY-bewerkingen worden sneller uitgevoerd op gehele getallen dan op tekengegevens.
Zie gegevenstypen voor ondersteunde gegevenstypen en meer informatie.
Prestaties van SQL Analytics-eindpunten
Zie prestatieoverwegingen voor SQL Analytics-eindpunten voor informatie en aanbevelingen over de prestaties van het SQL-analyse-eindpunt.
Gegevenscompressie
Met gegevenscompressie worden kleinere Parquet-bestanden samengevoegd tot minder, grotere bestanden, waardoor leesbewerkingen worden geoptimaliseerd. Dit proces helpt ook bij het efficiënt beheren van verwijderde rijen door ze te elimineren uit onveranderbare Parquet-bestanden. Het proces voor gegevenscompressie omvat het opnieuw schrijven van tabellen of segmenten van tabellen in nieuwe Parquet-bestanden die zijn geoptimaliseerd voor prestaties. Zie Blog: Automatische gegevenscompressie voor Fabric Warehouse voor meer informatie.
Het datacompressieproces is naadloos geïntegreerd in het magazijn. Wanneer query's worden uitgevoerd, identificeert het systeem tabellen die kunnen profiteren van compressie en voert het de benodigde evaluaties uit. Er is geen handmatige manier om gegevenscompressie te activeren.