1 / 201

Bases de données

Bases de données. Nazha SELMAOUI. I. Aperçu de l’architecture de Bases de données et des SGBD. SGBD (système de gestion de bases de données) permet aux utilisateurs de : définir, créer, maintenir une BD avec accès contrôlé aux données BD : ensemble cohérent de données liées entre elles

duke
Download Presentation

Bases de données

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. Bases de données Nazha SELMAOUI Nazha SELMAOUI Université de la Nouvelle Calédonie

  2. I. Aperçu de l’architecture de Bases de données et des SGBD • SGBD (système de gestion de bases de données) permet aux utilisateurs de : • définir, créer, maintenir une BD avec accès contrôlé aux données • BD : ensemble cohérent de données liées entre elles • SGBD peut contenir : • matériel, logiciels (utilitaires), données, utilisateurs, procédures • matériel : constitué du système d ’informations (SI) pour disposer de la base de données et y accéder Nazha SELMAOUI Université de la Nouvelle Calédonie

  3. 1. Introduction aux SGBD • Matériel est constitué d’un réseau avec un serveur central et des clients • serveur central contient physiquement la BD • clients sur PC sont des programmes qui interagissent avec le SGBD • Un SGBD peut être : • mono-utilisateur : serveur et clients sur un seul ordinateur (accès possible de plusieurs utilisateurs à différents moments) • multi-utilisateurs Nazha SELMAOUI Université de la Nouvelle Calédonie

  4. 1. Introduction aux SGBD • BD contient toutes les données nécessaires à l’organisation • Il est essentiel de séparer entre la • BD effective • programmes qui la gèrent • BD est conçue est chargé pour un public particulier et dans un but précis. • Chaque client peut disposer de différents niveaux d’accès aux informations : • modifier la structure, les données, seulement consulter Nazha SELMAOUI Université de la Nouvelle Calédonie

  5. 1. Introduction aux SGBD • Dans une application il est important de relever que seule une partie du monde réel peut être représentée par un SGBD • Objet = entité : élément significatif pour lequel on dispose d’informations • Les caractéristiques qui décrivent ou qualifie une entité s’appellent ses attributs Nazha SELMAOUI Université de la Nouvelle Calédonie

  6. 1. Introduction aux SGBD • Exemple : • BD relative à des étudiants : • entité = étudiant • attributs = (nom, prénom, spécialité, diplôme, date de naissance, adresse, niveau de formation) on ne s ’intéresse pas aux amis vêtements etc. • ensemble des valeurs de chaque attribut = domaine • Exemple : • date de naissance ne doit pas être du XVIIIème siècle • formation {Deust, Deug, Licence, Maîtrise, Dea, Doctorat} Nazha SELMAOUI Université de la Nouvelle Calédonie

  7. 1. Introduction aux SGBD • Chaque utilisateur nécessite des possibilités logicielles différents: • administrateur de la BD : personne ou groupe en charge d ’implémenter le système de BD dans l’organisation. Possède tous les privilèges système autorisés par le SGBD. Assigne et supprime des niveaux d’accès aux utilisateurs • utilisateurs finales : personnes qui interagissent directement avec le système : • répondent aux requêtes extérieurs • répondent aux questions de leur supérieurs hiérarchiques • autorisation de modifier ou seulement la possibilité d ’afficher les données • programmes d’applications (autre type d ’utilisateurs): interagissant avec la BD de manière différentes • accèdent aux données depuis des programmes de haut niveau (C++, VB etc.) • programmeurs conçoivent des programmes qui accèdent aux données en les modifiant Nazha SELMAOUI Université de la Nouvelle Calédonie

  8. 1. Introduction aux SGBD • Ensemble des procédures contrôlant le comportement du système i.e. les pratiques suivies par les users pour obtenir des données • entrer de nouvelles données • maintenir • récupérer • Exemple : dans un système de paie • comment les heures travaillées sont elles fournies à l’opérateur? • comment elles sont introduites dans le système? • quand exactement sont générés les états mensuelles et à qui les envoyer? Nazha SELMAOUI Université de la Nouvelle Calédonie

  9. Exercice • Indiquer quel type d’utilisateur doit exécuter les fonctions suivantes • écrire un programme d’application pour générer et imprimer les chèques • changer dans la base de données l’adresse d ’un employé qui a déménagé • créer un nouveau compte d ’utilisateur pour un employé nouvellement embauché Nazha SELMAOUI Université de la Nouvelle Calédonie

  10. Solution • Un programmeur d ’application ou une équipe de programmeurs vont concevoir et implémenter un tel programme d ’application • Un utilisateur final peut recueillir au téléphone les informations concernant un employé et accéder directement à la base de données pour les modifier. Toutefois, changer de telles informations à partir de communications téléphoniques peut générer des erreurs typographiques ou de mauvaise compréhension. Dans le but de vérifier si les mises à jour sont réalisées correctement, de nombreuses organisations exigent que les modifications soient demandées par écrit. • C’est l’administrateur de la BD ou son assistant qui doivent créer l ’identifiant du nouvel employé. Dans une petite organisation une seule personne peut se charger de la BD dans une grande les tâches sont partagées. Nazha SELMAOUI Université de la Nouvelle Calédonie

  11. 1.1. Données • Données sont le noyau du SGBD = ensemble d ’informations nécessaires à l’organisme • Métadonnées : information relatives à la BD • dictionnaire des données ou catalogue, il contient : • informations sur les utilisateurs • les privilèges • la structure interne • Il est essentiel de gérer avec soins les données pour que les informations restent fiables, à jour et précises Nazha SELMAOUI Université de la Nouvelle Calédonie

  12. 1.1. Données • Base de données peut être : centralisée ou distribuée (2 à 3 niveaux) Nazha SELMAOUI Université de la Nouvelle Calédonie

  13. 1.1. Données • Système peut être : • mono-user : serveur client sur un seul ordinateur • multi-user : grande quantité de données • données intégrées : • une seule informations enregistrées • accès à différentes parties de la BD • adresse se trouvant dans un seul endroit  différents niveaux d ’accès  privilèges • données partagées : garantit que les users ne modifient pas en même temps les données • exemple : • département de comptabilité et département d ’expéditions : besoin de l’adresse du client Nazha SELMAOUI Université de la Nouvelle Calédonie

  14. 1.2. Pourquoi avons-nous besoin d ’une Base de données • Conserver correctement les données • précisions des données • actualisation • éviter : incohérence, redondance  contraintes d’intégrité • Fournir l’accès aux données • stockage et accès faciles et rapides • maintenance sans gêner l’accès • Maintenir la sécurité des données • différents niveaux d’autorisations • gérer l’accès en même temps  privilège • SGBD vs fichier Nazha SELMAOUI Université de la Nouvelle Calédonie

  15. Exercice • Considérant la base de données d’un câble-opérateur, contenant des noms d ’utilisateurs, des adresses, des catégories de services (abonnement minimal, abonnement à toutes les chaînes, paiement à l ’émission, etc.) et des informations de facturation. Indiquez pour chaque utilisateur : un employé de facturation, une personne de la maintenance et un représentant du service commercial, à quels éléments cet utilisateur doit pouvoir accéder et auxquels il peut accéder en vue de procéder à des modifications Nazha SELMAOUI Université de la Nouvelle Calédonie

  16. solution Nazha SELMAOUI Université de la Nouvelle Calédonie

  17. Exercices • Décrivez comment un groupe médical comprenant 3 médecins dans deux cabinets médicaux distincts conserve la base de ses patients si elle est centralisée. Comment peut-elle être modifiée pour en faire un système distribué? • Dressez une liste de toutes les bases de données où vous pensez que figurent votre nom et des informations financières vous concernant. Comment pouvez-vous vérifier l’exactitude des données? Nazha SELMAOUI Université de la Nouvelle Calédonie

  18. Solutions • Dans un système centralisé, toute la BD réside sur un serveur. Chaque machine cliente accède à la BD centrale pour disposer des informations sur les patients. Si le système central est hors service, il ne serait plus possible d’accéder aux informations. Par contre dans un système distribué. Il y aura deux serveurs pour les patients du cabinet 1 et cabinet 2. Le SGBD se charge de trouver les informations sur chaque patient. Si l ’un tombe en panne l’autre reste disponible. • Employeurs, établissement d ’enseignement, organisation religieuse, administrations ou établissements bancaires ou de crédit. Les lois exigent que vous ayez le droit de connaître et corriger les informations vous concernant. Nazha SELMAOUI Université de la Nouvelle Calédonie

  19. 2. Modèles de données • Un modèle de données est un moyen d’expliquer la disposition logique des données et les relations entre les différentes parties de chaque élément de l’ensemble. (maquette permettant aux personnes de conceptualiser plus facilement une idée abstraite) • modèles existant avant : • tables à 2 dimensions • simple fichier texte (accès séquentiel) • sur gros système : • hiérarchique (arborescence) • réseau avec des liens entre différents éléments, accès par des cheminements Nazha SELMAOUI Université de la Nouvelle Calédonie

  20. 2. Modèles de données • Aux années 70 (3ème génération) • SGBD relationnel développé par CODD, tables ou relations avec accès rapide et facile • Modèle orienté objet • en pratique une impasse • Retour au relationnel • évolution probable de tout SGBD relationnel (SGBDR) Nazha SELMAOUI Université de la Nouvelle Calédonie

  21. Exercice 1. Étant le modèle de données suivant d ’une entreprise de jardinerie, doit-il être hiérarchique, réseau ou relationnel 2. Comment les mêmes données seraient-elles organisées dans un SGBDR? Nazha SELMAOUI Université de la Nouvelle Calédonie

  22. Solutions • 1. Ce doit être un modèle hiérarchique, car chaque niveau n’a qu’un nœud qui pointe sur lui. Pour déterminer la quantité de lumière il faut connaître la plante ainsi de suite • 2. Nazha SELMAOUI Université de la Nouvelle Calédonie

  23. 3. Architecture du système de base de données • Séparation entre : BD et ses langages  au concept de l’organisation (schéma) d ’une BD Nazha SELMAOUI Université de la Nouvelle Calédonie

  24. 3.1. Schémas et langages • Modèle décrit les données et leurs relations à un niveau abstrait • Schéma de BD décrit l’organisation conceptuelle du SBD. • Définit pendant la conception au moyen d’un langage de définition de données (DDL) • L’organisation des données se définit à 2 niveaux : • logique (l’organisation): est le modèle conceptuel de données • physique : la façon dont les données sont stockées sur le disque Nazha SELMAOUI Université de la Nouvelle Calédonie

  25. 3.1. Schémas et langages • DDL permet au user de définir l’organisation des données au niveau logique • Le logiciel SGDB prend en charge l’organisation physique en correspondant le physique et logique • DDL permet de créer des tables et décrire les champs de chaque table (voir exemple ci-après) • Le remplissage d’une base de données se fait par un langage de manipulation de données (DML) • SQL, ACCESS (interaction graphique cachant les opérations réalisées en back-ground) Nazha SELMAOUI Université de la Nouvelle Calédonie

  26. 3.1. Schémas et langages • Exemple : pas d’informations sur l’organisation logique Nazha SELMAOUI Université de la Nouvelle Calédonie

  27. Exercices • 1. Concevez un schéma possible pour un cabinet médical. Les médecins veulent un accès immédiat aux informations médicales du patient. L’opération de saisie doit être sûr que toutes les mutuelles ont été facturées et que chaque patient s’est acquitté du solde • 2. L’utilisateur doit-il faire appel au DML ou au DDL pour accomplir chacune des tâches suivantes? • Changer l’adresse d ’un client; • définir une table d’inventaire; • entrer les renseignements sur un nouvel employé Nazha SELMAOUI Université de la Nouvelle Calédonie

  28. Solution 1. Nazha SELMAOUI Université de la Nouvelle Calédonie

  29. solution • 2. • a) Mettre à jour une adresse d ’un client et entrer des renseignements sur un nouveau client se réalise par le DML • b) définir une nouvelle table implique l ’utilisation du DDL. Créer la table et établir les attributs font partie de la définition des données. • c) Réponse a) Nazha SELMAOUI Université de la Nouvelle Calédonie

  30. 3.2. Architecture à 3 niveaux • Méthode acceptée en 75 et développée en 78 connue sous le nom d’architecture ANSI/SPARC (American National Standard Institute) • 3 niveaux : • interne : stockage physique (bits, SGBD s’en charge) • conceptuel : définition logique, modèle et schéma du point de vue conceptuel (concerne l’administrateur et son groupe) • externe : concerne les utilisateurs Nazha SELMAOUI Université de la Nouvelle Calédonie

  31. 3.2. Architecture à 3 niveaux Nazha SELMAOUI Université de la Nouvelle Calédonie

  32. 3.2. Architecture à 3 niveaux • Exemple Nazha SELMAOUI Université de la Nouvelle Calédonie

  33. 3.3. Indépendance des données • Données différentes du SGBD • Au niveau physique : les données doivent être indépendantes d’un modèle particulier ou de l’architecture • L’organisation aux 3 niveaux doit être modifiable sans interférer avec le niveau élevé Nazha SELMAOUI Université de la Nouvelle Calédonie

  34. 3.4. Regrouper les modules • Différents modules • Le SGBD offre une protection complète grâce au dictionnaire : • des données • gestionnaire d ’exécution • de la BD • gestionnaire des données stockées • Le SGBD vérifie de façon cohérente % au dictionnaire des données: • que les accès sont légaux • traite ces commandes Nazha SELMAOUI Université de la Nouvelle Calédonie

  35. 3.4. Regrouper les modules Nazha SELMAOUI Université de la Nouvelle Calédonie

  36. Exercice • Examiner l’organisation de l’exemple médical. Qu’est-ce qui doit être la vue interne, la vue de la communauté et la vue externe de cette base de données? Nazha SELMAOUI Université de la Nouvelle Calédonie

  37. Solution • Les tables et le contenu réel de chaque objet constituent la vue de la BD par la communauté. Elle contient des informations telles que • la vue interne doit être l’emplacement physique de chaque élément sur le disque du serveur ainsi que le nombre d’octets nécessités pour son stockage. La vue externe dépend de l’utilisateur qui accède à la base de données. Le médecin veut voir l’historique du patient, l’employé de la facturation souhaite voir les informations de facturation. Nazha SELMAOUI Université de la Nouvelle Calédonie

  38. II. Concepts des BD relationnelle Nazha SELMAOUI Université de la Nouvelle Calédonie

  39. 1. SGBDR • Un SGBDR : les informations sont représentées sous forme d ’un ensemble de relations, il se définit comme un ensemble de relations • Représentation des relations par des tables à 2 dimensions satisfaisant certaine conditions • Vue logique = table Nazha SELMAOUI Université de la Nouvelle Calédonie

  40. 1. SGBDR • Table se définit par : • un nom unique, • nb de colonnes ou attributs, • chaque colonne porte un nom unique • nb de colonnes = degré de la table • données représente une ligne (un n-uplet ou tuplet) • cardinalité = nb de lignes à un moment donnée • champ = attribut • enregistrement = ligne Nom de la table ou de la relation Nazha SELMAOUI Université de la Nouvelle Calédonie

  41. 1. SGBDR • Instance de la table = contenu de la table à un moment particulier • table sans ligne = table vide • Insérer des tuples = charger une table • Dans chaque colonne les valeurs  ensemble de valeurs possibles appelé domaine Dom(nom colonne) Nazha SELMAOUI Université de la Nouvelle Calédonie

  42. 2. Définition mathématique d ’une relation • R relation de n attributs R(A1, A2, …, An) • Chaque attribut Ai, domaine Dom(Ai)=Di • On définit le domaine D=D1 x…x Dn • Une relation r sur un schéma R sera définie par ces k tuples (t1,..,tk) de R sur D, avec ti=t(Ai)Dom(Ai) Nazha SELMAOUI Université de la Nouvelle Calédonie

  43. 3. Schéma d'une relation • Représentation symbolique de la relation • Exemples : Produit (n°Produit, nom, qtéEnStock) LigneComm (n°commande,n°article, quantité) Vehicule (n°Immatriculation, modèle, n°moteur) Attribut clé (souligné) Attributs non clé Nom de la relation Clé composée de 2 attributs 2 clés potentielles Nazha SELMAOUI Université de la Nouvelle Calédonie

  44. 4. Clé candidate et clé primaire • Un attribut (ou un ensemble d’attributs) dont deux occurrences différentes ne prennent jamais la même valeur • Il s’agit donc d’un identifiant des occurrences • Exemple : dans une relation “voiture”, le numéro minéralogique est une clé • clé primaire (attribut souligné): joue le rôle de mécanisme d ’adressage de la relation, elle doit être unique, ou composée de plusieurs attributs Nazha SELMAOUI Université de la Nouvelle Calédonie

  45. Exercice • Soit la table DEPT : • Les lignes suivantes peuvent être insérer ou pas Nazha SELMAOUI Université de la Nouvelle Calédonie

  46. 5. Clés extérieures • Concept clé extérieure permet au SGBDR de maintenir la cohérence des lignes de deux relations ou des lignes de la même relation • Une clé est extérieure de la relation r1 par rapport à la relation r2 si cette clé est une clé primaire pour la relation r2. • Une clé extérieur peut être NULL Nazha SELMAOUI Université de la Nouvelle Calédonie

  47. Exercice • Soit les tables suivantes : Département Personnel • Dire si on peut insérer ces lignes dans la table Personnel Nazha SELMAOUI Université de la Nouvelle Calédonie

  48. III. SQL Nazha SELMAOUI Université de la Nouvelle Calédonie

  49. 1. SQL • Standard de fait normalisé • pour la gestion des données (Langage de Manipulation de Données, LMD), • et aussi pour la gestion du schéma (Langage de Définition des Données, LDD) 1. Gestion des données Implante les opérateurs principaux de l'algèbre relationnelle • Fonctions ensemblistes et "spéciales" 2. Gestion du schéma Création, modification de tables, index... Nazha SELMAOUI Université de la Nouvelle Calédonie

  50. 2. Forme d'une requête SQL Select Liste d’attributs From Noms de Relations Where Conditions • Clause Where optionnelle, peut être multiple • Where age>18 and sexe=1 • Résultat de la requête = une relation • Aucune modification dans la base • la relation résultat n'est pas mémorisée dans la base • les relations initiales ne sont en aucun cas modifiées Nazha SELMAOUI Université de la Nouvelle Calédonie

More Related