Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
A következőkre vonatkozik:Azure SQL Database
Az Azure SQL Database az alkalmazással tanul és alkalmazkodik. Az Azure SQL Database számos adatbázis-tanácsadóval rendelkezik, amelyek testre szabott javaslatokat nyújtanak a teljesítmény maximalizálásához. Ezek az adatbázis-tanácsadók folyamatosan értékelik és elemzik a használati előzményeket, és olyan számítási feladatok alapján nyújtanak javaslatokat, amelyek segítenek a teljesítmény javításában.
Teljesítmény áttekintése
Az Azure Portal teljesítmény-áttekintése összefoglalja az adatbázis teljesítményét, és segít a teljesítmény finomhangolásában és hibaelhárításában.
- Ha van ilyen, a Javaslatok csempe az adatbázis finomhangolási javaslatainak lebontását biztosítja. Ha kiválasztja ezt a csempét, a teljesítményajánlási lehetőségekhez vezet.
- A Finomhangolási tevékenység csempe az adatbázis folyamatban lévő és befejezett finomhangolási műveleteinek összegzését tartalmazza, így gyorsan áttekintheti a finomhangolási tevékenység előzményeit. Ha bejelöli ezt a csempét, megnyitja az adatbázis javaslatait és finomhangolási előzményeit. További információ: automatikus hangolás.
- Az automatikus finomhangolási csempe az adatbázis automatikus finomhangolási konfigurációját jeleníti meg (az adatbázisra automatikusan alkalmazott finomhangolási beállításokat). A csempe kiválasztásával megnyílik az automatizálás konfigurációs párbeszédpanelje. Az adatbázisindexek és a lekérdezés-végrehajtási tervek automatikus hangolásáról további információt az automatikus hangolás című témakörben talál.
- Az Adatbázis-lekérdezések csempe az adatbázis lekérdezési teljesítményének összegzését jeleníti meg (általános DTU-használat és a leggyakoribb erőforrás-használó lekérdezések). Ha bejelöli ezt a csempét, a Lekérdezési teljesítményelemzés lehetőséget választja.
- Az alapértelmezett diagram összefoglalja az adatbázis-tevékenység elmúlt 24 óráját, és lehetőség van a legutóbbi tevékenységek nagyítására. A halmozott sávdiagramok a leggyakoribb lekérdezéseket cpu szerint elemzik, a többsoros gráf pedig a számítási feladatokat cpu, adat IO és Napló IO szerint jelöli. Jelölje ki a gráfban az egyes halmozott sávokat, amelyek mindegyike gyorsítótárazott lekérdezési tervet jelöl. Tekintse meg a Lekérdezési teljesítményelemzés lapot, és azonosítsa a számítási feladat legdrágább lekérdezéseit. További információ: Lekérdezési teljesítményelemzések.
A navigációs menüben az Azure portálon válassza az Intelligens teljesítmény alatti Teljesítmény áttekintése lapot az Azure SQL-adatbázisához.
Teljesítményjavaslat beállításai
Az Azure SQL Database-ben elérhető teljesítményjavaslat-beállítások a következők:
| Teljesítményjavaslat | Önálló adatbázis és készletezett adatbázis támogatása | Példányadatbázis támogatása |
|---|---|---|
| Indexjavaslatok létrehozása – Olyan indexek létrehozását javasolja, amelyek javíthatják a számítási feladatok teljesítményét. | Igen | Nem |
| Index elvetésére vonatkozó javaslatok – A redundáns és duplikált indexek eltávolítását javasolja naponta, kivéve az egyedi indexeket és a hosszú ideig (>90 napig) nem használt indexeket. Vegye figyelembe, hogy ez a beállítás nem kompatibilis a partícióváltást és indexmutatókat használó alkalmazásokkal. A nem használt indexek elvetése nem támogatott a prémium és az üzleti szempontból kritikus szolgáltatási szintek esetében. | Igen | Nem |
| Lekérdezési javaslatok paraméterezése (előzetes verzió) – Kényszerített paraméterezést javasol azokban az esetekben, amikor egy vagy több, folyamatosan újrafordított lekérdezéssel rendelkezik, de ugyanazzal a lekérdezés-végrehajtási tervvel végződik. | Igen | Nem |
| Sémaproblémák megoldása (előzetes verzió) – A sémajavításra vonatkozó javaslatok akkor jelennek meg, ha az Azure SQL Database rendellenességet észlel az adatbázisban előforduló sémával kapcsolatos SQL-hibák számában. A Microsoft jelenleg elavultnak minősíti a "Sémaproblémák kijavítása" javaslatokat. | Igen | Nem |
A teljesítményjavaslatok alkalmazásához tekintse meg a javaslatok alkalmazását. A javaslatok állapotának megtekintéséhez tekintse meg a figyelési műveleteket.
A múltban alkalmazott hangolási műveletek teljes előzményeit is megtalálhatja.
Indexjavaslatok létrehozása
Az Azure SQL Database folyamatosan figyeli a futó lekérdezéseket, és azonosítja azokat az indexeket, amelyek javíthatják a teljesítményt. Miután elég biztos abban, hogy egy adott index hiányzik, létrejön egy új index-létrehozási javaslat.
Az Azure SQL Database megbízhatóságot épít ki az index által az idő során elért teljesítménynövekedés becslésével. A becsült teljesítménynövekedéstől függően a javaslatok magas, közepes vagy alacsony kategóriába vannak sorolva.
A javaslatok használatával létrehozott indexek mindig automatikusan létrehozott indexekként vannak megjelölve. A sys.indexes nézet megtekintésével megtekintheti, hogy mely indexek jönnek létre automatikusan. Az automatikusan létrehozott indexek nem tiltják le az ALTER/RENAME parancsokat.
Ha megpróbál eldobni egy oszlopot, amelyen automatikusan létrehozott index van, a parancs végrehajtódik. Az automatikusan létrehozott indexet a parancs is elveti. A normál indexek blokkolják az ALTER/RENAME parancsot az indexelt oszlopokon.
Az index-létrehozási javaslat alkalmazása után az Azure SQL Database összehasonlítja a lekérdezések teljesítményét az alapkonfiguráció teljesítményével. Ha az új index javítja a teljesítményt, a javaslat sikeresként lesz megjelölve, és elérhető a hatásjelentés. Ha az index nem javította a teljesítményt, a rendszer automatikusan visszaállítja. Az Azure SQL Database ezt a folyamatot használja annak biztosítására, hogy a javaslatok javíthassák az adatbázis teljesítményét.
Minden létrehozási indexjavaslat rendelkezik egy háttérszabályzattal, amely nem teszi lehetővé a javaslat alkalmazását, ha egy adatbázis vagy készlet erőforrás-kihasználtsága magas. A visszalépési szabályzat figyelembe veszi a CPU-t, az adat-IO-t, a napló-IO-t és az elérhető tárterületet.
Ha a CPU, az adat-IO vagy a napló IO-jának száma meghaladja a 80% az előző 30 percben, a rendszer elhalasztja az index létrehozására vonatkozó javaslatot. Ha az elérhető tárterület az index létrehozása után 10% alatt lesz, a javaslat hibaállapotba kerül. Ha néhány nap elteltével az automatikus finomhangolás továbbra is úgy véli, hogy az index előnyös lenne, a folyamat újra elindul.
Ez a folyamat addig ismétlődik, amíg nincs elegendő rendelkezésre álló tár az index létrehozásához, vagy amíg az index már nem tekinthető hasznosnak.
Indexjavaslatok elvetése
A hiányzó indexek észlelése mellett az Azure SQL Database folyamatosan elemzi a meglévő indexek teljesítményét. Ha egy index nincs használatban, az Azure SQL Database azt javasolja, hogy ezt hagyja el. Az index elvetése két esetben javasolt:
- Az index egy másik index duplikálása (ugyanaz az indexelt és tartalmazott oszlop, partícióséma és szűrők).
- Az indexet hosszabb ideig (>90 napig) nem használták.
A drop indexjavaslatok az implementáció után is végighaladnak az ellenőrzésen. Ha a teljesítmény javul, a hatásjelentés elérhető. Ha a teljesítmény csökken, a javaslat visszaáll.
Lekérdezési javaslatok paraméterezése (előzetes verzió)
A lekérdezések paraméterezésére vonatkozó javaslatok akkor jelennek meg, ha egy vagy több olyan lekérdezéssel rendelkezik, amelyeket folyamatosan újragenerálnak, de ugyanazt a lekérdezés végrehajtási tervet kapják. Ez a feltétel lehetőséget teremt a kényszerített paraméterezés alkalmazására. A kényszerített paraméterezés viszont lehetővé teszi a lekérdezési tervek gyorsítótárazását és újrafelhasználását a jövőben, ami javítja a teljesítményt és csökkenti az erőforrás-használatot.
Először minden lekérdezést össze kell állítani egy végrehajtási terv létrehozásához. Minden létrehozott terv hozzáadódik a tervgyorsítótárhoz. Ugyanannak a lekérdezésnek a későbbi végrehajtása újra felhasználhatja ezt a tervet a gyorsítótárból, ami szükségtelenné teszi a további fordítást.
A nem paraméteres értékeket tartalmazó lekérdezések teljesítményterheléshez vezethetnek, mivel a végrehajtási terv minden alkalommal újrafordul, amikor a nem paraméteres értékek eltérőek. Sok esetben ugyanazok a különböző paraméterértékekkel rendelkező lekérdezések ugyanazt a végrehajtási tervet generálják. Ezek a tervek azonban továbbra is külön kerülnek hozzáadásra a terv gyorsítótárba.
A végrehajtási tervek újrafordításának folyamata adatbázis-erőforrásokat használ, növeli a lekérdezés időtartamát, és túlcsordítja a terv gyorsítótárát. Ezek az események viszont a tervek kitörléséhez vezetnek a gyorsítótárból. Ez a viselkedés az adatbázis kényszerített paraméterezési beállításának beállításával módosítható.
A javaslat hatásának becsléséhez a rendszer összehasonlítja a tényleges CPU-használatot és az előre jelzett processzorhasználatot (mintha a javaslatot alkalmazták volna). Ez a javaslat segíthet a cpu-megtakarítás elérésében. Emellett csökkentheti a lekérdezések időtartamát és a tervkészlettár terhelését, ami azt jelenti, hogy több terv maradhat a gyorsítótárban, és újra felhasználható. Ezt a javaslatot gyorsan alkalmazhatja az Alkalmaz parancs kiválasztásával.
A javaslat alkalmazása után perceken belül engedélyezi a kényszerített paraméterezést az adatbázison. Elindítja a monitorozási folyamatot, amely körülbelül 24 óráig tart. Ezen időszak után megjelenik az érvényesítési jelentés. Ez a jelentés az adatbázis processzorhasználatát mutatja be a javaslat alkalmazása előtt és után 24 órával. Az Azure SQL Database Advisor biztonsági mechanizmussal rendelkezik, amely automatikusan visszaállítja az alkalmazott javaslatot, ha teljesítményregressziót észleltek.
Sémaproblémák megoldására vonatkozó javaslatok (előzetes verzió)
Fontos
A Microsoft jelenleg elavultnak minősíti a "Sémaproblémák kijavítása" javaslatokat.
Az sémahibák javítására vonatkozó ajánlások akkor jelennek meg, amikor az Azure SQL Database rendellenességet észlel az adatbázisban előforduló sémával kapcsolatos SQL-hibák számában. Ez a javaslat általában akkor jelenik meg, ha az adatbázis egy órán belül több sémával kapcsolatos hibát (érvénytelen oszlopnév, érvénytelen objektumnév stb.) tapasztal.
A "sémaproblémák" szintaxishibák osztályát képezik. Ezek akkor fordulnak elő, ha az SQL-lekérdezés definíciója és az adatbázisséma definíciója nincs igazítva. Előfordulhat például, hogy a lekérdezés által várt oszlopok egyike hiányzik a céltáblából, vagy fordítva.
A "Sémaproblémák kijavítása" javaslat akkor jelenik meg, ha az Azure SQL Database rendellenességet észlel az adatbázisban előforduló sémával kapcsolatos SQL-hibák számában. Az alábbi táblázat a sémaproblémákkal kapcsolatos hibákat mutatja be:
| SQL-hibakód | Message |
|---|---|
| 201 | A "" eljárás vagy függvény a "" paramétert várja, amely nem lett megadva. |
| 207 | Érvénytelen "*" oszlopnév. |
| 208 | Érvénytelen "*" objektumnév. |
| 213 | Az oszlopnév vagy a megadott értékek száma nem egyezik a tábladefinícióval. |
| 2812 | A(z) '*' tárolt eljárás nem található. |
| 8144 | Az eljárás vagy függvény * túl sok argumentumot kapott megadva. |
Egyéni alkalmazások
A fejlesztők fontolóra vehetik egyéni alkalmazások fejlesztését az Azure SQL Database teljesítményjavaslatai alapján. Az adatbázis portálján felsorolt javaslatok a Get-AzSqlDatabaseRecommendedAction API-val érhetők el.
Következő lépések
- Az adatbázisindexek automatikus hangolásáról és a lekérdezés-végrehajtási tervekről további információt az Azure SQL Database automatikus hangolásában talál.
- Az adatbázis teljesítményének figyelésével kapcsolatos további információkért tekintse meg az adatbázis-figyelőt.
- A lekérdezési teljesítményelemzések segítségével megismerheti és megtekintheti a leggyakoribb lekérdezések teljesítményhatását.