Communiquer avec PostgreSQL : du protocole à Psycopg
Channel: Capitole du Libre
Date: 20/02/2023

Denis Laxalde

Interagir avec un serveur de bases de données se fait généralement à l'aide d'un client (comme psql pour PostgreSQL) ou encore d'un ORM dans le cas d'une application finale. Mais que se passe-t-il en coulisse ? Quels sont les enjeux de cette communication ?

Nous verrons cela, dans le cas du moteur PostgreSQL (https://www.postgresql.org/), en traversant les différentes couches qui composent l'interface de communication client / serveur : du protocole (https://www.postgresql.org/docs/current/protocol.html) jusqu'à une bibliothèque pour le langage Python (https://www.python.org/), en passant par la libpq (https://www.postgresql.org/docs/current/libpq.html).

En chemin, nous nous attarderons particulièrement sur Psycopg (https://www.psycopg.org/), sans doute l'adaptateur le plus utilisé dans l'écosystème Python. Le projet a une longue historique, il a récemment connu un nouvel élan et apporte encore des innovations dans ce paysage à l'intersection de PostgreSQL et Python.

Captation par @TVn7Toulouse