Système de gestion de bases de données (SGBD)
Impossible d'accéder à la ressource audio ou vidéo à l'adresse :
La ressource n'est plus disponible ou vous n'êtes pas autorisé à y accéder. Veuillez vérifier votre accès puis recharger la vidéo.
Objectifs
Mise en situation
Lorsque l'on développe une application, on a souvent besoin de stocker des données, qui ont, la plupart du temps, des liens entre elles. Sur un réseau social, il y a des personnes qui peuvent interagir entre elles, s'envoyer des messages, se suivre, etc. Lorsque ces données deviennent très grandes, de l'ordre de plusieurs millions, il est inimaginable de les stocker dans un simple fichier, ou un tableur, qui ferait office de base de données.
Les systèmes de gestion de base de données, ou SGBD, sont des outils qui aident à manipuler des bases de données. Leur fonction est double : permettre de décrire la structure des données a priori, et gérer la cohérence des données et des liens entre elles.
Définition : Système de Gestion de Bases de Données
Un SGBD[2] 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).
Exemple : Exemples de SGBD
Oracle est un SGBD commercial relationnel et relationnel-objet situé parmi les leaders du marché dans le domaine des applications métiers.
PostgreSQL est un SGBD libre relationnel puissant qui offre une alternative libre (licence BSD) aux solutions commerciales d'Oracle ou IBM. PostgreSQL dispose d'une documentation d'excellente qualité et d'un support très proche du standard SQL, ce qui en fait également un bon outil d'apprentissage.
Access est un SGBD relationnel commercial, 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 réparties sur de nombreux ordinateurs. Il se base sur le format JSON.
MySQL est un SGBD relationnel open source (licence GPL et commerciale) très utilisé pour la réalisation de sites web dynamiques. Depuis la version 4 MySQL implémente la plupart des fonctions attendues d'un SGBD relationnel. MySQL a son pendant libre, MariaDB.
SQLite est un SGBD non-relationnel libre. C'est un système très léger, utilisé pour des applications embarquées. Il est entièrement écrit en C et comporte la majorité des fonctionnalités attendues de SQL.
Fondamental : Objectifs 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ément : SGBD relationnel et non-relationnel
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 (Google, Amazon ou Facebook), entreprises qui gèrent des quantités énormes de données, s'est développé un mouvement important de développement de bases de données non-relationnelles, également appelées NoSQL pour Not-Only SQL.
Impossible d'accéder à la ressource audio ou vidéo à l'adresse :
La ressource n'est plus disponible ou vous n'êtes pas autorisé à y accéder. Veuillez vérifier votre accès puis recharger la vidéo.