Rilascio del DBMS PostgreSQL 13

Dopo un anno di sviluppo pubblicato nuovo ramo stabile del DBMS PostgreSQL 13. Aggiornamenti per la nuova filiale uscira per cinque anni fino a novembre 2025.

Il principale innovazioni:

  • Implementato deduplicazione record negli indici B-tree, che hanno reso possibile migliorare le prestazioni delle query e ridurre il consumo di spazio su disco durante l'indicizzazione di record con dati duplicati. La deduplicazione viene eseguita tramite il lancio periodico di un gestore che unisce gruppi di tuple ripetute e sostituisce i duplicati con collegamenti a una copia archiviata.
  • Prestazioni migliorate delle query che utilizzano funzioni aggregate, insiemi raggruppati (SET DI RAGGRUPPAMENTO) o partizionato tabelle (partizionate). Le ottimizzazioni implicano l'utilizzo di hash anziché di dati effettivi durante l'aggregazione, evitando così di inserire tutti i dati in memoria durante l'elaborazione di query di grandi dimensioni. Durante il partizionamento, il numero di situazioni in cui le partizioni possono essere eliminate o unite è stato ampliato.
  • Aggiunta la possibilità di utilizzare statistiche avanzatecreato utilizzando il comando CREATE STATISTICS per migliorare l'efficienza di pianificazione delle query che contengono condizioni OR o ricerche di elenchi utilizzando le espressioni IN o ANY.
  • La pulizia degli indici durante il funzionamento è stata accelerata VUOTO parallelizzando la garbage collection negli indici. Utilizzando il nuovo parametro "PARALLEL", l'amministratore può determinare il numero di thread che verranno eseguiti simultaneamente per VACUUM. Aggiunta la possibilità di avviare l'esecuzione automatica del VACUUM dopo l'inserimento dei dati.
  • Aggiunto il supporto per l'ordinamento incrementale, che consente di utilizzare i dati ordinati nella fase precedente per velocizzare l'ordinamento nelle fasi successive dell'elaborazione delle query. Per abilitare la nuova ottimizzazione nel pianificatore di query, c'è un'impostazione “abilita_incremental_sort", che è abilitato per impostazione predefinita.
  • Aggiunta la possibilità di limitare le dimensioni slot di replica, consentendo di garantire automaticamente la conservazione dei segmenti WAL (write-lazy log) finché non vengono ricevuti da tutti i server di backup che ricevono le repliche. Gli slot di replica impediscono inoltre al server primario di eliminare righe che potrebbero causare conflitti, anche se il server di backup è offline. Utilizzando il parametro max_slot_wal_keep_size Ora puoi limitare la dimensione massima dei file WAL per evitare di esaurire lo spazio su disco.
  • Sono state ampliate le capacità di monitoraggio dell'attività del DBMS: il comando EXPLAIN fornisce la visualizzazione di statistiche aggiuntive sull'utilizzo del log WAL; V pg_basebackup fornita l'opportunità di monitorare lo stato dei backup continui; Il comando ANALISI fornisce un'indicazione sullo stato di avanzamento dell'operazione.
  • Nuovo comando aggiunto pg_verifybackup per verificare l'integrità dei backup creati dal comando pg_basebackup.
  • Quando si lavora con JSON utilizzando gli operatori jsonpath Consente di utilizzare la funzione datetime() per convertire i formati di ora (stringhe ISO 8601 e tipi di ora PostgreSQL nativi). Ad esempio, puoi utilizzare le costruzioni "jsonb_path_query('["2015-8-1", "2015-08-12"]', '$[*] ? (@.datetime() < "2015-08-2 ".datetime ())')" e "jsonb_path_query_array('["12:30", "18:40"]', '$[*].datetime("HH24:MI")')".
  • Aggiunta funzione integrata gen_random_uuid () per generare UUID v4.
  • Il sistema di partizionamento fornisce il supporto completo per la replica logica e quelle specificate dall'espressione "BEFORE".
    trigger che funzionano a livello di riga.

  • Sintassi "PRENDETE PRIMA" ora consente l'uso di un'espressione "WITH TIES" per restituire righe aggiuntive che si trovano alla fine del set di risultati ottenuto dopo aver applicato "ORDER BY".
  • Implementato il concetto di componenti aggiuntivi affidabili (“estensione attendibile"), che può essere installato da utenti ordinari che non dispongono dei diritti di amministratore DBMS. L'elenco di tali componenti aggiuntivi è inizialmente predefinito e può essere ampliato dal superutente. I componenti aggiuntivi affidabili includono pgcrypto, funzione di tavola, hstore eccetera
  • Il meccanismo per la connessione di tabelle esterne Foreign Data Wrapper (postgres_fdw) implementa il supporto per l'autenticazione basata su certificato. Quando si utilizza l'autenticazione SCRAM, i client possono richiedere "legame del canale"(associazione del canale).

Fonte: opennet.ru

Aggiungi un commento