Adatbázismotor hangolási tanácsadója

A következőkre vonatkozik:SQL Server

A Microsoft Database Engine Tuning Advisor (DTA) elemzi az adatbázisokat, és javaslatokat tesz a lekérdezési teljesítmény optimalizálására. Az adatbázismotor-finomhangolási tanácsadóval optimális indexeket, indexelt nézeteket vagy táblapartíciókat választhat ki és hozhat létre anélkül, hogy az adatbázis struktúráját vagy az SQL Server belső elemeit szakértően ismernék. A DTA használatával a következő feladatokat hajthatja végre:

  • Adott probléma lekérdezés teljesítményének hibaelhárítása

  • Lekérdezések nagy készletének finomhangolása egy vagy több adatbázison

  • Feltáró lehetőségelemzés a lehetséges fizikai tervezési változásokról

  • Tárterület kezelése

Megjegyzés:

Az adatbázismotor hangolási tanácsadója nem támogatott az Azure SQL Database-ben vagy a felügyelt Azure SQL-példányban. Ehelyett vegye figyelembe Monitorozás és teljesítményhangolás az Azure SQL Database-ben és a felügyelt Azure SQL-példánybanjavasolt stratégiákat. Az Azure SQL Database esetében tekintse meg az Database Advisor teljesítményjavaslatait is az Azure SQL Database-hez.

Adatbázismotor Teljesítményhangoló Tanácsadó előnyei

A lekérdezési teljesítmény optimalizálása az adatbázis szerkezetének és az adatbázison futtatott lekérdezések teljes körű ismerete nélkül is nehéz lehet. Az adatbázismotor finomhangolási tanácsadója (DTA) egyszerűbbé teheti ezt a feladatot az aktuális lekérdezésterv gyorsítótárának elemzésével vagy a létrehozott Transact-SQL lekérdezések számítási feladatának elemzésével, valamint a megfelelő fizikai kialakítás ajánlásával. A fejlettebb adatbázis-rendszergazdák számára a DTA hatékony mechanizmust biztosít a különböző fizikai tervezési alternatívák feltáró lehetőségelemzéséhez. A DTA a következő információkat nyújtja.

  • Az adatbázisok sor- és oszlopcentrikus indexeinek legjobb kombinációját javasolja a lekérdezésoptimalizálóval a számítási feladatok lekérdezéseinek elemzéséhez.

  • Ajánlott igazított vagy nem igazított partíciókat javasolni a számítási feladatban hivatkozott adatbázisokhoz.

  • Indexelt nézetek ajánlása a számítási feladatban hivatkozott adatbázisokhoz.

  • Elemezze a javasolt módosítások hatásait, beleértve az indexhasználatot, a táblák közötti lekérdezéselosztást és a számítási feladat lekérdezési teljesítményét.

  • Javasoljuk az adatbázis finomhangolását a probléma lekérdezéseinek kis halmazához.

  • Lehetővé teszi a javaslat testreszabását speciális beállítások, például lemezterület-korlátozások megadásával.

  • Olyan jelentések készítése, amelyek összefoglalják az adott számítási feladatra vonatkozó javaslatok végrehajtásának hatásait.

  • Fontolja meg azokat az alternatív megoldásokat, amelyekben a lehetséges tervezési lehetőségeket hipotetikus konfigurációk formájában adja meg a Database Engine Tuning Advisor kiértékeléséhez.

  • A munkaterhelések finomhangolása számos különböző forrásból, például az SQL Server Lekérdezés tárolóból, a Plan Cache-ből, az SQL Server Profiler Trace-fájlból vagy -táblából, vagy egy SQL-fájlból.

Az adatbázismotor hangolási tanácsadója a következő típusú lekérdezési számítási feladatok kezelésére lett kialakítva:

  • Csak online tranzakciófeldolgozási (OLTP-) lekérdezések

  • Csak online elemzési (OLAP-) lekérdezések

  • Vegyes OLTP- és OLAP-lekérdezések

  • Nagy számítási feladatok lekérdezése (több lekérdezés, mint adatmódosítás)

  • Frissítés-igényes munkaterhelések (több adatmódosítás, mint lekérdezés)

DTA-összetevők és -fogalmak

Adatbázismotor Hangoló Tanácsadó Grafikus Felhasználói Felület
Egy könnyen használható felület, amelyen megadhatja a számítási feladatot, és kiválaszthatja a különböző hangolási beállításokat.

