Használati forgatókönyvek a Lekérdezéstárhoz

A KÖVETKEZŐKRE VONATKOZIK: Azure Database for PostgreSQL – Önálló kiszolgáló

Fontos

Azure Database for PostgreSQL – Az önálló kiszolgáló a kivezetési útvonalon van. Határozottan javasoljuk, hogy frissítsen az Azure Database for PostgreSQL rugalmas kiszolgálóra. A rugalmas Azure Database for PostgreSQL-kiszolgálóra való migrálással kapcsolatos további információkért lásd: Mi történik az önálló Azure Database for PostgreSQL-kiszolgálóval?

A Lekérdezéstárat számos olyan forgatókönyvben használhatja, amelyekben a kiszámítható számítási feladatok teljesítményének nyomon követése és fenntartása kritikus fontosságú. Tekintse az alábbi példákat:

  • A legköltségesebb lekérdezések azonosítása és finomhangolása
  • A/B tesztelés
  • A teljesítmény stabilan tartása a frissítések során
  • Alkalmi számítási feladatok azonosítása és fejlesztése

Drága lekérdezések azonosítása és finomhangolása

A leghosszabb ideig futó lekérdezések azonosítása

Az Azure Portal Lekérdezési teljesítményelemzés nézetével gyorsan azonosíthatja a leghosszabb ideig futó lekérdezéseket. Ezek a lekérdezések általában jelentős mennyiségű erőforrást használnak fel. A leghosszabb ideig futó kérdések optimalizálása javíthatja a teljesítményt azáltal, hogy felszabadítja a rendszeren futó más lekérdezések által használt erőforrásokat.

A teljesítménybeli eltérésekkel rendelkező lekérdezések célként való megcélzása

A Lekérdezéstár időablakokba szeleteli a teljesítményadatokat, így nyomon követheti a lekérdezések teljesítményét. Ez segít pontosan meghatározni, hogy mely lekérdezések járulnak hozzá a teljes idő növekedéséhez. Ennek eredményeképpen célzott hibaelhárítást végezhet a számítási feladatban.

Költséges lekérdezések finomhangolása

Ha egy optimálisnál alacsonyabb teljesítményű lekérdezést azonosít, a művelet a probléma jellegétől függ:

  • A Teljesítmény Javaslatok segítségével állapítsa meg, hogy vannak-e javasolt indexek. Ha igen, hozza létre az indexet, majd a Lekérdezéstár használatával értékelje ki a lekérdezés teljesítményét az index létrehozása után.
  • Győződjön meg arról, hogy a statisztikák naprakészek a lekérdezés által használt alapul szolgáló táblákhoz.
  • Fontolja meg a drága lekérdezések újraírását. Használja ki például a lekérdezésparaméterezés előnyeit, és csökkentse a dinamikus SQL használatát. Optimális logikát valósíthat meg az adatok olvasása során, például adatszűrés alkalmazása adatbázisoldalon, nem alkalmazásoldalon.

A/B tesztelés

A Lekérdezéstár használatával összehasonlíthatja a számítási feladatok teljesítményét a bevezetni kívánt alkalmazásmódosítás előtt és után. Példák a Lekérdezéstár használatával a környezet vagy az alkalmazások számítási feladatok teljesítményére gyakorolt hatásának felmérésére:

  • Az alkalmazás új verziójának bevezetése.
  • További erőforrások hozzáadása a kiszolgálóhoz.
  • Hiányzó indexek létrehozása drága lekérdezések által hivatkozott táblákon.

Az alábbi forgatókönyvek bármelyikében alkalmazza a következő munkafolyamatot:

  1. Futtassa a számítási feladatot a Lekérdezéstárral a tervezett módosítás előtt a teljesítménykonfiguráció létrehozásához.
  2. Alkalmazásmódosítás(ok) alkalmazása az ellenőrzött időpontban.
  3. Folytassa a számítási feladat futtatását a rendszer teljesítményképének létrehozásához a módosítás után.
  4. Hasonlítsa össze a módosítás előtti és utáni eredményeket.
  5. Döntse el, hogy megtartja-e a módosítást vagy a visszaállítást.

Alkalmi számítási feladatok azonosítása és fejlesztése

Egyes számítási feladatok nem rendelkeznek domináns lekérdezésekkel, amelyeket az alkalmazás általános teljesítményének javítása érdekében hangolhat. Ezeket a számítási feladatokat általában viszonylag nagy számú egyedi lekérdezés jellemzi, amelyek mindegyike a rendszererőforrások egy részét használja fel. Az egyes egyedi lekérdezések ritkábban lesznek végrehajtva, így a futásidejük használata nem kritikus fontosságú. Másrészt, mivel az alkalmazás folyamatosan új lekérdezéseket hoz létre, a rendszererőforrások jelentős része a lekérdezések fordítására kerül, ami nem optimális. Ez a helyzet általában akkor fordul elő, ha az alkalmazás lekérdezéseket hoz létre (tárolt eljárások vagy paraméteres lekérdezések használata helyett), vagy ha az alapértelmezés szerint lekérdezéseket generáló objektum-relációs leképezési keretrendszerekre támaszkodik.

Ha ön felügyeli az alkalmazáskódot, érdemes lehet újraírni az adatelérési réteget tárolt eljárások vagy paraméteres lekérdezések használatára. Ez a helyzet azonban alkalmazásmódosítások nélkül is javítható, ha a lekérdezésparaméterezést a teljes adatbázisra (az összes lekérdezésre) vagy az azonos lekérdezéskivonattal rendelkező egyes lekérdezéssablonokra kényszeríti.

Következő lépések