PostgreSQL 11 est sorti



Un numéro spécial de POSTGRESSO dédié à la sortie de la sortie officielle de la version 11.


PostgreSQL est un jour férié. Après quatre versions bêta, PostgreSQL 11 General Availability a été publié , c'est-à-dire la version officielle. Dans l' annonce, il y a même un discours de bienvenue de Bruce Momjan : «Lors de la préparation de cette version, la communauté s'est particulièrement souciée d'ajouter les fonctionnalités nécessaires pour travailler avec de très grandes bases de données. Il est prouvé que PostgreSQL fonctionne bien avec les charges transactionnelles, et maintenant la nouvelle version - PostgreSQL 11 - permettra également aux développeurs de créer plus facilement des applications pour les Big Data. "

Notes de mise en évidence

  • partitionnement:
    • partitionnement de hachage ajouté;
    • CLÉ PRIMAIRE, CLÉ ÉTRANGÈRE, index (voir ci-dessous à ce sujet) et déclencheurs;
    • section par défaut pour les enregistrements dépassant les limites des sections créées;
    • UPDATE sur la clé de partition peut maintenant déplacer automatiquement l'enregistrement vers la section correspondante;
    • PostgreSQL a appris à exclure les partitions inutiles (partition pruning) lors de l'exécution des requêtes SELECT;
  • parallélisation:
    • vous pouvez maintenant créer un index en parallèle dans le cas de B-tree;
    • avec CREATE TABLE ... AS, CREATE MATERIALIZED VIEW et, dans certains cas, des requêtes avec UNION;
    • performances améliorées en parallèle HASH JOIN et SEQUENTIAL SCAN;
  • des procédures stockées sont apparues et la gestion des transactions y est possible;
  • Compilation JIT de fragments de requête, gain sur le calcul des expressions;
  • les fonctions de fenêtre prennent désormais en charge toutes les options de cadre de la norme SQL: 2011, y compris les distances PRECEDING / FOLLOWING RANGE, le mode GROUPS, la possibilité d'exclure des lignes d'un cadre;
  • des indices de couverture sont apparus [non couvrant, mais inclusifs à proprement parler - env. POSTGRESSO] en utilisant la clause INCLUDE sur CREATE INDEX;
  • à partir de la section divers: ALTER TABLE ... ADD COLUMN avec les valeurs NOT NULL par défaut: cette version de la commande ne remplace désormais pas toutes les lignes de la table et, par conséquent, fonctionne rapidement.


Une liste impressionnante, mais pas sensationnelle: par définition, le gel des fonctionnalités capture la fonctionnalité, qui était déjà à la mi-avril.

Les postgresists HPE publient régulièrement un résumé détaillé des fonctionnalités. Après le gel des fonctionnalités d'avril, c'était comme ça (dans ce PDF, il y a un bref résumé des innovations, des détails et des exemples).

Il n'est cependant pas clair de l'enthousiasme débordant (voir ci-dessous la réaction de Lucas Fitl) concernant cette version. Beaucoup de choses utiles ont été faites, mais des choses très importantes doivent encore être accomplies, et il y a des directions dans lesquelles ce n'est pas que le cheval ne ment pas, mais ce n'est que la lumière au début du tunnel. Par exemple, nous avons fait beaucoup de partitionnement, sans doute, mais il est toujours impossible de se référer à une table partitionnée à l'aide de FOREIGN KEY. Vous pouvez créer une CLÉ ÉTRANGÈRE, mais dans la table la plus partitionnée elle-même. Il n'y a aucun index global.

JIT/LLVM est apparu, mais a immédiatement disparu de la configuration par défaut: il est désactivé par défaut. Et ce n'est pas un hasard, car dans certains cas, il n'accélère pas, mais introduit des frais généraux inutiles.

Les grands correctifs avec des fonctions pour travailler avec JSON/JSONB ne JSON/JSONB pas inclus dans la nouvelle version.

Pour pluggable storage moteurs de pluggable storage , y compris zheap (c'est-à-dire un UNDO de type Oracle qui fonctionne sans vide), beaucoup de gens regardent avec un zheap . Ils sont à l'état embryonnaire, ils n'ont pas encore ébranlé même l'API. Un aperçu des opportunités dans cette direction est ici .

Mais ce n'était qu'un rappel de ce qui reste à faire. Le travail sur l'ancien et le non fini bat son plein, la direction du développement est compréhensible.

Les articles


Nouveau dans Postgres 11: surveillance des performances JIT, préchauffage automatique et procédures stockées
Lukas Fittl répertorie non seulement les innovations les plus importantes , mais donne également des estimations de performances, des listes, des plans. Lucas explique que nouveau dans l' extension de préchauffage de la base (pg_prewarm) , rappelle les fonctionnalités des procédures stockées, teste JIT. La conclusion est ultra optimiste: il semble que ce sera la meilleure version de PostgreSQL .

Postgres 11 - un premier aperçu
Craig Kerstins (Craig Kerstiens) attire l'attention , notamment sur des fonctionnalités non décrites ci-dessus, rappelle des changements de statistiques, par exemple. Ou oh ... voir ci-dessous.

Ajout de nouvelles colonnes de table avec des valeurs par défaut dans PostgreSQL 11
Un article sur un curieux patch de l'auteur, Andrew Dunstan de 2ndQuadrant . Maintenant, par exemple, dans une colonne par défaut, non seulement des valeurs statiques peuvent être définies, mais aussi CURRENT_TIMESTAMP ou random ().

Lors de conférences et de webinaires sur PostgreSQL 11


Peter Eisentraut de 2ndQuadrant a animé un webinaire sur les innovations de PostgreSQL 11. L'enregistrement est complété par des réponses aux questions auxquelles le webinaire n'a pas répondu.

A PGCONF.EU à Lisbonne (voici le programme ), bien sûr, un rapport d'examen est prévu: Magnus Hagander (Magnus Hagander)
Quoi de neuf dans PostgreSQL 11? et pour lui un couple
Quel est l'ancien dans PostgreSQL 11? Devrim Gündüz.
Vers des plans de requête plus efficaces: PostgreSQL 11 et au-delà Alexander Kuzmenkov (Postgres Professional), qui mentionnera non seulement (et même pas tellement) les fonctionnalités engagées, mais ce qu'il y a d'autre dans le travail.
Il y a aussi des rapports dans le programme.
Pires pratiques PostgreSQL par Ilya Kosmodemyansky ( Data Egret )
Avez-vous besoin d'une recherche de texte intégral dans PostgreSQL? Oleg Bartunov (Postgres Professional) ,
Méthodes avancées de sauvegarde et de restauration PostgreSQL Anastasia Lubennikova (Postgres Professional)



Abonnez-vous à la chaîne postgresso !

Envoyez vos idées et suggestions par mail: news_channel@postgrespro.ru
Numéros précédents: # 10 , # 9 , # 8 , # 7 , # 6 , # 5 , # 4 , # 3 , # 2 , # 1

Source: https://habr.com/ru/post/fr426745/


All Articles