Conception et gestion de bases de données
Une compétence analysée à partir de réalisations concrètes, avec recul critique et progression.
Ma définition
Modéliser, créer et administrer des bases de données pour stocker et organiser des informations de façon cohérente et fiable, en respectant les étapes de conception (modèle conceptuel, logique puis physique) et en garantissant l’intégrité des données par des contraintes appropriées.
Mes éléments de preuve
Sur le projet Abeille, j’ai mis en place une base MySQL gérée via phpMyAdmin pour stocker les identifiants uniques des appareils. Sur Modlink, j’ai suivi la démarche complète de conception (MCD, MLD puis schéma physique en SQL) avec des contraintes de clés étrangères garantissant la cohérence, et j’ai aussi abordé une base NoSQL MongoDB pour le site central de gestion des scénarios. Ces réalisations sont notamment documentées par : MCD, MLD et schéma physique de Modlink aboutissant à trois tables liées par clés étrangères avec suppression en cascade, jeux de requêtes SQL de vérification exécutés et résultats contrôlés, et sur Abeille un index, une procédure stockée et un trigger de contrôle des dates.
Mon autocritique
Mes premières bases étaient conçues de façon fonctionnelle mais sans réelle méthode de modélisation en amont. J’ai encore peu de recul sur le NoSQL (MongoDB), que je n’ai qu’effleuré, et sur l’optimisation des requêtes à grande échelle, qui reste un axe de progression.
Mon évolution dans cette compétence
Je suis passé d’une base simple, créée directement, à une conception méthodique respectant les étapes MCD/MLD/schéma physique et les contraintes d’intégrité. J’ai également élargi mon horizon en découvrant le paradigme NoSQL, ce qui m’a fait prendre conscience du choix à opérer entre relationnel et non relationnel selon le besoin.


