Lekérdezésterv-vizualizáció

A PostgreSQL-bővítmény lekérdezésterv-megjelenítőjével anélkül vizsgálhatja meg a PostgreSQL-kimenetet EXPLAIN , hogy elhagyná a szerkesztőt. Létrehozhat egy tervet a lekérdezésszerkesztőből vagy a PostgreSQL Lekérdezési eredmények panelről, vagy megnyithatja a szerkesztő meglévő JSON- vagy TEXT-tervkimenetét. A vizualizáló ugyanúgy működik a Visual Studio Code és a Cursor alkalmazásban.

Prerequisites

  • Telepített PostgreSQL-bővítmény .
  • Aktív kapcsolat a PostgreSQL-kiszolgálóval, ha élő tervet szeretne létrehozni a lekérdezésszerkesztőből vagy a PostgreSQL Lekérdezés eredményei panelről.
  • Opcionális AI-asszisztens, ha AI-val támogatott elemzést szeretne: telepítse a GitHub Copilot bővítményt a Visual Studio Code-ba, vagy használja a Cursor beépített mesterséges intelligenciáját.
  • A nem kötelező EXPLAIN kimenet már meg van nyitva a szerkesztőben, ha egy mentett tervet szeretne importálni adatbázishoz való csatlakozás nélkül.

Terv megnyitásának kiválasztása

Használja a munkafolyamatnak megfelelő belépési pontot:

  • Lekérdezésszerkesztő: Válassza a Lekérdezésterv vizualizációja (PostgreSQL) lehetőséget a szerkesztő eszköztárán. Ha először nem jelöl ki szöveget, a bővítmény az aktuális szerkesztő tartalmát használja.
  • PostgreSQL Lekérdezési eredmények panel: Futtasson egy lekérdezést, majd válassza a Lekérdezésterv vizualizációja lehetőséget a PostgreSQL Lekérdezés eredményei panel eszköztárán az eredményhalmazt eredményező lekérdezés vizsgálatához.
  • Importált terv: Nyissa meg a PostgreSQL-terv kimenetét tartalmazó szerkesztőlapot, majd futtassa a PGSQL: Lekérdezésterv megjelenítése a Szerkesztőbőlparancskatalógusból.

Terv létrehozása élő lekérdezésből

  1. Nyissa meg a vizsgálni kívánt SQL-fájlt a lekérdezésszerkesztőben.
  2. Csatlakozzon a céladatbázishoz.
  3. Válassza ki az elemezni kívánt állítást. Ha üresen hagyja a kijelölést, a bővítmény az aktuális szerkesztő tartalmát használja.
  4. Válassza a Lekérdezésterv vizualizációja (PostgreSQL) lehetőséget a szerkesztő eszköztárán. Először a lekérdezést is futtathatja, majd a PostgreSQL Lekérdezési eredmények panelen válassza a Lekérdezésterv megjelenítése lehetőséget.
  5. A Lekérdezésterv konfigurálása területen válassza ki a kívánt formátumot és beállításokat, majd nyomja le az Enter billentyűt.
  6. Tekintse át a tervet a vizualizációban.

Lekérdezésterv beállításainak konfigurálása

A Lekérdezésterv konfigurálása választóval kiválaszthatja a kimeneti formátumot és a EXPLAIN futtatandó beállításokat.

Option A változások
JSON Strukturált tervkimenetet ad vissza, amely a legjobban működik a vizualizáció nézeteiben.
SZÖVEG Visszaadja a PostgreSQL egyszerű szöveges EXPLAIN kimenetét, és megőrzi a forrást a Forrás nézetben.
ELEMEZNI Végrehajtja a lekérdezést, és tényleges futásidejű statisztikákat tartalmaz.
PUFFEREK Pufferhasználati statisztikákat ad hozzá. A kijelölés automatikusan engedélyezi az ELEMZÉSt.
IDŐZÍTÉS Tényleges időzítési adatokat ad hozzá. A kijelölés automatikusan engedélyezi az ELEMZÉSt.
WAL Wal-használati statisztikákat ad hozzá. A kijelölés automatikusan engedélyezi az ELEMZÉSt.
RÉSZLETES További kimeneti adatokat, például sémát és oszlopinformációkat ad hozzá.
KÖLTSÉGEK Tartalmazza a becsült indítási és a teljes költségértékeket.
BEÁLLÍTÁSOK Az alapértelmezetttől eltérő Planner-beállításokat tartalmaz.

