Wersja PostgreSQL 13 DBMS

Po roku rozwoju opublikowany nowa stabilna gałąź DBMS PostgreSQL 13. Aktualizacje dla nowego oddziału wyjdzie przez pięć lat, do listopada 2025 r.

Głównym innowacje:

  • Wdrożone deduplikacja rekordów w indeksach B-tree, co pozwoliło poprawić wydajność zapytań i zmniejszyć zużycie miejsca na dysku podczas indeksowania rekordów ze zduplikowanymi danymi. Deduplikacja odbywa się poprzez okresowe uruchamianie modułu obsługi, który łączy grupy powtarzających się krotek i zastępuje duplikaty łączami do jednej przechowywanej kopii.
  • Poprawiona wydajność zapytań korzystających z funkcje agregujące, zgrupowane zestawy (ZESTAWY GRUPOWANIA) lub podzielony (podzielone) tabele. Optymalizacje polegają na używaniu skrótów zamiast rzeczywistych danych podczas agregacji, co pozwala uniknąć umieszczania wszystkich danych w pamięci podczas przetwarzania dużych zapytań. Podczas partycjonowania zwiększono liczbę sytuacji, w których można odrzucić lub połączyć partycje.
  • Dodano możliwość użycia zaawansowane statystykiutworzone za pomocą polecenia CREATE STATISTICS w celu poprawy wydajności planowania zapytań zawierających warunki OR lub przeszukiwań list przy użyciu wyrażeń IN lub ANY.
  • Przyspieszono czyszczenie indeksów podczas pracy ODKURZAĆ poprzez równoległe zbieranie elementów bezużytecznych w indeksach. Korzystając z nowego parametru „PARALLEL”, administrator może określić liczbę wątków, które będą działać jednocześnie dla VACUUM. Dodano możliwość inicjowania automatycznego wykonania VACUUM po wstawieniu danych.
  • Dodano obsługę sortowania przyrostowego, co pozwala na wykorzystanie danych posortowanych na poprzednim etapie w celu przyspieszenia sortowania na kolejnych etapach przetwarzania zapytań. Aby włączyć nową optymalizację w narzędziu do planowania zapytań, dostępne jest ustawienie „włącz_inkrementalne_sortowanie", która jest domyślnie włączona.
  • Dodano możliwość ograniczenia rozmiaru gniazda replikacji, co pozwala automatycznie zagwarantować zachowanie segmentów dziennika opóźnionego zapisu (WAL) do czasu ich otrzymania przez wszystkie serwery kopii zapasowych otrzymujące repliki. Miejsca replikacji uniemożliwiają także serwerowi głównemu usuwanie wierszy, które mogłyby powodować konflikty, nawet jeśli serwer zapasowy jest w trybie offline. Korzystanie z parametru max_slot_wal_keep_size Możesz teraz ograniczyć maksymalny rozmiar plików WAL, aby zapobiec wyczerpaniu się miejsca na dysku.
  • Rozszerzono możliwości monitorowania aktywności DBMS: komenda EXPLAIN umożliwia wyświetlenie dodatkowych statystyk dotyczących wykorzystania logu WAL; V pg_basebackup zapewnił możliwość śledzenia stanu ciągłych kopii zapasowych; Polecenie ANALIZA umożliwia wskazanie postępu operacji.
  • Dodano nowe polecenie pg_verifybackup aby sprawdzić integralność kopii zapasowych utworzonych komendą pg_basebackup.
  • Podczas pracy z JSON przy użyciu operatorów jsonpath Umożliwia użycie funkcji datetime() do konwersji formatów czasu (ciągi znaków ISO 8601 i natywne typy czasu PostgreSQL). Na przykład możesz użyć konstrukcji „jsonb_path_query('["2015-8-1", "2015-08-12"]', '$[*] ? (@.datetime() < "2015-08-2 ".datetime ())')" i "jsonb_path_query_array('["12:30", "18:40"]', '$[*].datetime("HH24:MI")')".
  • Dodano wbudowaną funkcję gen_random_uuid () do wygenerowania UUID v4.
  • System partycjonowania zapewnia pełną obsługę replikacji logicznej oraz replikacji określonej wyrażeniem „BEFORE”.
    wyzwalacze działające na poziomie wiersza.

  • Składnia "NAJPIERW POBIERZ" pozwala teraz na użycie wyrażenia "WITH TIES" w celu zwrócenia dodatkowych wierszy, które znajdują się na końcu zestawu wyników uzyskanego po zastosowaniu "ORDER BY".
  • Wdrożono koncepcję godnych zaufania dodatków („zaufane rozszerzenie"), które mogą zainstalować zwykli użytkownicy, którzy nie mają uprawnień administratora DBMS. Lista takich dodatków jest wstępnie zdefiniowana i może być rozszerzana przez superużytkownika. Godne zaufania dodatki obejmują pgkrypto, funkcja stołowa, sklep itd.
  • Mechanizm łączenia tabel zewnętrznych Foreign Data Wrapper (postgres_fdw) implementuje obsługę uwierzytelniania w oparciu o certyfikaty. Podczas korzystania z uwierzytelniania SCRAM klienci mogą żądać „wiązanie kanałów"(powiązanie kanału).

Źródło: opennet.ru

Dodaj komentarz