EuroDB

EuroDB w wersji 11.1 już dostępna

Najnowsza wersja EuroDB – platformy bazodanowej klasy Enterprise – jest już dostępna. W tym artykule przybliżymy, jakie nowości przynosi upgrade silnika bazodanowego PostgreSQL 11. Omówimy także zmiany w dodatkowych modułach, które wchodzą w skład EuroDB.

Najnowsza wersja EuroDB – platformy bazodanowej klasy Enterprise – jest już dostępna. W tym artykule przybliżymy, jakie nowości przynosi upgrade silnika bazodanowego PostgreSQL 11. Omówimy także zmiany w dodatkowych modułach, które wchodzą w skład EuroDB.

Zmiany w PostgreSQL

Najnowsze wydanie PostgreSQL w wersji 11 nadal podąża za zmienioną polityką wersjonowania, którą wprowadziło wydanie wersji 10. Dla przypomnienia – pierwsza liczba oznacza numer głównego wydania, natomiast liczba po kropce odpowiada za kolejne wydanie poprawek. Tak jak w poprzednich wydaniach i tym razem mamy do czynienia z wieloma usprawnieniami oraz kontynuacją prac, które wprowadziła poprzednia wersja. Główne obszary zmian związane są z pracami nad wydajnością systemu bazodanowego ze szczególnym uwzględnieniem bardzo dużych ilości danych. Usprawnienia można znaleźć m.in. we wsparciu partycjonowania tabel. Dodano także możliwość zarządzania transakcjami z poziomu procedur składowanych, które zostaną pokrótce omówione.

Poprawienie stabilności oraz wydajności partycjonowania

Partycjonowanie tabel, które otrzymało wsparcie w postaci specjalnej składni w wersji 10, teraz zostało wzbogacone o możliwość dzielenia tabeli za pomocą tzw. hash partitioning. Dzięki czemu PostgreSQL 11 wspiera teraz trzy możliwości dzielenia tabel:

  • dzielenie przez zakres (range partitioning) – podział następuje przez określenie zakresów dla poszczególnych tabel-partycji;
  • dzielenie przez listę (list partionioning) – podział następuje zgodnie ze sprecyzowaną listą kluczy;
  • dzielenie przez hashowanie (hash partioniong) – podział jest związany z operacją dzielenia modulo na kluczu, gdzie poszczególne reszty wskazują na to, do której tabeli-partycji ma trafić wiersz.

Ponadto, aby ułatwić zarządzenie podzieloną tabelą, została wprowadzona tabela domyślna, do której będą dopisywane wartości, które nie pasują do istniejących definicji partycji. Kolejną nowością jest możliwość utworzenia kluczy głównych, kluczy obcych, indeksów oraz wyzwalaczy na podzielonych tabelach. Dodane zostało również wsparcie dla przenoszenia wierszy do poprawnej partycji, w przypadku gdy klucz został zaktualizowany.
Zapytania odczytu z podzielonych tabel również dostały poprawki wydajnościowe poprzez użycie nowej strategii eliminacji partycji, co znacząco zmniejsza czas wykonania w zapytaniach korzystających ze skanowania sekwencyjnego.

Transakcje w procedurach składowanych

Wsparcie dla tworzenia własnych procedur w PostgreSQL jest już dostępne od ponad 20 lat. Z wydaniem PostgreSQL 11 została dodana możliwość zarządzania transakcjami z wnętrza funkcji. Dzięki tej zmianie pisanie zaawansowanych procedur po stronie serwera będzie dużo łatwiejsze. Wsparcie dla tej funkcjonalności jest oczywiście dostępne również z poziomu języków proceduralnych – PL/pgSQL, PL/Python, PL/Perl oraz PL/Tcl.

Moduł replikacji logicznej

Najnowsza wersja modułu do zarządzania replikacją logiczną wprowadza liczne ulepszenia oraz dodaje wsparcie dla najnowszej wersji PostgreSQL. Do istotnych nowości należy zaliczyć:

  • poprawione wsparcie przy replikacji ze starszych wersji rozszerzenia;
  • dodanie poprawek związanych z zarządzaniem pamięcią;
  • zwiększenie ilości danych w logach związanych z błędami (ERROR).

Co więcej, moduł otrzymał liczne poprawki błędów, co wpływa na stabilność i poprawność procesu replikacji.

Moduł analizy logów

Poza dużą ilością ulepszeń najnowsza wersja analizatora logów została wzbogacona o nowe funkcjonalności. A wśród nich:

  • dodanie nowego raportu – checkpoint distance and estimate;
  • możliwość analizy najnowszego formatu logów PgBouncer;
  • autodetekcja formatu logu pgBouncer w przypadku łączenia się z odległym serwerem;
  • możliwość analizy dla formatu jsonlog.

Moduł analizy statystyk

EuroDB Statsanalyzer w najnowszej odsłonie został znacząco odświeżony i wzbogacony o responsywny interfejs, z którego można korzystać w wygodny sposób także na urządzeniach mobilnych. Dodatkowym usprawnieniem jest możliwość włączenia tzw. „dark mode” dla osób preferujących ciemniejsze interfejsy.

Moduł zarządzania tworzeniem i odzyskiwaniem kopii bezpieczeństwa

Najnowsza wersja menedżera kopii bezpieczeństwa została wzbogacona m.in. o możliwość zrównoleglania procesu tworzenia i odzyskiwania kopii, co pozwala na znaczące przyspieszenie tworzenia backupów. Jest to szczególnie istotne w przypadku bardzo dużych klastrów bazodanowych.
Ponadto najnowsza wersja została wzbogacona o poprawki wydajnościowe oraz dodatkowe opcje wiersza poleceń, które odpowiadają m.in. za konsystencję danych potrzebnych w przypadku odtwarzania oraz ułatwienia związane z użyciem komendy recovery.

Podsumowanie

Najnowsza wersja EuroDB i zawartego w nim silnika PostgreSQL wprowadza liczne poprawki wydajnościowe oraz dodaje nowe funkcjonalności, które doskonale uzupełniają zestaw dostępnych narzędzi dla deweloperów korzystających z tego produktu. Natomiast bogaty zestaw modułów pozwala administratorom na dostosowanie monitorowania do własnych potrzeb oraz wkomponowanie EuroDB w istniejącą infrastrukturę.

Autorzy

Artykuły na blogu są pisane przez osoby z zespołu EuroLinux. 80% treści zawdzięczamy naszym developerom, pozostałą część przygotowuje dział sprzedaży lub marketingu. Dokładamy starań, żeby treści były jak najlepsze merytorycznie i językowo, ale nie jesteśmy nieomylni. Jeśli zauważysz coś wartego poprawienia lub wyjaśnienia, będziemy wdzięczni za wiadomość.