Recherche de site Web

Qu’est-ce que PostgreSQL ? Comment fonctionne PostgreSQL ?


PostgreSQL est le système de gestion de bases de données open source d'entreprise le plus avancé au monde, développé par le groupe de développement mondial PostgreSQL. Il s'agit d'un système de base de données relationnelle objet SQL (Structured Query Language) puissant et hautement extensible, apprécié pour sa fiabilité, la robustesse de ses fonctionnalités et ses hautes performances. Il est connu pour être hautement évolutif, tant par la quantité de données qu’il peut stocker et gérer que par le nombre d’utilisateurs simultanés qu’il peut accueillir.

PostgreSQL est disponible et distribué sous la Licence PostgreSQL, une licence open source libérale. Cela implique que vous pouvez télécharger le logiciel, l'utiliser, le modifier et le distribuer gratuitement à quelque fin que ce soit. Il est également multiplateforme, il fonctionne sous Linux, Windows et macOS, ainsi que de nombreux autres systèmes d'exploitation.

Télécharger PostgreSQL

  • Télécharger PostgreSQL 12

Il utilise et étend le langage SQL avec de nombreuses fonctionnalités puissantes et modernes. Bien qu'il soit conforme à SQL et que de nombreuses fonctionnalités requises par le standard SQL sont prises en charge (la dernière version de PostgreSQL est la 12 au moment de la rédaction et confirme au moins 160 des 179 fonctionnalités obligatoires pour SQL), il existe de légères variations dans syntaxe ou fonction.

Comment fonctionne PostgreSQL ?

PostgreSQL utilise un modèle client-serveur dans lequel le client et le serveur peuvent résider sur des hôtes différents dans un environnement en réseau. Le programme serveur gère les fichiers de base de données et accepte les connexions à la base de données à partir des applications clientes. Il peut gérer plusieurs connexions simultanées de clients en « forkant » un nouveau processus pour chaque connexion. Il exécute les requêtes de base de données des clients et renvoie les résultats aux clients. Les clients distants peuvent se connecter via le réseau ou Internet au serveur.

Les programmes clients valides incluent des outils orientés texte fournis avec PostgreSQL, un outil graphique ou des applications développées à l'aide d'autres langages de programmation.

Principales fonctionnalités de PostgreSQL

PostgreSQL prend en charge plusieurs types de données, notamment les primitives (telles que les chaînes, les entiers, les numériques et les booléens), les structurées (telles que la date/heure, le tableau, la plage et l'UUID), les documents (JSON, JSONB, XML). , valeur-clé (Hstore)), géométrie (point, ligne, cercle et polygone) et personnalisations (types composites et personnalisés). Il prend en charge l'intégrité des données à l'aide de fonctionnalités telles que UNIQUE, NOT NULL, des clés primaires et étrangères, des contraintes d'exclusion, des verrous explicites et consultatifs.

  • Il est conçu pour la concurrence et les performances en utilisant de nombreuses fonctionnalités qui incluent l'indexation et l'indexation avancée, les transactions et les transactions imbriquées, le contrôle de concurrence multiversion (MVCC), la parallélisation des requêtes de lecture et la création d'index B-tree, le partitionnement de tables, Just-In-. Compilation d'expressions Time (JIT), et bien plus encore.
  • Pour garantir la fiabilité, la redondance des données, la haute disponibilité et la reprise après sinistre, PostgreSQL offre des fonctionnalités telles que la journalisation à écriture anticipée (WAL), la réplication maître-esclave, les veilles actives et la récupération à un moment précis (PITR), et bien plus encore. . Tout cela permet le déploiement d'un cluster de bases de données multi-nœuds capable de stocker et de gérer de gros volumes (téraoctets) de données, ainsi que des systèmes spécialisés gérant des pétaoctets.
  • Il est important de noter que PostgreSQL est également très extensible à bien des égards. Pour l'étendre, vous pouvez utiliser des fonctions et des procédures stockées, des langages procéduraux tels que PL/PGSQL, Perl, Python, des expressions de chemin SQL/JSON, des wrappers de données étrangères, etc. Vous pouvez également étendre ses fonctionnalités de base à l'aide de nombreuses extensions développées par la communauté.
  • La sécurité est également au cœur de Postgres. Pour protéger vos bases de données, il propose diverses formes d'authentification (notamment GSSAPI, SSPI, LDAP, SCRAM-SHA-256, certificat, etc.), un système de contrôle d'accès robuste, une sécurité au niveau des colonnes et des lignes, ainsi qu'une fonction multi- facteur d'authentification avec des certificats et une méthode supplémentaire. Cependant, une bonne sécurité du serveur de base de données doit toujours commencer au niveau de la couche réseau et serveur.

Clients et outils PostgreSQL

PostgreSQL fournit et prend en charge de nombreuses applications client pour l'administration de bases de données, telles que l'utilitaire de ligne de commande interactif psql et pgadmin, une interface Web basée sur PHP pour l'administration de bases de données (qui est la plus voie privilégiée).

Pour utiliser les bases de données PostgreSQL afin de stocker les données de vos applications, vous pouvez connecter vos applications à l'aide de l'une des bibliothèques ou pilotes pris en charge, disponibles pour les langages de programmation les plus courants. libpq est une interface populaire de programmeur d'applications C pour PostgreSQL, c'est le moteur sous-jacent de plusieurs autres interfaces d'application PostgreSQL.

Qui utilise PostgreSQL ?

PostgreSQL est utilisé par RedHat, Debian, Apple, Sun Microsystem, Cisco et de nombreuses autres entreprises et organisations.

Consultez ces guides connexes pour configurer votre application avec la base de données PostgreSQL sous Linux.

  • Comment installer PostgreSQL dans RHEL 8
  • Comment installer PostgreSQL et pgAdmin dans CentOS 8
  • Comment installer la base de données PostgreSQL dans Debian 10
  • Comment installer PgAdmin 4 Debian 10
  • Comment installer et utiliser PostgreSQL sur Ubuntu 18.04
  • Comment installer PostgreSQL avec PhpPgAdmin sur OpenSUSE