La lecture d’un plan d’exécution fait partie des meilleures armes du développeur
et de l’administrateur de bases de données pour identifier les problèmes de
performances. Dans un précédent article, je
présentais l’intérêt de positionner un index sur les colonnes d’une table pour
faciliter les recherches, notamment avec l’aide de la commande EXPLAIN.
À cette époque, je ne m’étais pas attardé sur la notion des statistiques de
données, que l’on retrouve dans la plupart des moteurs du marché. Voyons de plus
près ce que propose PostgreSQL pour garantir les performances de vos requêtes.
Je ne suis qu’un piètre développeur et je n’écris pas de tests unitaires. En
réalité, ce n’est ni ma spécialité ni mon cœur de métier. Et pourtant, ma
curiosité m’a mené à découvrir bien tardivement la mouvance TDD dans la
conception logicielle et la rigueur d’écrire chaque test avant l’implémentation
d’une fonctionnalité.
Ce fut par hasard et avec grand étonnement, que je suis tombé sur l’extension
pgTAP il y a plusieurs mois, et l’idée de la mettre en application sur une
instance PostgreSQL me hantait. Je vous propose dans cet article d’aborder ce
framework de tests avec un cas d’usage amusant.
La création d’un lien sous Unix se réalise avec les commandes ln ou
cp. Cette action permet de lier deux fichiers vers la même donnée et
de rendre disponible une ressource par l’intermédiaire de l’un ou de l’autre de
ces fichiers.
Cependant, les opérations diffèrent selon le type de ce lien. Le plus connu reste
le symlink, le lien symbolique. Mais qu’en est-il des autres ? Comment se
caractérisent-ils et dans quels contextes ? En vrai, qu’est-ce qu’un inode ?
Et PostgreSQL dans tout ça ? Autant de petites questions de curiosité que
j’aborde avec vous dans cet article !
La sécurité d’un système d’information prend une multitude de forme. Aussi,
j’aimerai m’attarder sur une évolution apparue en version 10 de PostgreSQL,
devenue depuis lors une bonne pratique, bien que très absente dans les
déploiements des systèmes courants.
Je voulais m’attarder sur une notion que je n’avais pas exploré à l’époque où
j’apprenais à naviguer dans un terminal GNU/Linux sur les sièges de l’école et
où l’on usait de commandes apprises par cœur : les signaux !
Les signaux les plus connus et les plus utilisés sont les numéros 6 SIGABRT et
9 SIGKILL, ça vous revient ? Pourquoi en existe-t-il autant, dans quels
contextes sont-ils nécessaires et de quelles façons les configure-t-on ? Prenons
le temps de (re)découvrir les signaux UNIX et leurs utilisations dans PostgreSQL !