Caution

EXPLAIN ANALYZE futtatja a lekérdezést. Ha az utasítás módosítja az adatokat, például INSERT, UPDATE, DELETEvagy TRUNCATE, a bővítmény egy megerősítési kérést jelenít meg a folytatás előtt.

Mentett terv megnyitása a szerkesztőből

  1. Nyisson meg egy Olyan szerkesztőlapot, amely PostgreSQL-kimenetet EXPLAIN tartalmaz JSON vagy TEXT formátumban.
  2. Nyissa meg a Parancspalettát (Ctrl+Shift+P).
  3. Futtassa a PGSQL-t: Lekérdezésterv megjelenítése a Szerkesztőből.
  4. Tekintse át az importált tervet a vizualizációban.

Ehhez a munkafolyamathoz nincs szükség aktív adatbázis-kapcsolatra. A parancs beolvassa a szerkesztő aktuális tartalmát, így használható kimásolt tervkimenettel, mentett .json- vagy .txt-fájlokkal, illetve egy ideiglenes szerkesztőbe beillesztett tervszöveggel.

Váltás a nézetek között

Az eszköztár nézetválasztójával válthat a Fanézet, Jégcsap nézet, Táblázatnézet és Forrásnézet között.

Fa nézet

Alapértelmezés szerint megnyílik a fanézet. Akkor használja, ha csomópontonkénti diagramot szeretne készíteni a végrehajtási tervről.

  • A nagyítási vezérlőkkel nagyíthat, kicsinyíthet, alaphelyzetbe állíthatja a nézetet, vagy beillesztheti a tervet az ablakba.
  • A beállítások panelen módosíthatja az elrendezés irányát és a drága vagy szokatlan csomópontokat kiemelő színmetrikát.
  • Jelöljön ki egy csomópontot a részletek panel megnyitásához.
  • A jobb gombbal egy csomópontra kattintva másik nézetre ugorhat, vagy elemezheti a csomópontot az AI-asszisztenssel.

Táblázat nézet

Táblanézetet akkor használhat, ha egyszerre több csomópontot szeretne rendezni, keresni és összehasonlítani.

  • A terv összecsukható fa helyett rendezhető táblázatba van lapolva.
  • A keresőmező csak Táblázat nézetben jelenik meg.
  • A keresés a következőkre terjed ki: csomóponttípus, kapcsolat neve, index neve, álnév, szűrőszöveg és alterv neve.
  • Az előre beállított választóval a teljesítményre, a becslésre, a hatékonyságra vagy az I/O-ra összpontosíthat, vagy testre szabhatja a látható metrikaoszlopokat.

Jégcsapdiagram

Használja a Icicle View nézetet, ha a teljes szélességet kitöltő vizuális összefoglalót szeretne arról, hogy hol összpontosulnak a költségek, az idő vagy a pufferek használata.

  • Az Icicle View egy külön nézet, nem pedig egy panel a Fa nézetben.
  • A beállítások panelen válthat előre beállított beállítások között, módosíthatja a szélességi metrikát, módosíthatja a színmetrikát, és válthat a saját és a teljes hatókör között, ahol támogatott.
  • Mutasson egy blokkra a metrikák vizsgálatához, vagy kattintson a jobb gombbal egy blokkra a részletek megnyitásához vagy egy másik nézetre való áttéréshez.

Forrásnézet

Ha az eredeti terv kimenetét szeretné használni, használja a Forrásnézetet .

  • A Fa és Szöveg mód közötti váltáshoz válassza a Beállítások lehetőséget.
  • A panelen látható, hogy az importált vagy létrehozott forrás JSON vagy SZÖVEG.
  • Az Összes kibontása és az Összes összecsukása csak akkor jelenik meg az eszköztáron, ha a Forrásnézet aktív.
  • Szöveg módban a terv egy csak olvasható szerkesztőben nyílik meg. Fa módban az elemzési struktúrát összecsukható faként tekintheti meg.

A Terv másolása lehetőséget választva bármikor átmásolhatja az aktuális terv forrását a vágólapra. A JSON-tervek formázott formában vannak másolva, a szövegcsomagok pedig eredeti forrásként lesznek másolva.

A terv csomópontjainak vizsgálata

