Postgresso 20


La vie continue. Nous continuons à vous informer des actualités PostgreSQL les plus intéressantes

nouvelles principales


Gel des
fonctionnalités La fonctionnalité PostgreSQL version 13 est gelée. Maintenant, seules les améliorations et corrections de bugs. La liste des nouveautés, contrairement à de nombreuses attentes, est assez longue. Lisez notre article intitulé
What Much New in The Devil's Dozen , où il existe de nombreux exemples. Mais aussi dans la section des articles Postgresso, il y a des liens vers des articles consacrés à des fonctionnalités individuelles.

Communiqués


Postgres Pro Enterprise 12.2.1

Cette version combine les innovations de PostgreSQL 12 et les fonctionnalités de la branche Enterprise.
Extension multimaître : comme dans 11.x, et dans d'autres versions d'Enterprise, il est recommandé de l'utiliser dans une configuration 2 + 1 lorsque l'un des nœuds d'arbitre. Plus de détails dans la documentation . Et maintenant, vous pouvez vérifier la cohérence des données sur les nœuds du cluster à l'aide de la fonction mtm.check_query().

Dans CFS, vous pouvez désormais choisir des algorithmes de compression. Zstd (par défaut), zlib et pglz sont pris en charge, mais d'autres algorithmes peuvent être ajoutés.

Une autre caractéristique de choc d'Enterprise est le mécanisme PTRACK, qui est nécessaire pour le fonctionnement efficace de notre application pg_probackup, - a été entièrement repensé et a reçu une nouvelle API externe. Pour que les sauvegardes déjà créées avec PTRACK dans pg_probackup fonctionnent dans Postgres Pro Enterprise 12.x, vous devez mettre à jour pg_probackup vers la version 2.2.6 ou supérieure et configurer PTRACK pour copier à nouveau.

Un correctif important pour la déduplication d' index B-tree (par Anastasia Lubennikova, Postgres Professional) dans PostgreSQL 13, mais sa fonctionnalité est déjà dans Enterprise 12.2.1. De plus, l'exclusion des doublons peut être désactivée pour les index créés à l'aide du paramètre de deduplicate_itemscommande CREATE INDEX. C'est ici .

Quelques autres innovations brièvement:


Gauche et Postgres Pro 12.2.1 de Standard . Étant donné que les différences avec PostgreSQL dans Standard ne sont pas aussi radicales que dans Postgres Pro Enterprise, nous nous référons simplement au journal des modifications .

pgAdmin 4 version 4.20

Cette version ajoute le classement, la configuration FTS, le dictionnaire FTS, l'analyseur FTS, le modèle FTS, le domaine, les contraintes de domaine et les types pour le schéma diff .

Lisez la version ici et vous pouvez la télécharger ici .

WAL-G v0.2.15

Dans la nouvelle version de la sauvegarde Yandex, vous pouvez réduire le décalage de la réplique par des commandes catchup-pushetcatchup-fetchcréation d'une sauvegarde incrémentielle à partir d'un LSN donné avec une réplique en retard. La prise en charge du chiffrement Libsodium, Nouvelle tentative pour AWS, a été ajoutée.

repmgr 5.1 La

sauvegarde de 2ndQuadrant a été enrichie d' améliorations significatives: maintenant l'exigence que l'utilisateur repmgr soit un superutilisateur de la base de données est supprimée de partout où c'est possible. Un utilisateur de base de données ordinaire peut copier sa base de données et un utilisateur avec le rôle REPLICATION spécifiera les connexions et les emplacements (si nécessaire). Mais certaines opérations nécessitent toujours une option -S | --superuser. Téléchargez ici .

pgBackRest 2.25 La

principale nouveauté de cette version est la compression LZ4. Ajout d'une option utile: --dry-runpour la commandeexpire: vous pouvez voir quelles sauvegardes / archives seront supprimées avec cette commande sans rien supprimer. Vous pouvez limiter la taille de la sauvegarde à la valeur indiquée au début de la copie, en vous basant sur la lecture du WAL si le fichier gonfle.

check_pgbackrest 1.8

Une nouvelle version de l'utilitaire de surveillance BackRest a également été publiée (elle n'est pas développée par CrunchyData, comme pgBackRest lui-même, mais par Dalibo). Une option est apparue --list-archives: imprimer une liste de tous les segments WAL archivés.

pgmetrics v1.9

Il existe une collection de métriques avec AWS RDS et Aurora , une collection de définitions d'index, de types et de nombre de backends, de versions et de vérifications d'environnement avant d'appeler des fonctions. Et vous pouvez définir le rôle avant de commencer à collecter des métriques en option --role. Sortie sur github .

pg_show_plans

L'extension, que Hans-Jürgen Schönig de Cybertec propose d'essayer, vous permet de voir simultanément tous les plans instantanés actuellement actifs - alors qu'ils sont toujours en cours d'exécution. Il explique leur travail sur son propre blog et sur le site Internet de l' entreprise. Et pas seulement lui. pg_show_plans a même déjà été discuté les mardis à Samokhvalov (voir notre section Webinaires ). Soit dit en passant, l'extension pg_query_state , qui est disponible dans Postgres Pro Standard / Enterprise, est une alternative intéressante. Mais vanilla PostgreSQL devra attacher un patch.

Joe 0.6.2 / 1/0 Nous nous

repentons: à propos de l'apparence de cet utilitaire avec l'interface de chat botnous avons écrit deux lignes dans le passé et l' année précédente Postgresso dernier , bien qu'il mérite plus. Ce bot DBA, comme l'appellent les développeurs de Postgres.ai, est un outil pour tester les changements de base de données sans mettre en danger la base industrielle, mais sans longue copie dans l'environnement de test (les bases de données téraoctets sont copiées en quelques secondes). De plus, cette ressource de test est partagée: une dizaine de développeurs peuvent travailler simultanément. Détails Anatoly Stansler a déclaré dans un rapport sur Highload ++, nous vous recommandons de regarder.
Dans les versions 0.6.2 et 0.6.1, seules des corrections de bugs, mais des choses intéressantes sont apparues dans 0.6.0: travailler avec des index hypothétiques (avec l'extension HypoPG) Les équipes composées commençant par travaillent avec des indices hypothétiques hypo. Par exemple: hypo reset- tuez tous les index hypothétiques. La nouvelle équipe plan donne le plan sans répondre à la demande.

Pyrseas 0.9.1

Cette version de l' utilitaire d'extension pour décrire le schéma de base de données en YAML / JSON, la réconciliation des schémas de base de données avec un schéma donné diffère des versions précédentes principalement par le support de PostgreSQL 12. Voici une page sur PGXN .

pgFormatter 4.3

Ajout de deux options, correction de bugs:

  • -r | --redshift pour les mots clés AWS Redshift
  • -N | --numberingAjoute un préfixe de vue à chaque ligne /* Statement # n */;
  • correction du formatage à l'intérieur de la phrase avec WITH;
  • correction de la mise en forme des scripts lors de l'utilisation de psql;
  • De plus, plusieurs fonctions intégrées ont été ajoutées à la liste des fonctions PostgreSQL.

pg_timeout 0.0.1

Et une autre extension: avec elle, vous pouvez définir le délai d'inactivité pour la session en le définissant dans deux GUC:

  • pg_timeout.naptime: combien de secondes le processus d'arrière-plan dort entre les vérifications d'inaction (10 secondes par défaut)
  • pg_timeout.idle_session_timeout: combien de secondes une session est autorisée à vivre en veille (60 secondes par défaut).

Les notifications correspondantes apparaîtront dans le journal. Le numéro de version parle de lui-même.

pg_logqueryid

Et cette extension inclut la journalisation des identifiants des demandes pg_stat_statementslorsqu'elle est incluse auto_explain.

Psycopg 2.8.5

Ce connecteur Python prend désormais en charge la plate-forme AIX.

pg_timetable 2.0

Ce planificateur (scheduler) sont ajoutés possibilités de contrôle: Vous pouvez marquer des tâches comme @reboot, @everyou @after.

pgBadger 11.2

Dans l'analyseur de journaux populaire, Gilles Darold a ajouté :

  • prise en charge et reconnaissance automatique du format de journal AWS Redshift;
  • prise en charge du nouveau format de journal pgbouncer 1.11;
  • Prise en charge de la compression zstd et lz4;
  • vous pouvez exécuter l'utilitaire comme ceci: pgbadger -I -O "/out-dir/data" --noreport /var/log/postgresql*.logou
  • comme suit: pgbadger -I -l "/out-dir/data/LAST_PARSED" -H "/out-dir/reports" /out-dir/data/2020/02/19/*.bin.


PAF v2.3.0

La version de cette solution très populaire à tolérance de pannes de ClusterLabs, basée sur Pacemaker + Corosync , se distingue principalement par la prise en charge de PostgreSQL 12. Elle ne fonctionnera pas avec les versions antérieures à Pacemaker 1.1.13 + corosync 2.x.

pgagroal 0.5.1 La
nouvelle version de l' extracteur peut être téléchargée ici: sources , RPM .

Les nuages


Amazon RDS prend désormais en charge PostgreSQL 12

L' annonce indique que, avec la version, vous recevrez (entre autres) des extensions mises à jour:
PostGIS 3.0,
PGAudit 1.4,
wal2json 2.1,
PLV8 2.3.14,
Orafce 3.8,
pg_repack 1.4.5,
pg_hint_plan 1.3.5.22 a77c,
pglogical 2.3.0.

Comment Authentifier Postgres utilisateurs contre Amazon AWS Cognito

Impossible de trouver une satisfaisante Cognito authentification réponse pour PostgreSQL, Ernst-Georg Schmid ergo a écrit le cognito_PAM.py de script pour faciliter l' authentification de PostgreSQL et les utilisateurs de pgbouncer.

Des articles


Commençons par des articles sur la féroce dépit de la journée. Mais ces deux articles sont intéressants non seulement par l'agenda actuel, ils sont informatifs au sens technique.

Représentation graphique de la propagation de COVID-19 à l'aide de données

Le blog Timescale vous montrera étape par étape comment écrire des requêtes pour créer des cartes de distribution de virus. L'auteur a pris les données du github de l'Université Johns Hopkins , les a téléchargées sur TimescaleDB et a utilisé Grafana pour la visualisation sur la carte .

Intersection de traces GPS pour identifier les individus infectés

Un article sur Cybertec avec de nombreuses photos et listes. Les fonctions de fenêtre sont utilisées pour détecter les contacts infectés, et QGIS est utilisé pour visualiser les chemins de déplacement des propriétaires de virus.

Créez et visualisez des modèles d'apprentissage automatique à l'aide de 2UDA

2ndQuadrant (cette entreprise est exceptionnellement active en ces temps difficiles: des webinaires et des articles arrivent en flux) dans cet article propose d'essayer votre propre ensemble d'applications analytiques, qui incluent également un package d'apprentissage automatique. 2UDA s'intègre dans l'environnement Orange et communique avec PostgreSQL jusqu'à sa dernière version - 12.2. Cette fois, ils apprennent à travailler avec Random Forest . Dans les articles précédents de la série, nous avons enseigné SVM (aka Method of Support Vectors) et recherché les voisins les plus proches (KNN).

Et voici leur série sur le développement de PostgreSQL pour Windows : parties 3 2 1 .

Comparaison de MongoDB vs Postgres sur JOINs

Nous devrions commencer non pas avec le titre de l' article , mais avec les auteurs: Michael Stonebraker (Michael Stonebraker, le même) et lvaro Hernández . Alvaro, cependant, est également «le même» - il a parlé à plusieurs reprises lors de conférences à Moscou: par exemple, son rapport sur StackGres à PGConf.Russia 2020. Mais le sujet de la comparaison de NoSQL avec Postgres n'a pas perdu de sa pertinence.

10 choses que je déteste à propos de Postgres

Une autre phase froidecontraste âme Postgres vs autres SGBD. Certains des commentaires de Rick Branson (Rick Branson) sont très durs. Par exemple: l'évolutivité des processus s'améliore de plus en plus avec chaque version majeure. Mais au final, il y a une limite de performance stricte en raison de l'architecture de Postgres par rapport au même MySQL avec son seul thread par connexion .

Fonction d'

interrogation parallèle Abdul Yadi analyse ce qui se passe à l'intérieur des fonctions SQL et PL / pgSQL. Il a découvert que l'exécution de requêtes parallèles, fonctionnant dans des requêtes SQL sans fonctions, était désactivée lors de l'exécution de fonctions SQL et PL / pgSQL. Et il montre une astuce pour activer le parallélisme dans PL / pgSQL.

Suivi du planificateur de requêtes

Julien Rouhaud écritdans ma petite maison, je parle de surveiller le planificateur.

En attente de PostgreSQL 13 - Permettre à pg_stat_statements de suivre les statistiques de planification
Hubert «Depeche» Lubashevsky écrit sur ce correctif, et comment il l'a testé sur pgbench et comment vous pouvez exécuter une planification de requête longue (le plan n'est pas réutilisé). Soit dit en passant, notre examen contient également des exemples avec pg_stat_statements .

Personne de la semaine PostgreSQL: Michael Paquier

Michelle Pacquier (il est né et a étudié en France, et ce dernier travaille au Japon), familier à beaucoup de la liste de diffusion des pirates , a commencé à travailler avec la version 8.3. Répond à la question sur son extension préférée: pg_stat_statement! (son point d'exclamation), et des fonctionnalités des dernières versions sélectionne TableAM .

Mais le choix de la personne de la semaine, Ailaria Battiston, était imprévisible: elle est une étudiante italienne de 22 ans qui étudie l'ingénierie des données à l'Université technique de Munich. Que méritait-elle le titre - lire .

Nous écrivons dans PostgreSQL sur la sous-lumière: 1 hôte, 1 jour, 1 To

Kirill Borovikov akaKilor(Société Tensor) écrit à propos de la façon de faire de l' écriture à la base de données plus efficace en organisant correctement les flux de données. Spoiler: commencez par la coupe. L'auteur a abordé ce sujet dans l' article précédent , mais ensuite en théorie, et maintenant sur sa propre expérience. Andreas Scherbaum,

«Projets connexes» de PostgreSQL, rappelle que postgresql.org a une nouvelle page sur les projets liés à PostgreSQL tels que pgweb, pglister, PostgreSQL Build Farm et autres. Un guide pour débutants de l'indexation de base dans Postgres Valable pour les débutants . Pour ceux qui continuent, nous rappelons une série d'articles





Egor Rogov erogovsur les indices (cependant, nous en avons aussi un petit , elle est la première connaissance , où, bien sûr, vous pouvez lire sur les indices).

Requêtes utiles pour la maintenance des index Postgres

Ibrar Ahmed de Percona dans un court article donne les bases du suivi des index à l'aide de requêtes typiques sur les tables de répertoires.

La santé des index dans PostgreSQL à travers les yeux d'un développeur Java

Ivan Vakhrushev (Yandex) a écrit la bibliothèque pg-index-health , et dans cet article, il explique comment utiliser ses scripts [UPD: l'auteur a mis à jour les liens dans l'article] . Ivan admet qu'il a eu une grande purge , inspiré par le rapportOleg Bartunov et Alexander Korotkov. Tous les scripts SQL nécessaires peuvent être trouvés sur les liens dans l'article et dans le référentiel .

Éducation à domicile


"Total Recall" ou # sidimdoma utilement

sur cette page sont maintenant collectés des liens vers tous les cours du département de l'éducation Postgres Professional.
Mais les cours peuvent également être vus comme des playlists Youtube .

Webinaires et Mitapas


Les mardis de Postgres
Ils sont dirigés par Nikolay Samokhvalov (Postgres.ai) et Ilya Kosmodemyansky (DataEgret).

# 16 : avec la participation de Maxim Boguk et Viktor Yegorov (tous deux DataEgret). Il a été discuté: comment garantir le bon fonctionnement de l'application même avec un saut de charge inattendu de 5 fois.

# 15 . Sujets abordés: PostgreSQL est le Linux des bases de données ; Encore une fois à propos de GiST; quelques grandes améliorations dans PostgreSQL 13 sont dans pg_stat_statements et EXPLAIN; Macro-analyse: planification des statistiques dans pg_stat_statements; Micro-analyse: statistiques WAL dans EXPLAIN; pg_show_plans de Cybertec.
# 14 : Erreurs du développeur lors de l'utilisation de Postgres. Invité: Pavel Bisset.

# 13 : Un exemple de travail avec JSON dans Postgres (+ CTE, LATERAL, intervalles, index GiST).

Les prochains

types de date / horodatage du 2e quadrant dans les webinaires PostgreSQL

le 22 avril, Andrew Dunstan.

Indexation KNN dans PostgreSQL

le 29 avril, Kirk Roybal.

Inscription et liste sur la page de leurs webinaires .

Conférences


PGCon 2020

se déroulera du 26 au 29 mai en ligne.

À partir des documents des conférences passées, par exemple:

Postgres haute disponibilité facile et correcte avec Kubernetes

Postgres Open télécharge la vidéo des conférences Postgres Open qui conduisent (menées et, espérons-le, se tiendront après la désisolement) la communauté aux États-Unis. Dans ce rapport de Postgres Open 2019, Steven Pousty de Crunchy Data parle de PostgreSQL hautement disponible, du déballage des conteneurs aux étapes pratiques.

PGConf.Russia

Gardez à l'esprit que la plupart de la vidéo, sans parler des diapositives, est disponible sur le site Web de la conférence . Rapports

Highload ++

, apparemment, plus pratiques à regarder sur la chaîne YouTube des conférences .

Nouvelles sur l'éthique


Le Comité du code de conduite Rapport annuel 2019

17 mars Le Comité du Codex postgresista a rendu compte du travail accompli. Parmi les plus connus dans les cercles des postgresistes russes, vous pouvez voir Ilya Kosmodemyansky. Heureusement, il ressort du rapport qu'aucun utilisateur progressif n'a jusqu'à présent été interdit.

Slave - tout Nous

vous rappelons que les esclaves ont finalement été supprimés dans toute la documentation Postgres: Slave est devenu Standby en réplication. Le partitionnement maître devient racine , et l'esclave - feuille .



Abonnez-vous à la chaîne postgresso !

Envoyez vos idées et suggestions par courrier: news_channel@postgrespro.ru Numéros
précédents: # 19 , # 18 , # 17 , # 16 , # 15 , # 14 , # 13 , # 12 , # 11 (spécial) , # 10 , # 9 , # 8 , # 7 , # 6 , # 5 , # 4 , # 3 , # 2 , # 1

All Articles