Objectif : une base de donnée propre et efficace !
Il s’agit d’étudier la structure et le fonctionnement d’une base de données au sein d’un système informatique afin de s’assurer que cette dernière est correctement utilisée et configurée.
L'audit de base de données se focalise sur trois axes principaux :
La structure des tables
Les différentes relations entre les tables
L'utilisation des tables à travers les requêtes SQL
L'avantage de notre approche réside dans le fait qu’en tant que développeurs, nous examinons la construction des requêtes ainsi que la performance de chacune d'entre elles. Par conséquent, nous sommes en mesure de remettre en question la modélisation d’une base de données en fonction de la manière dont elle est utilisée.
Faire un état des lieux de la base de données
Comprendre son comportement et son intégration dans l’application
Identifier les différents axes d’améliorations
Améliorer les performances
L'objectif principal de l'audit est de dresser une liste des points à améliorer concernant la base de données. Ces axes d'amélioration sont classés en fonction de leur importance et sont conçus pour être facilement mis en œuvre par l'équipe de développement.
Le plan d'action permet de mettre en perspective les étapes nécessaires à la mise en place de ces améliorations. De plus, au terme de chaque audit, nous fournissons un document explicatif détaillant la procédure à suivre.
Méthodologie
Un audit de base de données est composé des éléments suivants :
Un rapport détaillé identifiant tous les points d’amélioration concernant la base de données.
Pour chaque point d’amélioration, une clarification du problème rencontré et un axe de progression.
La liste des requêtes SQL susceptibles d’être optimisées.
Un document expliquant en détail chaque règle à destination des développeurs.
Nous sommes en capacité d’analyser la plupart des SGBD les plus utilisés dans le marché : MariaDB, PostgreSQL, MySQL, Oracle etc.
Nous analysons également les codes source des applications afin de fournir des recommandations concernant leur usage.Conviction #1
La conception d’une base de données ne peut être comprise que par un humain qui comprend le but de l’application et la modélisation qui lui est associée. L’expert va donc observer en détail la conception des tables ainsi que leurs relations s’assurant de leur cohérence par rapport à l’utilisation prévue de l’application.
L’objectif est de décider ou non s’il est nécessaire d’y apporter des modifications. L’expert examine également les requêtes SQL en détail afin de s’assurer que ces dernières sont correctement construites. Une bonne construction signifie qu’il est possible de faire différemment et de manière plus efficace.
Conviction #2
Forts de notre solide expérience en audit de base de données, nous avons développé en interne un outil permettant d’analyser automatiquement et rapidement les erreurs les plus classiques concernant la base de données : absence d’index, problème de clé étrangère, typage douteux de champs, etc.
Cet outil, bien que très puissant, ne remplace pas l’analyse humaine qui permet d’avoir un point de vue global et un esprit critique quant à l’implémentation et au fonctionnement général de la base de données.
Pour certains projets, nous utilisons également l’analyse dynamique de votre application. Cette analyse fournit des informations sur les requêtes et leurs interactions avec l’application. Pour ce faire, nous remontons les couches jusqu’aux endpoints de votre API. Nous sommes ainsi en mesure, pour une API donnée, de nous assurer de la cohérence des requêtes exécutées vis-à-vis à l’usage qui est fait de la base de données. Il s’agit par exemple de vérifier qu’une API de récupération de données ne fait pas trop d’appels à la base de données. C’est le type de problématique que nous pouvons traiter via un audit de base de données.
Notre démarche
#1
Identification de la problématique et du périmètre de l’audit
#2
Premières analyses
#3
Point mi-parcours : Premiers retours & échanges avec votre équipe
#4
Poursuite des analyses
#5
Restitution orale
#6
Restitution écrite : rapport d’audit
Direction le futur
A la fin de l’audit de base de données, nous vous fournissons une matrice avec les principaux points clés relevés lors de nos analyses, vous permettant d’avoir une photo claire de l’état de la base de données, et de prioriser les actions à mener. Si besoin, nos experts techniques peuvent accompagner vos équipes dans la mise en place des recommandations.