EDB Postgres Enterprise Manager – w skrócie PEM, to graficzne narzędzie do zarządzania, monitorowania i optymalizacji baz PostgreSQL. Jest rozwinięciem popularnego projektu open source o nazwie pgAdmin. Dla tych z was, którzy mieli do czynienia ze starszymi wersjami pgAdmin lub PEM, nowa wersja EDB Postgres Enterprise Manager 7.2 czy też pgAdmin4 będzie niemałym zaskoczeniem. Zmieniono w niej bardzo wiele, łącznie z technologią, w której została napisana. Nowy Postgres Enterprise Manager 7.2 został napisany w bardzo ostatnio popularnym mikroframeworku dla Pythona – Flask, a co za tym idzie, cały kod narzędzia został całkowicie przepisany.
W tym artykule postaram się przybliżyć podstawowe zmiany, które pojawiły się w nowej wersji PEM 7.2.
Autouzupełnianie nazw
Nareszcie mamy możliwość używania rozszerzonego autouzupełniania. Nowy Postgres Enterprise Manager, w przeciwieństwie do starszych wersji, podpowiada już nie tylko nazwy tabel, znajdujących się w klauzuli FROM. Umożliwia listowanie nazw kolumn, stałych, natywnych funkcji takich jak generate_series i parametrów serwera. Tak jak poprzednio listę możliwych podpowiedzi wyświetlamy za pomocą klawiszy Ctrl+Spacja. Wybór zatwierdzamy klawiszem Enter.
Ulepszona Historia Zapytań
W poprzednich wersjach przeglądanie historii uprzednio wykonanych zapytań nie należało do najprostszych. Cała historia miała postać czystego tekstu. Postgres Enterprise Manager w wersji 7.2 dysponuje przyjaznym interfejsem agregującym zapytania z historii. Kliknięcie jednego z nich powoduje pojawienie się po prawej stronie informacji na temat wykonanego zapytania, m.in. daty i czasu wykonania, czasu trwania zapytania, czy liczby zwróconych wierszy.
Dashboardy
Chyba największą zmianą w nowej wersji EDB Postgres Enterprise Manager są dynamiczne dashboardy. Już przy uruchomieniu programu mamy do dyspozycji dashboard składający się z pięciu wykresów i tabeli z czterema zakładkami gdzie możemy znaleźć dane z: pg_stat_activity, informacje o blokadach, prepared transactions i konfigurację serwera.
Na wykresach znalazły się najważniejsze zdaniem twórców PEM metryki: liczba sesji z podziałem na aktywne i nieaktywne, liczba transakcji na sekundę, ilość operacji na wierszach (Tuples In/out) i statystyka dotycząca korzystania przez bazę z buforu współdzielonego (Block I/O).
Ten sam widok możemy (w zależności od tego, czego chcemy się dowiedzieć) obserwować w wersji dla całego serwera, albo dla poszczególnych baz danych. Kliknięcie nazwy bazy w przeglądarce obiektów po lewej stronie powoduje przefiltrowanie danych względem interesującego nas obiektu.
Nie musimy na szczęście ograniczać się do zdefiniowanych widoków. Możemy utworzyć własne, skrojone na miarę dashboardy, z wybranymi przez nas metrykami. Mamy pełną dowolność, jeśli chodzi o poziom monitoringu: może to być metryka globalna, na poziomie konkretnej instancji, agenta czy bazy danych. Możemy również zarządzać uprawieniami do jego wyświetlania.
Wygodne utrzymanie
Polecenia utrzymaniowe takie jak: VACUUM, VACUUM FULL, CLUSTER czy ANALYZE można wykonać, posługując się interfejsem PEM. W przeglądarce obiektów po lewej stronie wystarczy kliknąć obiekt, na którym chcemy wykonać polecenie i z rozwijanego menu wybrać „Maintanance”.
Uproszczony Backup
W nowym Postgres Enterprise Manager znacznie uproszczono procedurę wykonywania backupu. Kilka okienek zostało zastąpione dwoma z intuicyjnym interfejsem. W pierwszym z nich wybieramy m.in. docelową lokalizację kopii zapasowej, kodowanie i format, a w drugim mamy do dyspozycji bardziej zaawansowane opcje jak na przykład: backup samych danych, backup samego schematu, zamianę COPY na INSERT, czy możliwość dodania instrukcji CREATE lub DROP DATABASE do kopii zapasowej.
… i przyjazne odzyskiwanie
Zrobiony uprzednio backup można odzyskać w równie prosty sposób. Na nowo utworzonej bazie wystarczy kliknąć prawym przyciskiem myszy, z menu wybrać „Restore”, wskazać nazwę pliku, z którego chcemy odtworzyć bazę i zatwierdzić przyciskiem „Restore”.
Artykuły powiązane:
EDB Failover Manager – narzędzie do automatycznego zarządzania klastrem Postgres
EDB Postgres Containers 2.2 – nowe możliwości konteneryzacji baz danych
EDB Postgres pomaga przystosować bazy danych do nowych przepisów GDPR
EnterpriseDB wyróżnione w raporcie Gartner Magic Quadrant 2019 dla dostawców baz danych