A részletek panel megnyitásához válasszon ki egy csomópontot a fa nézetben, a táblázatnézetben vagy a jégcsapdiagram nézetben.

  • Általánosan megjeleníti a csomópont típusát, a főbb metrikákat és a tervspecifikus elemzési részleteket.
  • Az I/O akkor jelenik meg, ha a terv pufferadatokat tartalmaz.
  • A feltételek akkor jelennek meg, ha a csomópont szűrőket, csatlakozási feltételeket vagy hasonló predikátumokat tesz elérhetővé.

Ezen a panelen összehasonlíthatja a becsült és a tényleges munkát, megvizsgálhatja a puffererős csomópontokat, és ellenőrizheti, hogy mely predikátumok vezetik a tervet.

Tervek elemzése az AI-asszisztenssel

Használja az AI-asszisztenst, ha azt szeretné, hogy a bővítmény az aktuális tervet kontextusként használva megnyisson egy elemző csevegést.

A teljes terv elemzése

  1. Nyissa meg a tervet a vizualizációban.
  2. Válassza az Elemzés a Copilottal lehetőséget (vagy a Cursorban az Elemzés AI-jal lehetőséget).
  3. Adja meg, hogy az SQL-lekérdezés szövegét belefoglalja-e az elemzésbe.
  4. Tekintse át az ügynök módban megnyíló új csevegési munkamenetet.

Ha a terv a PGSQL-ből származik: Lekérdezésterv megjelenítése a Szerkesztőből , és még nincs hasznos SQL-szöveg, a bővítmény megkérheti, hogy először adja meg a lekérdezést, hogy az AI jobb kontextusban legyen.

Egy csomópont elemzése

  1. Kattintson a jobb gombbal arra a csomópontra, amelyet meg szeretne vizsgálni.
  2. Válassza a Ennek a csomópontnak az elemzése a Copilottal lehetőséget (vagy a Cursorban a Ennek a csomópontnak az elemzése MI-vel lehetőséget).
  3. Tekintse át az új ügynök módú csevegési munkamenetet csomópontspecifikus elemzéshez.

Annak szabályozása, hogy az SQL-szöveg szerepel-e benne

A pgsql.copilot.autoAttachQuery beállítás szabályozza, hogy a bővítmény hogyan kezeli az SQL-szöveget az AI-elemzés indításakor:

  • Kérdezze meg, hogy az SQL-t minden alkalommal belefoglalja-e
  • Mindig adja meg az SQL-t kérés nélkül
  • Soha ne tartalmazza az SQL-t

Ha úgy dönt, hogy belefoglalja vagy kizárja az SQL-t a parancssorból, a bővítmény azt is felajánlhatja, hogy a jövőbeli munkamenetek esetében is emlékezni fog erre a választásra.

A lekérdezésterv eszköz használata Ügynök módban

A vizualizáló gyorsítótárazza az aktuális tervet, és elérhetővé teszi azt az AI-asszisztens számára a pgsql_query_plan eszközön keresztül, vagy támogatott gazdagépeken ennek MCP-megfelelőjén keresztül. Az eszköz a következő műveleteket támogatja:

Action Használja a következőhöz:
get_summary Részletes részletezés előtt részletes összefoglalót kaphat a tervről.
get_node Vizsgáljon meg egy csomópontot ID alapján.
get_subtree Vizsgálja meg a csomópontot a leszármazottaival együtt.
list_nodes Csomópontok keresése típus vagy minimális költség szerint.

Ha azt szeretné, hogy az AI a vizualizáció helyett az aktív lekérdezésből induljon ki, használja a szerkesztő AI Lekérdezési műveletek almenüjének Lekérdezési teljesítményének elemzése parancsát. Használja a vizualizációt, ha először saját maga szeretné megvizsgálni a tervet, majd adja át a pontos tervet az AI-nek.

Tippek a teljesítményelemzéshez

  • Használja az ANALYZE parancsot , ha biztonságosan futtatja az utasítást. Önmagukban a becslések elrejthetik a sorok számára vonatkozó hibás feltételezéseket.
  • Hasonlítsa össze a becsült és a tényleges sorok számát az elavult statisztikák vagy a szűrési szelektivitási problémák észleléséhez.
  • Váltson táblázatos nézetre , ha a csomag nagy méretű, és keresésre vagy egymás melletti metrika-összehasonlításra van szüksége.
  • Váltson forrásnézetre , ha problémához, kódvizsgálathoz vagy csapattagokkal folytatott beszélgetéshez szüksége van a nyers tervre.