Dta Segédprogram
A Database Engine Tuning Advisor parancssori verziója. A dta segédprogram úgy lett kialakítva, hogy lehetővé tegye az adatbázismotor tuning advisor funkcióinak használatát alkalmazásokban és szkriptekben.

workload
Egy Transact-SQL szkriptfájl, nyomkövetési fájl vagy nyomkövetési tábla, amely a hangolni kívánt adatbázisok reprezentatív számítási feladatait tartalmazza. Az SQL Server 2012 (11.x) verziójától kezdve a tervtárolót meghatározhatja munkaterhelésként. Az SQL Server 2016-tól (13.x) kezdődően számítási feladatként megadhatja a lekérdezéstárat.

XML-bemeneti fájl
Xml-formátumú fájl, amellyel az Adatbázismotor hangolási tanácsadója hangolhatja a számítási feladatokat. Az XML-bemeneti fájl támogatja a grafikus felhasználói felületen vagy a dta segédprogramban nem elérhető speciális hangolási beállításokat.

Korlátozások és korlátozások

Az adatbázismotor hangolási tanácsadója az alábbi korlátozásokkal és megszorításokkal rendelkezik.

  • Nem tud hozzáadni vagy elvetni olyan egyedi indexeket vagy indexeket, amelyek érvényesítik a PRIMARY KEY vagy UNIQUE megkötéseket.

  • Nem elemezhet egyfelhasználós üzemmódra beállított adatbázist.

  • Ha maximális lemezterületet ad meg a tényleges rendelkezésre álló helyet meghaladó hangolási javaslatokhoz, a Database Engine Tuning Advisor a megadott értéket használja. Ha azonban végrehajtja az ajánlott szkriptet annak implementálásához, a szkript meghiúsulhat, ha nem ad hozzá több lemezterületet. A maximális lemezterület a dta segédprogram -B beállításával vagy a Speciális hangolási beállítások párbeszédpanelen megadott értékkel adható meg.

  • Biztonsági okokból az adatbázismotor-finomhangolási tanácsadó nem tudja hangolni a számítási feladatokat egy távoli kiszolgálón található nyomkövetési táblában. A korlátozás megkerüléséhez nyomkövetési fájlt használhat nyomkövetési tábla helyett, vagy átmásolhatja a nyomkövetési táblát a távoli kiszolgálóra.

  • Ha korlátozásokat ír elő, például a javaslatok finomhangolásához szükséges maximális lemezterület megadásakor (a -B beállítás vagy a Speciális hangolási beállítások párbeszédpanel használatával), előfordulhat, hogy az adatbázismotor finomhangolási tanácsadója kénytelen lesz elvetni bizonyos meglévő indexeket. Ebben az esetben az eredményül kapott Database Engine Tuning Advisor-javaslat negatív várható javulást eredményezhet.

  • Ha korlátozást határoz meg a finomhangolási időre (az -A opció segítségével a dta segédprogramban, vagy a Hangolási beállítások lapon a Korlátozás finomhangolási idejének kijelölésével), a Database Engine Tuning Advisor túllépheti ezt az időkorlátot, hogy pontos várható javulást mutasson, és elemzési jelentéseket készítsen az eddig felhasznált munkaterhelés részeire vonatkozóan.

  • Előfordulhat, hogy az adatbázismotor-finomhangolási tanácsadó a következő körülmények között nem tesz javaslatokat:

    1. A hangolt táblázat 10-nél kevesebb adatlapot tartalmaz.

    2. Az ajánlott indexek nem nyújtanak elegendő javulást a lekérdezési teljesítményben a jelenlegi fizikai adatbázis-kialakításhoz.

    3. A Database Engine Tuning Advisort futtató felhasználó nem tagja a db_owner adatbázis-szerepkörnek vagy a sysadmin rögzített kiszolgálói szerepkörnek. A számítási feladat lekérdezései az adatbázismotor-finomhangolási tanácsadót futtató felhasználó biztonsági kontextusában lesznek elemezve. A felhasználónak a db_owner adatbázis-szerepkör tagjának kell lennie.

  • A Database Engine Tuning Advisor tárolja a hangolási munkamenet adatait és más információkat az msdb adatbázisban. Ha módosítják az msdb adatbázist, a munkamenet-adatok hangolásának elvesztését kockáztathatja. A kockázat kiküszöbölése érdekében implementáljon egy megfelelő biztonsági mentési stratégiát az msdb adatbázishoz.

