Všechny databáze jsou o dotazech. Uložíte si do nich svá data a pak je musíte umět nějakým způsobem získat. Zde přicházejí dotazy – napíšete je v nějakém jazyce, strukturovaném nebo ne, tímto způsobem definujete, jaká data chcete získat. V ideálním případě by tyto dotazy byly rychlé, koneckonců nechceme čekat na naše data. Existuje mnoho nástrojů, které vám umožní pochopit, jak se vaše dotazy chovají a jak fungují. V tomto příspěvku na blogu porovnáme pgDash a ClusterControl. V obou případech je výkon dotazů jen součástí funkčnosti. Bez dalšího se na ně pojďme podívat.
Co je pgDash?
pgDash je nástroj určený pro monitorování PostgreSQL a sledování výkonu dotazů je jednou z dostupných funkcí.
pgDash vyžaduje k získání dat příkazy pg_stat_statements. Je možné zobrazit dotazy na bázi databáze. Můžete definovat, které sloupce mají být viditelné (ve výchozím nastavení se některé nezobrazují, aby byla data snáze čitelná). Můžete vidět různé typy dat, jako je doba provádění (průměrná, maximální, minimální, celková), ale také informace o dočasných blocích, řádcích, ke kterým se přistupuje, přístupu k disku a zásahu do vyrovnávací paměti. To vytváří pěkný přehled o tom, jak daný dotaz funguje a co by mohlo být důvodem, proč nefunguje efektivně. Data můžete třídit pomocí libovolného sloupce a hledat dotazy, které jsou například nejpomalejší nebo které zapisují nejvíce dočasné bloky.
V případě potřeby můžete vyhledat dotazy provedené v definovaném časovém okně.
Zde je podrobnost jedna minuta.
Pro každý dotaz v seznamu můžete kliknout a zobrazit podrobnější statistiky.
Můžete vidět přesný dotaz, některá data na něm (přístup na disk, sdílený přístup k vyrovnávací paměti, dočasné blokování přístupu). Je také možné povolit testování a ukládání prováděcího plánu pro dotazy. Nakonec můžete vidět grafy ukazující, jak se výkon dotazu měnil v čase.
Celkově pgDash představuje pěkný náhled na metriky výkonu dotazů v PostgreSQL.
ClusterControl PostgreSQL Query Monitoring &Management
ClusterControl přichází s Query Monitor, který má uživatelům poskytnout přehled o výkonu jejich dotazů. Query Monitor lze použít pro PostgreSQL, ale také pro MySQL a Galera Cluster.
ClusterControl zobrazuje data agregovaná napříč všemi databázemi a hostiteli v clusteru. Seznam dotazů obsahuje informace o metrikách souvisejících s výkonem. Počet výskytů, zkoumané řádky, dočasné tabulky, maximální, průměrná a celková doba provádění. Seznam lze třídit pomocí některých sloupců (výskyty, max., průměr, směrodatná odchylka a celková doba provedení).
Na každý dotaz lze kliknout, zobrazuje celý text dotazu, některé další podrobnosti a obecné tipy pro optimalizaci.
ClusterControl také přichází s modulem Query Outliers.
Pokud existují dotazy, které se odchylují od průměrného výkonu daného konkrétního dotazu typu, budou zobrazeny v této sekci, což uživateli umožní lépe pochopit, které dotazy se chovají nekonzistentně, a pokusit se najít hlavní příčinu tohoto problému.
Metriky tabulek a indexů PostgreSQL
Kromě dat přímo souvisejících s výkonem dotazů oba nástroje poskytují informace o dalších interních zařízeních, které mohou výkon dotazů ovlivnit.
pgDash má sekci „Nástroje“, ve které můžete shromažďovat informace o indexech, velikosti tabulky a nadýmání:
Podobná data jsou k dispozici v ClusterControl, ve Statistikách dotazů:
Je možné zkontrolovat I/O statistiky pro tabulky a indexy, tabulky a indexy nadýmání, nepoužité nebo duplicitní indexy. Můžete také zkontrolovat, ke kterým tabulkám je pravděpodobnější přistupovat pomocí indexového nebo sekvenčního prohledávání. Můžete také zkontrolovat velikost největších tabulek a databází.
Závěr
Doufáme, že tento krátký blog vám poskytne přehled o tom, jak si ClusterControl porovnává s pgDash ve funkcích souvisejících s výkonem dotazů. Mějte prosím na paměti, že ClusterControl je určen nejen k tomu, aby vám pomohl s monitorováním výkonu, ale také k sestavení a nasazení zásobníků HA pro více databází Open Source, provádění správy konfigurace, definování a spouštění plánů zálohování a mnoha dalších funkcí. Pokud máte o ClusterControl zájem, můžete si jej zdarma stáhnout.