aA

EuroDB 14.1 wydany. Co ciekawego w nowej wersji?

EuroDB 14

Najnowocześniejsze rozwiązania dla bazy danych klasy Enterprise są już dostępne wraz z EuroDB 14.1. Nowsza wersja platformy przynosi poprawki i uaktualnienia dla wielu zawartych w niej narzędzi, zapewniając im większe możliwości.

EuroDB to rozwiązanie bazodanowe klasy Enterprise, którego sercem jest niezawodny silnik PostgreSQL. Szereg dołączonych zintegrowanych modularnych narzędzi obudowuje Postgresa i rozszerza jego możliwości. Dodatkowo moduły podnoszą efektywność zarządzania, umożliwiają szeroką analizę oraz monitorowanie bezpieczeństwa. W tym artykule opiszemy najważniejsze zmiany w narzędziach dostarczanych w ramach EuroDB 14.1 w porównaniu z wersją poprzednią.

PostgreSQL

Przegląd uaktualnień i poprawek najnowszej wersji EuroDB warto rozpocząć od najistotniejszej kwestii, czyli silnika bazodanowego PostgreSQL, który został podniesiony do wersji 14.1. Twórcy nowej wersji zauważalnie pochylili się nad względem wydajności bazy danych, nowym sposobem replikacji, czy też trybem awaryjnym dla garbage-collectora. Dodatkowo zostały poprawione błędy z wersji 13.3 i 14.0, dzięki czemu zwiększona została niezawodność również w przypadkach brzegowych (edge-cases), a które spotykane są jedynie sporadycznie. Obszerna lista zmian w PostgreSQL 14 jest dostępna w naszym artykule PostgreSQL 14 pod lupą.

Moduł analizy logów

Oprócz podniesionej wersji Postgresa, najnowsza wersja EuroDB została stworzona wraz ze zaktualizowanym modułem do analizy logów. W liście zmian, oprócz poprawy wykrytych błędów, można znaleźć następujące nowości:

  • dodanie nowych opcji uruchomieniowych:
    ◦ --no-progressbar – pozwala ukryć pasek postępu
    ◦ --day-report – pozwala przebudować raport HTML dla konkretnego dnia
    ◦ --keep-comments – pozwala zachować komentarze do znormalizowanych zapytań. Pomocne przy odróżnieniu zapytań
    ◦ --dump-all-queries – pozwala na zgranie wszystkich zapytań do pliku tekstowego
    ◦ -Q | --query-numbering – numeruje zapytania podczas użycia --dump-all-queries lub –normalized-only
    ◦ --tempdir – ustawia folder, w którym pliki temporalne mają być zapisywane
    ◦ --ssh-port – pozwala ustawić port, domyślnie jest to 22
  • dodanie trybu przyrostowego do opcji --iso-week-number
  • detekcja QueryId w log_line_prefix
  • dodanie kompatybilności z logami PostgresPro
  • zaktualizowanie do najnowszej wersji dekoratora składni SQL
  • detekcja nazw aplikacji dla zautoryzowanych połączeń
  • detekcja i ignorowanie timestampów podczas tworzenia grafów
  • dodanie wsparcia dla logów zapisanych w formacie używanym przez: Google Cloud Platform czy AWS, jak również przez pgbouncera w wersji 1.11
  • tworzenie raportów dotyczących czasu bezczynności sesji
  • dodanie pełnej informacji o wykonanych procesach autovacuum
  • obsługa nowych formatów kompresji: zstd i lz4.

Moduł wykonywania kopii zapasowych i ich odtwarzania

Uaktualniony został również moduł wykonywania kopii zapasowych. Jest to kluczowa funkcjonalność, której działaniu powierza się krytyczne systemy każdego przedsiębiorstwa. W związku z tym wymagane są najświeższe standardy dostarczane w najnowszych wersjach modułu. W ramach aktualizacji usunięto błędy oraz zawarto następujące funkcjonalności:

  • dodanie nowych komend:
    ◦ verify-backup – pozwala sprawdzić, czy backup jest poprawny
    ◦ generate-manifest – generuje plik backup_manifest z podanego backup_id
  • rozwijanie wsparcia dla technologii chmurowej
    ◦ możliwość podłączenia do Google Cloud Storage
    ◦ zapewnienie autoryzacji przez token SAS (Azure blob storage) i Azure Managed Identity (opcja –credential)
    ◦ stworzenie możliwości otagowania plików kopii zapasowej i archiwum WAL na chmurze AWS czy Azure (cloud storage)
    ◦ dodanie algorytmu kompresji (wymaga dodatkowo zainstalowanego pakietu python-snappy)
  • dodanie nowych opcji last_backup_minimum_size i last_wal_maximum_age w celu dokładniejszego określenia warunków dla konfiguracji serwera
  • zmiana formatu daty diagnozy na ISO8601
  • dodanie identyfikacji plików WAL w celu uniknięcia ich podwójnej kompresji
  • zmiana formy z pojedynczej na mnogą dla komend list-backup, list-server i show-server. Teraz będą się nazywały kolejno list-backups, list-servers i show-servers. Komendy w formie pojedynczej zostaną w użyciu dla wstecznej kompatybilności
  • wprowadzenie skrótu last-failed określającego ostatni backup, który się nie powiódł
  • znacząco przyspieszono proces przywracania bardzo dużej ilości plików z pustego katalogu.

Moduł replikacji

Ostatnim modułem, który zawiera w sobie dwa świeżo zaktualizowane pakiety, jest moduł służący do monitorowania i zarządzania replikacją logiczną. Zadaniem tego modułu jest nadążanie za zmianami przeprowadzanymi na głównej bazie danych i replikowaniu ich na bazę zapasową. Aktualizacja zapewnia większą stabilność tego procesu i daje nowe funkcjonalności, z których najważniejszymi są:

  • stworzenie zasady, według której węzeł zaznaczony jako „inactive” próbuje przejść na status „active”. Można ją wyłączyć za pomocą parametru repmgrd_exit_on_inactive_node ustawionego na true
  • dodanie parametru --repmgrd w celu sprawdzenia statusu menadżera, który monitoruje węzeł
  • poprawienie metody pglogical_show_subscription_table tak, aby zwracała jeden wiersz
  • stworzenie zasady, według której parametr debug_query_string jest zawsze ustawiony
  • poprawienie błędów związanych z wywołaniem multi-insert
  • naprawa podwójnego zamykania relacji, gdy trigger BEFORE ROW DELETE zwraca NULL
  • skasowanie statusu błędu, gdy zdalny slot replikacji został niepoprawnie usunięty.

Podsumowanie

Najnowsze EuroDB 14.1 zawiera w sobie kluczowe uaktualnienia najbardziej krytycznych modułów dla prawidłowego działania bazy. Podstawa, którą jest PostgreSQL, została podniesiona do wersji 14.1. Uaktualnione moduły analizy logów, kopii zapasowej czy też moduł replikacji podążają za ciągle rozwijanymi standardami stabilności i bezpieczeństwa.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *