Aperçu de PostgreSQL

Déployez vos applications populaires sur nos serveurs cloud haute performance en un seul clic.

PostgreSQL est un système de gestion de bases de données objet-relationnel distribué librement, développé par une communauté internationale de développeurs et non contrôlé par une entreprise ou un individu. PostgreSQL est distribué sous une licence libre qui permet de l'intégrer dans des produits logiciels commerciaux.

file

Les points forts de PostgreSQL sont :

  • des mécanismes de transactions et de réplication performants et fiables ;
  • un système extensible de langages de programmation embarqués : PL/pgSQL, PL/Perl, PL/Python et PL/Tcl sont pris en charge en standard ; PL/Java, PL/PHP, PL/Py, PL/R, PL/Ruby, PL/Scheme, PL/sh et PL/V8 peuvent être utilisés en complément, et le chargement de modules compatibles C est disponible ;
  • l'héritage ;
  • une extensibilité aisée.

Fonctionnalités principales :

  • Les fonctions sont des blocs de code exécutés sur le serveur, et non sur le client de base de données. Bien qu'elles puissent être écrites en SQL pur, l'implémentation d'une logique supplémentaire — comme les branchements conditionnels et les boucles — dépasse le cadre de SQL et nécessite des extensions de langage.
  • Les triggers sont définis comme des fonctions déclenchées par des opérations DML. Par exemple, une opération INSERT peut déclencher un trigger qui vérifie l'enregistrement ajouté selon certaines conditions. Différents langages de programmation peuvent être utilisés pour écrire les fonctions de triggers.
  • Règles et vues — le mécanisme de règles permet de créer des gestionnaires personnalisés non seulement pour les opérations DML, mais aussi pour les opérations de sélection. La différence essentielle avec le mécanisme de triggers est que les règles s'appliquent à l'étape d'analyse de la requête, avant le choix du plan d'exécution optimal et le processus d'exécution lui-même. Les règles permettent de redéfinir le comportement du système lors de l'exécution d'opérations SQL sur une table.
  • PostgreSQL prend en charge les index des types suivants : B-tree, hash, GiST, GIN, BRIN, Bloom. Si nécessaire, il est possible de créer de nouveaux types d'index.
  • PostgreSQL prend en charge la modification simultanée de la base de données par plusieurs utilisateurs grâce au mécanisme Multiversion Concurrency Control (MVCC). Cela garantit le respect des exigences ACID et rend les verrous en lecture quasiment inutiles.
  • PostgreSQL prend en charge un large ensemble de types de données intégrés.

Les tables peuvent hériter des caractéristiques et des ensembles de champs d'autres tables (parentes). Les données ajoutées dans une table dérivée participeront automatiquement (sauf indication contraire) aux requêtes adressées à la table parente.

Dans PostgreSQL 10, un mécanisme de partitionnement des tables a été ajouté. Le partitionnement est conçu pour diviser une table en plusieurs tables appelées partitions. Le partitionnement est similaire à l'héritage, mais dispose d'une syntaxe plus conviviale et de contraintes plus strictes, ce qui permet des optimisations supplémentaires lors de la planification des requêtes.

Pour plus d'informations, consultez le Wiki.

Besoin d’aide?Nos ingénieurs vous aideront gratuitement pour n’importe quelle question en quelques minutesNous contacter