1 / 53

Introduction

Introduction. INT Management. Introduction. Notion de bases de données slide 11 Contexte technique Apport BD Terminologie BD Domaines d’application Les modèles de données pour BD slide 31 Architecture de référence slide 44 Qu’est-ce qu’un SGBD ? slide 49. Contexte technique BD.

dior
Download Presentation

Introduction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction INT Management

  2. Introduction • Notion de bases de données slide 11 • Contexte technique • Apport BD • Terminologie BD • Domaines d’application • Les modèles de données pour BD slide 31 • Architecture de référence slide 44 • Qu’est-ce qu’un SGBD ? slide 49

  3. Contexte technique BD Notion de bases de données Contexte technique • Structure en mémoire centrale (MC) • Fichiers • Bases de données

  4. Structure en MC Notion de bases de données Contexte technique • Principes • Stockage des données dans la mémoire volatile d’un ordinateur • Problèmes • Stockage temporaire • «Petits» volumes de données • Langages de programmation • Contexte mono-processus (mono-utilisateur en général)

  5. Fichiers Notion de bases de données Contexte technique • Stockage persistant sur disque • «Gros» volumes de données • Langages de programmation et SGF • Contexte mono-utilisateur (en général)

  6. Approche fichier avec PCs Notion de bases de données Contexte technique Direction des études Bibliothèque Service social Appli En Cobol Appli en Java Appli en C Fichiers Elèves et UVs Fichiers Elèves et Livres Fichiers Elèves et Chambres

  7. Programme 1 Description du fichier des Elèves Edition du fichier Elèves par ordre alpha Programme 2 Description du fichier des Elèves Mise à jour du fichier Elèves via nom élève Approche fichiers + SGF Notion de bases de données Contexte technique Application bibliothèque * 2 Fichier Elèves SGF

  8. Problèmes de l’approche fichier Notion de bases de données Contexte technique • Difficulté à saisir les liens entre les données • Pas de partage de données entre les utilisateurs • Pas de vision globale des données • Redondance des données • Risque d'incohérence des données • Pas d'indépendance entre les données et les traitements • Problème de gestion de la sécurité des données • Multiplicité des traitements, des langages, des matériels

  9. Bases de données Notion de bases de données Contexte technique • Stockage persistant sur disque • «Très gros» volumes de données • Langage de requêtes et langages de programmation SGBD • Contexte multi-utilisateurs

  10. Approche centralisée Notion de bases de données Contexte technique PC Windows BD Appli C Elèves Uvs Livres Chambres Appli Cobol Appli Java PC NT SGBD Description BD PC Linux Terminaux

  11. Appli C Appli Cobol Appli Java Approche client/serveur Notion de bases de données Contexte technique PC Windows BD Elèves Uvs Livres Chambres SGBD PC NT Description BD PC Linux

  12. Apport d’une approche BD Notion de bases de données Apport BD • Intégration : • Description unique et globale des données • Eviter les redondances • Eviter les incohérences • Indépendance : • Indépendance entre données et traitements • Séparation entre les descriptions logiques et physiques des données

  13. Apport d’une approche BD (2) Notion de bases de données Apport BD • Sécurité : • Contrôle sémantique des données • Protection contre les accès non autorisés • Protection contre les pannes • Facilités pour l’utilisateur : • Partage des données • Vision « haut niveau » et « personnalisée » des données • Manipulation « aisée » des données • Accès efficaces aux données • Répartition des données et des traitements

  14. Terminologie BD Notion de bases de données Terminologie BD • Données • Modèle de données • BD • SGBD • Schéma d’une BD • Instance d’une BD • Contraintes d’intégrité • Métabase

  15. Données Notion de bases de données Terminologie BD • Une structure • Simple: prix, nom, date • Complexe: personne, document, image • Une sémantique • Le solde d’un compte courant • Une photo de Paris réalisée par le satellite SPOT • Un propriétaire • Responsable de la création d’une donnée • Définit les règles pour son identification et son intégrité: • « La température de l’air est comprise entre -30° et +40°C » • « Le salaire de l’année n est supérieur au salaire de l’année n-1 » • Accorde des droits d’utilisation

  16. Données (2) Notion de bases de données Terminologie BD • Des utilisateurs • Interrogent les données • « Quelle était la température à paris le 1er janvier 1997 ? » • Mettent à jour les données • « Créditer le compte de M. Monet de 1000 F »

  17. Modèle de données Notion de bases de données Terminologie BD • Ensemble de concepts pour décrire : • Les données du monde réel • Les liens entre les données • La sémantique des données • Ensemble d’opérations pour manipuler les données

  18. BD ET SGBD Notion de bases de données Terminologie BD • BD : • Collection de données décrites selon un certain modèle • SGBD : • Système logiciel gérant les données d’une BD, selon un modèle fixé • Un SGBD doit permettre la définition, la manipulation et le contrôle des données

  19. Schéma et instance d’une BD Notion de bases de données Terminologie BD • Schéma (intention) : • Description des données de la base, conformément à un modèle • Schéma réseau, schéma relationnel, ... • Statique en général. • Instance (extension) : • Collection de données de la base écrite selon un certain modèle • Instance du schéma • Dynamique

  20. CI et Métabase Notion de bases de données Terminologie BD • Contrainte d’intégrité (CI): • Règle spécifiée sur les données, pour définir un état cohérent de la base • Le salaire d’un employé doit être supérieur au SMIC • Métabase (dictionnaire de données - DD): • Collection des données qui décrivent la BD • « Valeur du schéma »

  21. Domaines d’application Notion de bases de données Domaines d’application • Comme élément central : • Banques de données (professionnelles, grand public) • Systèmes transactionnels (banques, assurances,…) • Systèmes d’aide à la décision (tableaux de bord, analyse statistique,…) • Comme élément essentiel : • Systèmes d’information et de communication (entreprise, administration,…) • Systèmes de surveillance et de contrôle (télécoms, production,…) • Comme élément auxiliaire : • Systèmes de recherche documentaire (textes,sons, graphiques, …) • Systèmes XAO (CAO,PAO,EAO,…) • Systèmes experts

  22. Classification Notion de bases de données Domaines d’application TPC (Transaction Processing Council) Benchmarks systèmes transactionnels

  23. Les modèles de données pour les BD Modèles BD • Modélisation des données • Modèles • Modèle entité/association [Chen 76] • Modèle hiérarchique • Modèle réseau • Modèle relationnel

  24. Modélisation des données Modèles BD • Modèle de données : • Ensemble de concepts pour décrire : • Les données • Les liens entre les données • La sémantique des données • En général, un ensemble d’opérations est associé pour manipuler les données • Formalisme de description : • Textuel • Graphique • Mathématique • Exemples de modèles : • Entité/association • Hiérarchique/réseau • Relationnel • Objet, relationnel-objet

  25. Modèle Entité/Association [Chen 76] Modèles BD code nbH coord UV 1,n num S’inscrire note nom 3,n Élève age 0,1 0,n adresse Emprunter Louer datePrêt côte 0,1 no 1,1 Livre Chambre titre prix

  26. Livre 0,1 cote Emprunter titre Eleve datePret UV 0,n num S’inscrire code 1,n 3,n nom nbH note Louer age coord 0,1 adresse Chambre no 1,1 prix Modèle Entité/Association - 2

  27.  Avantages Sémantique riche Extension aux concepts objets (héritage, ...) Aspect visuel  Modèle de conception de BD Inconvénients Uniquement un modèle de description de données Pas de langage de manipulation associé Pas de SGBD E/A  Pas un modèle d’implantation de BD Critique du modèle Entité/Association Modèles BD

  28. Modèle hiérarchique Modèles BD • Système IMS d’IBM conçu à la fin des années 60 pour le programme Appolo (NASA) • Exemple Élève UV Livre UV Chambre Elève

  29. Modèle hiérarchique (suite) Modèles BD • Schéma BD • Structure arborescente (forêt) • BD • Collection d’enregistrements reliés par des pointeurs • Langage de manipulation • Navigationnel et procédural • Utilisation de pointeurs • (Exemple du langage DL/1 du système IMS) • Problèmes : • Pas d’indépendance logique/physique • Redondance des données, risques d’incohérence

  30. Modèle réseau Modèles BD • Modèle défini par le groupe DBTG du comité CODASYL en 1971 (revu en 1978) • Exemple Élève UV Livre Chambre Inscrit

  31. Modèle réseau (suite) Modèles BD • Schéma BD • Structure de graphe orienté acyclique (DAG) • BD • Collection d’enregistrements reliés par des pointeurs • Langage de manipulation • Navigationnel et procédural • Utilisation de pointeurs • Standard CODASYL 71, 78 • Systèmes • IDS2 d’Honeywell (1975), Total de Cincom (1974), Adabas de Soft. Ag (1978) • Problèmes • Pas d’indépendance logique/physique

  32. Modèle relationnel Modèles BD • [CODD 70] « A Relational Model for Large Shared Data Banks » • Exemple Élève(num, nom, adresse, age) UV(code, nbH, coord) Inscrit(numElève, codeUV, note) Livre(côte, titre, numElève, datePrêt) Chambre(no, prix, numElève)

  33. Modèle relationnel (2)« MLD » Ecole Modèles BD

  34. Modèle relationnel (3) Modèles BD • Schéma BD • Structure de relation • BD • Ensemble d’enregistrements reliés par des valeurs • Langage de manipulation • Ensembliste • Déclaratif • Standard international [ SQL 86, 89, 92 ou SQL2] • Prototypes de recherche • System/R chez IBM (1976), Ingres à Berkeley (1976) • Systèmes commerciaux • SQL/DS et DB2 d’IBM (1982), Oracle (1983), Ingres (1983), Informix (1981), Sybase (1984), SqlServer (1998) • MySQL (1995) • Access

  35. Modèle relationnel (suite) Modèles BD • Avantages • Indépendance logique/physique • Langage de manipulation simple • Basé sur une théorie mathématique solide • Standard

  36. Une architecture de référence pour les SGBD Architecture de référence • Description des données : 3 niveaux d’abstraction • Exemple • Conséquences • Conception d’une BD

  37. Description des données : 3 niveaux d’abstraction Architecture de référence • Groupe ANSI/X3/SPARC (1975) Schéma externe 1 Schéma externe n …. Schéma conceptuel Schéma physique

  38. Exemple Architecture de référence • Schéma externe pour • appli Bibliothèque • - Elève • Livre • Schéma externe pour • appli Direction des études • - Elève • UV • Schéma externe pour • appli Service social • - Elève • Chambre Comment les données sont vues par les « utilisateurs » Représentations logique Multiples Schéma conceptuel Globalité des données Représentation logique Unique Schéma Physique Globalité des données Représentation physique des données. Comment les données sont mémorisées (fichiers, index, …) Unique

  39. Conséquences Architecture de référence • Indépendance physique • Indépendance entre les structures de stockage et les structures de données • Pouvoir modifier l'organisation physique sans modifier les programmes d’application • Exemple: ajouter un index • Indépendance logique • Pouvoir modifier le schéma conceptuel sans modifier les programmes d’application • Exemple : ajouter un attribut

  40. Conception d’une BD Architecture de référence

  41. Qu’est-ce qu’un SGBD ? Qu’est-ce qu’un SGBD ? • But • Moyens mis en oeuvre • Fonctionnalités • Architecture • Langage de définition des données (LDD) • Langage de manipulation des données (LMD) • Interface avec un LPG • Java et les SGBD • Transaction • Les utilisateurs d’un SGBD

  42. But et moyens Qu’est-ce qu’un SGBD ? • But : • Simplifier et faciliter l’accès aux données de la base • Assurer une grande sécurité du système d'information • Moyens : • En offrant une vision de « haut niveau » des données, via un modèle logique des données • En se chargeant de faire la correspondance avec la vision de « bas niveau » des données (structures de stockage et méthodes d’accès)

  43. Fonctionnalités Qu’est-ce qu’un SGBD ? • Langage de définition et de manipulation des données (LDD + LMD) • Gestion de l’intégrité  définition des CI, Trigger • Gestion de la persistance • Structures de stockage et méthodes d’accès  cluster, index • Gestion de la concurrence (transaction, verrouillage) • Gestion de la sécurité de fonctionnement  transaction, journaux, mécanisme de reprise sur panne • Gestion des droits identification, attribution de droits • Optimisation  algorithme, statistiques • Interface avec les langages de programmation

  44. Fonctionnalités (++) Qu’est-ce qu’un SGBD ? • Gestion de versions • Gestion de la répartition • Gestion d’objets complexes (image, document, ...) • Gestion de connaissances, règles de déduction • Environnement de développement (AGL)

  45. Administrateur Programmeur d’application Utilisateur terminal Traducteur LDD Traducteur LMD Noyau SGBD BD Métabase Architecture d’un SGBD Qu’est-ce qu’un SGBD ? Définition des schémas de la BD Manipulation de la BD

  46. LDD Qu’est-ce qu’un SGBD ? • Définition logique des données • Schéma conceptuel global • Schémas des vues utilisateur • Structure des données et liens entre les données • Définition physique des données • Schéma physique des données • Méthodes de placements et d’accès • Contrôle des données • Contraintes d’intégrité • Droits d’accès

  47. LMD Qu’est-ce qu’un SGBD ? • Objectif • Interroger et mettre à jour les données (extraire, ajouter, supprimer, modifier ) • Style procédural • Exprimer la séquence des opérations d’accès aux données pour obtenir le résultat • Modèle hiérarchique et réseau • Langage navigationnel • Norme CODASYL 71, 78 pour modèle réseau • Dépendant du niveau physique • Intégration dans un LPG (Cobol pour modèle réseau) • Style déclaratif • Exprimer l’information souhaitée sans dire la façon dont on accède à l’information • Modèle relationnel • Langage ensembliste • Indépendant du niveau physique • Norme SQL 86, 89, 92 • SQL « seul » et SQL « intégré » dans un LPG « classique »

  48. Interface avec un LPG Qu’est-ce qu’un SGBD ? • Problème d’un LMD • Uniquement interrogation et mise à jour des données • Pas de « calculs » sur les données • Solution • Interfacer le LMD avec un LPG • Diverses techniques d’interfaçage (précompilation, ....) • Exemples • LMD réseau interface normalisée avec COBOL • LMD relationnel interfaces normalisées entre SQL et • Cobol, Pascal, Fortran, PL/1 (1978) • Ada, C (1989) • Java (SQLJ)

  49. Java et SGBD Qu’est-ce qu’un SGBD ? • JDBC : API de niveau SQL/CLI avec indépendance des SGBD cibles (pb de pilote) • SQLJ : embedded SQL pour Java • Interface de gestion de la persistance des objets Java (transformation automatique des objets java en structures relationnelles dans les 2 sens)

  50. Notion de transaction Qu’est-ce qu’un SGBD ? • Séquence d’opération élémentaires (lire, écrire) sur la BD Transaction retrait (noCompte, montant) Début select solde into s from Comptes where numCompte = noCompte; si s > montant alors Update compte set solde = solde – montant where numCompte = noCompte; donnerArgent(montant); Valider(); Sinon Imprimer(‘opération impossible’); Annuler(); Finsi Fin;

More Related