Les nouveautés dans PostgreSQL 11

PostgreSQL 11 comprend de nombreuses nouveautés.

Parallélisme amélioré

Les nouveautés dans PostgreSQL 11Le parallélisme est désormais pris en charge au niveau des instructions CREATE TABLE … AS, SELECT INTO et CREATE MATERIALIZED VIEW, CREATE INDEX. Le parallélisme se règle à l’aide des directives max_parallel_workers et max_parallel_workers_per_gather.

Valeurs par défaut

Dans la nouvelle version du RDBMS, l’affectation d’une valeur par défaut remplit la nouvelle colonne avec cette valeur, là où dans les versions antérieures, PostgreSQL inscrivait la valeur nulle. L’instruction ALTER TABLE … ADD COLUMN … DEFAULT n’amène plus la réécriture complète d’une table.

Partitionnement de tables

Les tables partitionnées prennent désormais en charge les clés primaires et les index. L’exécution d’un ordre UPDATE entraîne le déplacement des données dans les partitions de tables. Les requêtes sur ces tables utilisent le regroupement, si vous l’activez dans le fichier de configuration postgresql.conf, à l’aide de la directive enable_partitionwise_aggregate passée à on. Attention à laisser la valeur de la directive enable_partition_pruning à on, de manière à prendre en compte les tables partitionnées au niveau de l’optimiseur  de requêtes !

Procédures stockées

La création et l’appel de procédures stockées peuvent se faire à l’aide des instructions CREATE PROCEDURE et CALL. Les transactions et les instructions COMMIT et ROLLBACK sont maintenant supportées dans les procédures stockées.

CREATE TABLE test (a int);

CREATE PROCEDURE transaction_test()
AS $$
BEGIN
   FOR i IN 0..9 LOOP
       INSERT INTO test (a) VALUES (i);
       IF i % 2 = 0 THEN
           RAISE NOTICE 'i=%, txid=% a été annulée', i, txid_current();
           COMMIT;
       ELSE
           RAISE NOTICE 'i=%, txid=% a été validée', i, txid_current();
           ROLLBACK;
       END IF;
   END LOOP;
END
$$
LANGUAGE PLPGSQL;

CALL transaction_test();

JIT

PostgreSQL 11 prend en charge la compilation Just In Time et accélère l’exécution des clauses WHERE dans les instructions SQL, à la condition d’inscrire de passer la directive jit à on dans le fichier de configuration de l’instance, après avoir installé le paquet postgresql11llvmjit.

Fonctions Window

La nouvelle version du SGBDR Open Source utilise désormais les fonctions Window (OVER… PARTITION BY… ORDER BY… ) définies dans le standard SQL 2011.

QUIT, EXIT

Les développeurs de PostgreSQL permettent l’utilisation de QUIT et EXIT  dans l’interpréteur psql. Cette fonctionnalité était très attendue.

Index couvrant

A la manière de SQL Server, vous pouvez désormais intégrer une ou plusieurs colonne de données à vos index en utilisant la clause INCLUDE.

Source : PostgreSQL 11 release notes

Base de données  / Formateur PostgreSQL PostgreSQL 

Commentaires

Pas encore de commentaire.

Laisser un commentaire

(requis)

(requis)