Delen via


Gebruik van Database Engine Tuning Advisor: Les 2

van toepassing op:SQL Server-

Met Database Engine Tuning Advisor kunt u databases afstemmen, afstemmingssessies beheren en aanbevelingen voor afstemming bekijken. Gebruikers met geavanceerde kennis van fysieke ontwerpstructuren kunnen dit hulpprogramma gebruiken om verkennende databaseafstemmingsanalyses uit te voeren. Beginners met databaseafstemming kunnen ook de tool gebruiken om de beste configuratie van fysieke ontwerpstructuren te vinden voor de workloads die ze afstemmen. Deze les biedt basispraktijk voor databasebeheerders die geen ervaring hebben met de grafische gebruikersinterface van Database Engine Tuning Advisor en voor systeembeheerders die mogelijk geen uitgebreide kennis hebben van fysieke ontwerpstructuren.

Vereiste voorwaarden

Voor het voltooien van deze zelfstudie hebt u SQL Server Management Studio nodig, toegang tot een server waarop SQL Server wordt uitgevoerd en een AdventureWorks2022-database.

Instructies voor het herstellen van databases in SSMS zijn hier: Een database herstellen.

Opmerking

Deze zelfstudie is bedoeld voor een gebruiker die bekend is met het gebruik van SQL Server Management Studio en basistaken voor databasebeheer.

Een werkbelasting afstemmen

De Database Engine Tuning Advisor kan worden gebruikt om het beste fysieke databaseontwerp te vinden voor queryprestaties op de databases en tabellen die u selecteert voor afstemming.

  1. Kopieer een select-voorbeeldinstructie en plak de instructie in de Query-editor van SQL Server Management Studio. Sla het bestand op als MyScript.sql in een map waar u het gemakkelijk kunt vinden. Hieronder ziet u een voorbeeld dat werkt met de AdventureWorks2022 database.
Use [AdventureWorks2022]; -- may need to modify database name to match database
GO
SELECT DISTINCT pp.LastName, pp.FirstName 
FROM Person.Person pp JOIN HumanResources.Employee e
ON e.BusinessEntityID = pp.BusinessEntityID WHERE pp.BusinessEntityID IN 
(SELECT SalesPersonID 
FROM Sales.SalesOrderHeader
WHERE SalesOrderID IN 
(SELECT SalesOrderID 
FROM Sales.SalesOrderDetail
WHERE ProductID IN 
(SELECT ProductID 
FROM Production.Product p 
WHERE ProductNumber = 'BK-M68B-42')));
GO

SQL-query opslaan

  1. Start de Database Engine Afstemmingsadviseur. Selecteer Database Tuning Advisor in het menu Extra in SQL Server Management Studio (SSMS). Zie Database Engine Tuning Advisor starten voor meer informatie. Maak verbinding met uw SQL Server in het dialoogvenster Verbinding maken met server .

  2. Typ MySession in sessienaam op het tabblad Algemeen van het rechterdeelvenster van de GUI van de Database Engine Tuning Advisor.

  3. Selecteer Bestand voor uw werkbelasting en selecteer het verrekijkerpictogram om een werkbelastingbestand te bladeren. Zoek het MyScript.sql bestand dat u in stap 1 hebt opgeslagen.

Het script zoeken dat eerder is opgeslagen

  1. Selecteer AdventureWorks2022 in de lijst Database voor workloadanalyse, selecteer AdventureWorks2022 in het raster Selecteer databases en tabellen om af te stemmen, en selecteer Afstemmingslogboek opslaan. Database voor workloadanalyse geeft de eerste database aan waarmee Database Engine Tuning Advisor verbinding maakt bij het afstemmen van een workload. Nadat het afstemmen is gestart, maakt Database Engine Tuning Advisor verbinding met de databases die zijn opgegeven door de USE DATABASE instructies in de workload.

DTA-opties voor db

  1. Klik op het tabblad Afstemmingsopties . U stelt geen afstemmingsopties in voor deze oefening, maar neem even de tijd om de standaardafstemmingsopties te bekijken. Druk op F1 om de Help voor deze pagina met tabbladen weer te geven. Klik op Geavanceerde opties om extra afstemmingsopties weer te geven. Klik op Help in het dialoogvenster Geavanceerde afstemmingsopties voor informatie over de afstemmingsopties die daar worden weergegeven. Klik op Annuleren om het dialoogvenster Geavanceerde afstemmingsopties te sluiten, zodat de standaardopties zijn geselecteerd.

