Système de gestion de bases de données (SGBD)

La conception d'un système d'information se doit d'adopter un certain nombre de principes, tels que :

  • une description des données indépendante des traitements,

  • une gestion automatique de la cohérence de données,

  • le recours à des langages non procéduraux structurants.

DéfinitionSystème de Gestion de Bases de Données

Un SGBD[1] est un logiciel qui prend en charge la structuration, le stockage, la mise à jour et la maintenance d'une base de données. Il est l'unique interface entre les informaticiens et les données (définition des schémas, programmation des applications), ainsi qu'entre les utilisateurs et les données (consultation et mise à jour).

ExempleExemples de SGBD

  • Oracle est un SGBD relationnel et relationnel-objet très utilisé pour les applications professionnelles.

  • PostgreSQL est un SGBD relationnel puissant qui offre une alternative libre (licence BSD) aux solutions commerciales comme Oracle ou IBM.

  • Access est un SGBD relationnel Microsoft, qui offre une interface graphique permettant de concevoir rapidement des applications de petite envergure ou de réaliser des prototypes.

  • MongoDb est un SGBD non-relationnel libre (licence Apache) orienté document. Il permet de gérer facilement de très grandes quantités de données - dans un format arborescent JSON - réparties sur de nombreux ordinateurs.

FondamentalObjectifs des SGBD

  • Indépendance physique des données

    Le changement des modalités de stockage de l'information (optimisation, réorganisation, segmentation, etc.) n'implique pas de changements des programmes.

  • Indépendance logique des données

    L'évolution de la structure d'une partie des données n'influe pas sur l'ensemble des données.

  • Manipulation des données par des non-informaticiens

    L'utilisateur n'a pas à savoir comment l'information est stockée et calculée par la machine, mais juste à pouvoir la rechercher et la mettre à jour à travers des IHM ou des langages assertionnels simples.

  • Administration facilitée des données

    Le SGBD fournit un ensemble d'outils (dictionnaire de données, audit, tuning, statistiques, etc.) pour améliorer les performance et optimiser les stockages.

  • Optimisation de l'accès aux données

    Les temps de réponse et de débits globaux sont optimisés en fonctions des questions posées à la BD.

  • Contrôle de cohérence (intégrité sémantique) des données

    Le SGBD doit assurer à tout instant que les données respectent les règles d'intégrité qui leurs sont imposées.

  • Partageabilité des données

    Les données sont simultanément consultables et modifiables.

  • Sécurité des données

    La confidentialité des données est assurée par des systèmes d'authentification, de droits d'accès, de chiffrement des mots de passe, etc.

  • Sûreté des données

    La persistance des données, même en cas de panne, est assurée, grâce typiquement à des sauvegardes et des journaux qui gardent une trace persistante des opérations effectuées.

Complément

ComplémentSGBD relationnel et non-relationnel

Les SGBR relationnels (SGBDR) sont les plus courants des SGBD ; jusqu'au début des années 2000, la plupart des bases de données étaient relationnelles.

Mais avec l'arrivée des géants du web, ces entreprises qui gèrent des quantités énormes de données comme Google, Amazon ou Facebook, s'est développé un mouvement important de développement de bases de données non-relationnelles, également appelées NoSQL.