Académique Documents
Professionnel Documents
Culture Documents
• Statistiques
1) Présentation générale
Base de données
Pourquoi Base de données?
• Beaucoup de données
• Une structure régulière et fixe (e.g. adresse, information sur une
personne, …)
• Traitement similaire
• Stockage dans une structuration (base de données) prédéfinie
• Une vue uniforme, et abstraite de ces données
• Offrir des traitements (consultation, mise à jour, …) efficaces et
standard
• Garantir la cohérence
5
Définitions (Base de données)
• Le concept de base de données permet de stocker et d’organiser une grande
quantité d’information.
=> Une base de données (BD ou BDD) est un ensemble structuré et organisé
permettant le stockage de grandes quantités d’informations afin d’en faciliter
l’exploitation (ajout, mise à jour, recherche)
• Les BD sont conçues pour traiter de gros volumes d'informations. La gestion de ces
données demande :
=> une structuration de ces données
une rationalisation des procédures d'accès et de traitement
une assurance de la sécurité des informations stockées dans la BD
Définitions (Base de données)
On rajoute parfois deux conditions supplémentaires à la définition précédente :
• exhaustivité : la base contient toutes les informations requises pour le
service que l'on en attend ;
• unicité : la même information n'est présente qu'une seule fois (pas de
doublons).
Définitions (SGBD)
• Les SGBD (Système de Gestion de Base de Données) permettent de
naviguer dans ces données et d’extraire (ou de mettre à jour) les
informations voulues au moyen d'une requête
Un SGBD est le logiciel qui permet la gestion et l’accès à une base de
données
Ainsi, il permet de:
Créer - Mettre à jour – Interroger – Visualiser - Administrer … une base de
données
Objectifs d’un SGBD
• Masquer les aspects de stockage.
Indépendance logique
Indépendance physique
• Gérer efficacement les données.
• Faciliter l'extraction et l'ajout d'information.
• Optimiser les traitements de l’information.
• Assurer le sécurité des données.
• Éviter les conflits lors d’exploitation partagée
Objectifs d’un SGBD
• Description /modélisation des données
• Insertion des données (sécurité et intégrité des données)
• Accès aux données (gestion des accès concurrents) (sécurité et intégrité des
données)
• Mise à jour des informations
1 – Introduction aux BD et aux SGBD
Contexte
• Les Bases de Données sont nécessaires à tous les domaines d'activité: industrie,
commerce, services, recherche scientifique, …
• Leur succès est lié aux avancées scientifiques et technologiques en gestion de
l'information et des communications
• Les Systèmes de Gestion des Bases de Données (SGBD) sont parmi les systèmes
logiciels les plus complexes
• Poids économique: par exemple le SGBD Oracle a un CA 14,4 Milliards de $ et
65000 collaborateurs (1) , utilisé par 98 entreprises du classement Fortune 100
(1) http://www.oracle.com/global/fr/corporate/index.html 12
Exemples de BD et SGBD
Exemples de données :
• Ensemble des informations relatives à une entreprise: liste du personnel, liste des clients, liste des produits.
• bottin téléphonique;
• contenu d'une cave à vin;
• dossiers médicaux hospitaliers.
Exemples de SGBD:
• PC : Access, Foxpro, Paradox …
• Gros Systèmes: Oracle, DB2, Sybase, SQL Server, …
• Freewares et Sharewares : MySQL, MSQL, …
Exemples
• Liste des étudiants
• Contraintes d’intégrité
• Définissent un état cohérent de la base
• Exprimées simplement
• Vérifiées automatiquement à chaque insertion, modification ou suppression des données
Non redondance de l’information
• Pas de duplication de l’information
Sécurité et confidentialité des données
• Données partagées
• Les informations confidentielles ne sont accessibles qu’aux personnes habilitées
• Associer à chaque utilisateur des droits d’accès aux données
• Sécurité et protection des supports physiques des informations contre toute
altération ou destruction (résistance aux pannes)
Une panne survient,
il faut pouvoir récupérer une base dans un état « sain »
- Récupérer les données dans l’état dans lequel elles étaient avant la modification
- Terminer l’opération interrompue
Partage des données
• Bien que partageant des ressources communes, les applications doivent
être performantes
• Permettre aux utilisateurs d’accéder aux mêmes données au même moment
Historique
Année 60:
• Systèmes de gestion de fichiers plus ou moins sophistiqués, reliés par des pointeurs.
Ex: programmes de la conquête spatiale (APOLLO)
• Systèmes de gestion de base de données réseaux (travaux de CODASYL) et hiérarchiques proches des
systèmes de gestion de fichiers.
Ex: TOTAL, IDMS, IDS.2 et IMS.2, etc.
Année 70:
• Codd, mathématicien et chercheur chez IBM, propose le modèle relationnel (basé sur le concept de Relation
de la théorie des ensembles)
• Codd définit l’Algèbre Relationnelle (base du SQL)
Historique (suite)
Année 80:
• Systèmes de gestion de base de données relationnels • SGBD commercialisés à partir de 1980 • ORACLE,
SYSBASE, DB2, etc.
Année 90:
• Les systèmes de gestion de base de données relationnels dominent le marché.
Ex: Extension du relationnel (Oracle 8, DB2 Universal Database, etc.)
• Début des systèmes de gestion de bases de données orientés objet.
Ex: ObjectStore, GemStone, O2, etc
4ème génération: Internet, les informations non structurées, le multimédia, etc…
2) Concept et conception de
la base de données
1 – Introduction aux BD et aux SGBD
24
Concepts base de données : vocabulaire
• BD = ensemble de tables (ou relations) => Les TABLES correspondent aux
relations
• Une entité (ou enregistrements ou tuple) est décrite par un ensemble de champs (ou
attributs) =>Les CHAMPS correspondent aux attributs (= colonne)
Exemple développé
Gestion des réclamations clients dans une entreprise d’électroménager :
• Quelques consignes :
– Se limiter au domaine d'étude
– Éviter au maximum les redondances
Structure globale d'un SGBD
• Un SGBD se divise en :
· Modules (tâches spécifiques)
· Structure de données
• Auxquels ont accès différents usagers :
· Exploitants
· Administrateur
· Concepteur(s)
· Analyste de systèmes
· Programmeurs d'applications
Structure globale d'un SGBD (suite)
• Exploitants:
Ø Accèdent à la base dans leurs fonctions quotidiennes:
· recherche,
· mise-à-jour,
· générer des rapports.
• Administrateur:
Ø Administre les ressources (BD, SGBD et les logiciels).
Ø Autorise les accès et gère l’utilisation.
Ø Responsable de la sécurité et des améliorations du temps de réponse du système.
(Dans les grandes organisations, il est assisté par du personnel.)
Structure globale d'un SGBD (suite)
• Concepteur(s) de la base:
Ø Le concepteur et l’administrateur peuvent être la même personne.
Ø Responsable d’identifier les données à être stockées.
Ø Choisis les structures pour représenter les données.
Ø Doit bien comprendre les requêtes des usagers.
Ø S’occupe du module de Langage de définition des données (DDL).
• Analyste de systèmes:
Ø Détermine les besoins des usagers et développe les spécifications.
Ø S’occupe du module de Langage de Manipulation des données (DML)
• Programmeurs d'applications:
Ø Implante les spécifications dans un programme et effectue des tests, les documente et les entretient.
Vue d ’ensemble… SGBD
Le SGBD est un système logiciel qui facilite les processus:
•de définition,
•de construction
•et de manipulation des BDs.
Exemple: Description fonctionnelle
Considérons la base de données d’une université pour maintenir l'information concernant
les étudiants et leurs cours. Chaque étudiant suit un certain nombre de cours. Un cours peut
posséder certains pré-requis. Pour chaque cours effectués, un étudiant doit avoir un résultat.
Vue d ’ensemble… Mise en situation d’un
exemple
Définition des données:
•Permet de spécifier les types de données de façon détaillée.
•La définition des types de données est stockée dans le catalogue (dictionnaire) qui comprend:
•La structure de chaque fichier
•Le type et le format de chaque élément de données
•Différentes contraintes sur les données
Cette information est appelée: Méta-data
Cette BD pourrait être organisée en 4 entités comme suit:
ÉTUDIANT: Information sur chaque étudiant.
COURS: Information sur chaque cours.
RÉSULTAT: Résultat pour les cours des étudiants.
PRÉ-REQUIS: Les pré-requis de chaque cours.
Vue d ’ensemble … Définition des données
Pour définir cette BD, il faut spécifier les données à stocker dans chaque enregistrement:
Exemple: Retrouver la liste de tous les cours et résultats de l’étudiant Jean Rakoto.
1. Aller dans le fichier ÉTUDIANTS. 2. Trouver le code permanent de Jean Rakoto.
3. Aller dans le fichier RÉSULTAT. 4. Lister tous les cours et leur résultat qui ont le code permanent de Jean Rakoto.
Lister les cours d’un département.
1. Aller dans le fichier COURS. 2. Lister tous les cours du département correspondant.
Vue d ’ensemble … Manipulation des données
(suite)
Exemple (suite):
• Quels sont les cours pré-requis du cours de UE7.
1. Aller dans le fichier PRÉ-REQUIS
2. Lister tous les numéros de pré-requis correspondant au cours UE7
3. S’il y a résultat, aller dans le fichier COURS
4. Chercher les noms de cours correspondant au numéro de prérequis trouvé précédemment