DTA-afstemmingsopties

  1. Klik op de knop Analyse starten op de werkbalk. Terwijl Database Engine Tuning Advisor de workload analyseert, kunt u de status controleren op het tabblad Voortgang . Wanneer het afstemmen is voltooid, wordt het tabblad Aanbevelingen weergegeven.

    Als er een foutbericht wordt weergegeven over de afstemdatum en -tijd, controleert u de stop op tijd op het tabblad Opties voor afstemmen . Zorg ervoor dat de datum en tijd stoppen groter zijn dan de huidige datum en tijd, en wijzig indien nodig deze.

DTA-analyse starten

  1. Nadat de analyse is voltooid, slaat u uw aanbeveling op als een Transact-SQL script door te klikken op Aanbevelingen opslaan in het menu Acties . Navigeer in het dialoogvenster Opslaan als naar de map waarin u het aanbevelingenscript wilt opslaan en typ de bestandsnaam MyRecommendations.

DTA-aanbevelingen opslaan

Aanbevelingen voor tuning weergeven

  1. Gebruik op het tabblad Aanbevelingen de schuifbalk onder aan de pagina met tabbladen om alle kolommen Indexaanbeveling weer te geven. Elke rij vertegenwoordigt een databaseobject (indexen of geïndexeerde weergaven) dat Database Engine Tuning Advisor aanbeveelt te verwijderen of te maken. Schuif naar de meest rechtse kolom en klik op een definitie. Database Engine Tuning Advisor geeft een voorbeeldvenster van SQL Script weer waarin u het Transact-SQL script kunt bekijken waarmee het databaseobject in die rij wordt gemaakt of verwijderd. Klik op Sluiten om het voorbeeldvenster te sluiten.

    Als u problemen ondervindt bij het vinden van een definitie die een koppeling bevat, schakelt u het selectievakje Bestaande objecten weergeven onder aan de pagina met tabbladen uit, waardoor het aantal weergegeven rijen wordt verlaagd. Wanneer u dit selectievakje uitschakelt, toont Database Engine Tuning Advisor alleen de objecten waarvoor een aanbeveling is gegenereerd. Schakel het selectievakje Bestaande objecten weergeven in om alle databaseobjecten weer te geven die momenteel aanwezig zijn in de AdventureWorks2022 database. Gebruik de schuifbalk aan de rechterkant van de pagina met tabbladen om alle objecten weer te geven.

Aanbeveling voor DTA-index

  1. Klik met de rechtermuisknop op het raster in het deelvenster Indexaanbevelingen . Met dit snelmenu kunt u aanbevelingen selecteren en de selectie opheffen. Hiermee kunt u ook het lettertype voor de rastertekst wijzigen.

Selectiemenu voor indexaanbeveling

  1. Klik in het menu Acties op Aanbevelingen opslaan om alle aanbevelingen op te slaan in één Transact-SQL script. Geef het script een naam MySessionRecommendations.sql.

    Open het MySessionRecommendations.sql script in de Query-editor van SQL Server Management Studio om het te bekijken. U kunt de aanbevelingen toepassen op de AdventureWorks2022 voorbeelddatabase door het script uit te voeren in de Query-editor, maar doe dit niet. Sluit het script in Query-editor zonder het uit te voeren.

    Als alternatief kunt u de aanbevelingen ook toepassen door te klikken op Aanbevelingen toepassen in het menu Acties van Database Engine Tuning Advisor, maar pas deze aanbevelingen nu niet toe in deze praktijk.

  2. Als er meer dan één aanbeveling bestaat op het tabblad Aanbevelingen, wis enkele rijen die databaseobjecten opsommen in het raster Indexaanbevelingen.

  3. Klik in het menu Acties op Aanbevelingen evalueren. Database Engine Tuning Advisor maakt een nieuwe afstemmingssessie waar u een subset van de oorspronkelijke aanbevelingen van MySession kunt evalueren.

  4. Typ EvaluateMySession voor uw nieuwe sessienaam en klik op de knop Analyse starten op de werkbalk. U kunt stap 2 en 3 herhalen voor deze nieuwe afstemmingssessie om de aanbevelingen te bekijken.

Samenvatting