Teljesítménnyel kapcsolatos szempontok

Az adatbázismotor finomhangolási tanácsadója jelentős processzor- és memóriaerőforrásokat használhat az elemzés során. Az éles kiszolgáló lelassításának elkerülése érdekében kövesse az alábbi stratégiák egyikét:

  • Hangolja az adatbázisokat, amikor a szerver szabad. Az adatbázismotor hangolási tanácsadója befolyásolhatja a karbantartási feladatok teljesítményét.

  • Használja a teszt szerver/produkciós szerver funkciót. További információért lásd a Az éles kiszolgáló hangolási terhelésének csökkentése dokumentumot.

  • Csak azokat a fizikai adatbázis-tervezési struktúrákat adja meg, amelyeket a Database Engine Tuning Advisor elemezni szeretne. Az adatbázismotor hangolási tanácsadója számos lehetőséget kínál, de csak a szükséges lehetőségeket határozza meg.

Az xp_msver kiterjesztett tárolt eljárástól való függőség

Az adatbázismotor hangolási tanácsadója a xp_msver kiterjesztett tárolt eljárástól függ, hogy teljes funkcionalitást biztosítson. Ez a kiterjesztett tárolt eljárás alapértelmezés szerint be van kapcsolva. A Database Engine Tuning Advisor ezzel a kiterjesztett tárolt eljárással lekéri a processzorok számát és a rendelkezésre álló memóriát azon a számítógépen, amelyen a finomhangolt adatbázis található. Ha xp_msver nem érhető el, a Database Engine Tuning Advisor feltételezi annak a számítógépnek a hardverjellemzőit, amelyen az Adatbázismotor-finomhangolási tanácsadó fut. Ha az adatbázismotor-finomhangolási tanácsadót futtató számítógép hardverjellemzői nem érhetők el, a rendszer egy processzort és 1024 megabájtnyi memóriát feltételez.

Ez a függőség befolyásolja a particionálási javaslatokat, mert a javasolt partíciók száma e két értéktől függ (processzorok száma és rendelkezésre álló memória). A függőség hatással van a finomhangolási eredményekre is, ha tesztkiszolgálót használ az éles kiszolgáló finomhangolásához. Ebben a forgatókönyvben a Database Engine Tuning Advisor az xp_msver-t használja a hardvertulajdonságok az éles kiszolgálóról való lekérésére. Miután finomhangolták a számítási feladatot a tesztkiszolgálón, a Database Engine Tuning Advisor ezeket a hardvertulajdonságokat használja egy javaslat létrehozásához. További információ: xp_msver (Transact-SQL).

Adatbázismotor finomhangolási tanácsadói feladatai

Az alábbi táblázat a database engine tuning advisor gyakori feladatait és a végrehajtásuk módját ismertető cikkeket sorolja fel.

Adatbázismotor finomhangolási tanácsadói feladata Cikk
Inicializálja és indítsa el az adatbázismotor hangolási tanácsadóját.

Számítási feladat létrehozása a terv gyorsítótárának megadásával, egy szkript létrehozásával vagy egy nyomkövetési fájl vagy nyomkövetési tábla létrehozásával.

Adatbázis finomhangolása a Database Engine Tuning Advisor grafikus felhasználói felületi eszközével.

Xml-bemeneti fájlok létrehozása a számítási feladatok hangolásához.

A Database Engine Tuning Advisor felhasználói felületének beállításainak megtekintése.
A Database Engine Tuning Advisor indítása és használata
Az adatbázis finomhangolási műveletének eredményeinek megtekintése.

Finomhangolási javaslatok kiválasztása és megvalósítása.

Mi lenne, ha feltáró elemzést végezne a munkaterhelésen.

Meglévő hangolási munkamenetek áttekintése, munkamenetek klónozása meglévők alapján
vagy szerkessze a meglévő hangolási javaslatokat a további értékeléshez vagy megvalósításhoz.

A Database Engine Tuning Advisor felhasználói felületének beállításainak megtekintése.
Az adatbázismotor hangolási tanácsadójának kimenetének megtekintése és használata