Windows - Index Tuning Wizard

Az Index Tuning Wizard azoknak az SQL adatbázis szerver felhasználóknak nyújt segítséget, akik kevésbé értenek az indexek használatához, de szeretnék, ha lekérdezéseik, tárolt eljárásaik, sőt az egész adatbázisuk hatékonyan, optimálisan működne. Ezzel az eszközzel javaslatot kapunk, hogy mivel javítsunk a meglévő beállításokon.
Bemutatás
Az Index Tuning Wizard segítségével kiválaszthatunk, illetve létrehozhatunk egy optimális index csoportot és statisztikát az adatbázisunkhoz anélkül, hogy szakértői tudással rendelkeznénk az adatbázis struktúrát, munkafolyamatot és az SQL szerver belső működését illetően.
Ahhoz, hogy készíteni tudjunk egy optimális index összeállítást, létre kell hoznunk egy munkafolyamatot a varázsló számára. Ez a munkafolyamat állhat egy SQL script-ből, nyomkövető mentéséből, SQL batch-ból, RPC esemény osztályból és Event Class valamind Text adatoszlopokból.
Ha nincs meglévő munkafolyamatunk a varázsló számára, akkor az SQL Profiler segítségével készíthetünk egyet. Készítsünk egy olyan adatgyűjtést, ami tipikusan jellemző adatbázis aktivitás eseményeket tartalmaz, és a varázsló ezt ezután analizálja, majd készít egy javaslatot, ami javítani fog az adatbázis teljesítményén.
A varázsló működése
Az Index Tuning Wizard képes:
  • Javaslatot készíteni a legjobb index összeállításról egy adott munkafolyamat számára, a lekérdezés optimalizálót használva a munkafolyamat lekérdezéseinek analizálására.
  • Elemezni tudja az ajánlott változtatások hatásait az index használata, a lekérdezések táblák közötti megoszlása és a munkafolyamat lekérdezéseinek teljesítménye tekintetében.
  • Javaslatokat készít az adatbázis hangolására néhány problémás lekérdezés esetében.
  • Engedélyezi a javaslatok finomhangolását a bonyolultabb opciók egyedi beállításának lehetőségével.
Egy elkészített javaslat SQL utasításokból áll, ami lefuttatható és ezáltal létrehozhatóak az új, eredményesebb indexek, vagy törölhetők a régi, kevésbé alkalmas indexek. A javaslat elkészülte után futtathatjuk az utasításokat azonnal, későbbre ütemezhetjük, vagy SQL script-be menthetjük.
A varázsló indítása
Ha a sysadmin role tagjai vagyunk, akkor az SQL Query Analyzer segítségével elkészített, vagy betöltött egyszerű lekérdezés vagy batch elemzését is elvégezhetjük. (A CTRL+I hotkey, vagy a Query legördülő menü Index Tuning Wizard parancsával indítható a varázsló.)
Enterprise manager segítségével is el tudjuk indítani a varázslót, ha a Tools legördülő menü Wizards... parancsát választjuk, majd a Management elemei közül kiválasztjuk a varázslót.
Az első lapon választhatjuk ki a szervert és az adatbázist. Egy checkbox segítségével tudjuk beállítani, hogy a meglévő indexeket megtartsa-e a vizsgálat során, vagy hagyja figyelmen kívül. Ha kikapcsoljuk a meglévő indexeket, akkor előfordulhat, hogy törlésükre, vagy módosításukra is kiterjed a javaslat.
Indexelt nézetek használatát is engedélyezhetjük. Érdemes őket használni olyan platform-okon, ahol ez támogatott.
Tuning mód beállításainál három lehetséges opció áll rendelkezésre:
  • Fast: a leggyorsabb elemzés, új klaszter indexek nem javasoltak, a meglévő indexek mindenképpen megmaradnak, és új indexelt nézeteket sem javasol.
  • Medium: hatékonyabb, de lassabb vizsgálat, itt nincsenek érvényben az előző megszorítások, és ez az alapértelmezett.
  • Thorough: teljes körű, mindenre kiterjedő vizsgálat, ez a leghatékonyabb, de a leglassabb, és leginkább teljesítményigényes elemzési forma.
A második lapon választhatunk saját munkafolyamat állomány, SQL szerver tábla, vagy Query Analyzer kiválasztás között. Ez utóbbi természetesen csak akkor él, amikor Query Analyzerből indítjuk a varázslót.
A harmadik lapon tudjuk beállítani, hogy melyik táblákat vizsgálja a varázsló, a negyedik lapon pedig megkapjuk a javaslatot. Itt az Analysis... gomb segítségével különféle jelentéseket tekinthetünk át az elemzés eredményéről.