Het evalueren van een subset van aanbevelingen voor afstemming kan nodig zijn als u merkt dat u de afstemmingsopties moet wijzigen nadat u een sessie hebt uitgevoerd. Als u bijvoorbeeld Database Engine Tuning Advisor vraagt om geïndexeerde weergaven te overwegen wanneer u afstemmingsopties voor een sessie opgeeft, maar nadat de aanbeveling is gegenereerd, besluit u tegen het gebruik van geïndexeerde weergaven. Vervolgens kunt u de optie Aanbevelingen evalueren in het menu Acties gebruiken om de sessie opnieuw te evalueren met Database Engine Tuning Advisor zonder geïndexeerde weergaven te overwegen. Wanneer u de optie Aanbevelingen evalueren gebruikt, worden de eerder gegenereerde aanbevelingen hypothetisch toegepast op het huidige fysieke ontwerp om het fysieke ontwerp voor de tweede afstemmingssessie aan te komen.

Meer afstemmingsresultaten kunnen worden weergegeven op het tabblad Rapporten , die wordt beschreven in de volgende taak van deze les.

Tuningrapporten weergeven

Hoewel het handig is om de scripts weer te geven die kunnen worden gebruikt om de afstemmingsresultaten te implementeren, biedt Database Engine Tuning Advisor ook veel nuttige rapporten die u kunt bekijken. Deze rapporten bevatten informatie over de bestaande fysieke ontwerpstructuren in de database die u wilt afstemmen en over de aanbevolen structuren. U kunt de afstemmingsrapporten bekijken door op het tabblad Rapporten te klikken, zoals beschreven in de volgende procedure.

  1. Selecteer het tabblad Rapporten in Database Tuning Advisor.

  2. In het deelvenster Samenvatting afstemmen kunt u informatie over deze afstemmingssessie bekijken. Gebruik de schuifbalk om alle inhoud van het deelvenster weer te geven. Noteer de verwachte percentageverbetering en de ruimte die door aanbeveling wordt gebruikt. Het is mogelijk om de ruimte die wordt gebruikt door de aanbeveling te beperken wanneer u de afstemmingsopties instelt. Selecteer Geavanceerde opties op het tabblad Afstemmingsopties. Controleer Define max. ruimte voor aanbevelingen en geef in megabytes de maximale ruimte op die door een aanbevelingsconfiguratie kan worden gebruikt. Gebruik de knop Vorige in uw Help-browser om terug te keren naar deze zelfstudie.

    DTA-afstemmingsoverzicht

  3. Klik in het deelvenster Afstemmingsrapporten op Kostenoverzicht rapport in de lijst Rapport selecteren. Als u meer ruimte nodig hebt om het rapport weer te geven, sleept u de rand van het deelvenster Sessiemonitor naar links. Aan elke Transact-SQL instructie die wordt uitgevoerd op basis van een tabel in uw database, zijn er prestatiekosten aan gekoppeld. Deze prestatiekosten kunnen worden verminderd door effectieve indexen te maken voor veelgebruikte kolommen in een tabel. Dit rapport toont de geschatte procentuele verbetering tussen de oorspronkelijke kosten van het uitvoeren van een opdracht in de workload en de kosten als de tuningaanbeveling wordt geïmplementeerd. Houd er rekening mee dat de hoeveelheid informatie in het rapport is gebaseerd op de lengte en complexiteit van de werkbelasting.

    DTA-rapport - kostenoverzicht

  4. Klik met de rechtermuisknop op het deelvenster Verklaring kostrapport in het rastergebied, en klik op Exporteren naar bestand. Sla het rapport op als Mijn rapport. Er wordt automatisch een .xml-extensie toegevoegd aan de bestandsnaam. U kunt MyReport.xml openen in uw favoriete XML-editor of in SQL Server Management Studio om de inhoud van het rapport weer te geven.

  5. Ga terug naar de Rapporten-tab van Database Engine Tuning Advisor en klik opnieuw met de rechtermuisknop op het Statementkostrapport. Bekijk de andere opties die beschikbaar zijn. Houd er rekening mee dat u het lettertype voor het rapport dat u bekijkt, kunt wijzigen. Als u het lettertype hier wijzigt, wordt het ook gewijzigd op de andere pagina's met tabbladen.

  6. Klik op andere rapporten in de lijst Rapport selecteren om uzelf vertrouwd te maken met deze rapporten.

Samenvatting

U hebt nu het tabblad Rapporten van de GUI van Database Engine Tuning Advisor verkend voor de sessie voor het afstemmen van MySession. U kunt dezelfde stappen gebruiken om de rapporten te verkennen die zijn gegenereerd voor de tuningsessie EvaluateMySession. Dubbelklik op EvaluateMySession in het deelvenster Sessiemonitor om te beginnen.

Volgende les

Les 3: het DTA-opdrachtpromptprogramma gebruiken