La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Cours Bases de données Nguyen Tuan Loc. Contact Nguyen TuanLoc, Dr Nguyen TuanLoc, Dr Laboratoire LIP6Laboratoire LIP6-CNRS Université Pierre et Marie.

Présentations similaires


Présentation au sujet: "Cours Bases de données Nguyen Tuan Loc. Contact Nguyen TuanLoc, Dr Nguyen TuanLoc, Dr Laboratoire LIP6Laboratoire LIP6-CNRS Université Pierre et Marie."— Transcription de la présentation:

1 Cours Bases de données Nguyen Tuan Loc

2 Contact Nguyen TuanLoc, Dr Nguyen TuanLoc, Dr Laboratoire LIP6Laboratoire LIP6-CNRS Université Pierre et Marie Curie CNRS Laboratoire LIP6CNRS bureau c569 8, rue du capitaine Scott Paris - France Tél: Tél: Web: Web:

3 Réferences Base de données – G. Gardarin - Eyrolles Base de données – G. Gardarin - Eyrolles Databases complete book – H.Garcia/J.Ullman Databases complete book – H.Garcia/J.Ullman Cours en ligne : Cours en ligne :

4 Besoin du cours : Objectif : Objectif : Approfondir les concepts de bases de données relationnelles. Approfondir les concepts de bases de données relationnelles. Maîtriser la conception et la mise en œuvre dune base de données relationnelles. Maîtriser la conception et la mise en œuvre dune base de données relationnelles. Découvrir quelques SGBD relationnelles (MySQL, Access, SQL Server) Découvrir quelques SGBD relationnelles (MySQL, Access, SQL Server) Acquérir une expériences dans la normalisation et loptimisation des performances. Acquérir une expériences dans la normalisation et loptimisation des performances. Découvrir et pratiquer les principales fonctions dadministration dun SGBD relationnel. Découvrir et pratiquer les principales fonctions dadministration dun SGBD relationnel. Pre-requis Pre-requis Motivé Motivé

5 Contenu Cours 1: Introduction (1)3,5h Cours 1: Introduction (1)3,5h Cours 2: Introduction (2)3,5h Cours 2: Introduction (2)3,5h Cours 3: Modèle relationnel 3,5h Cours 3: Modèle relationnel 3,5h Démo & TP (MySQL) 45 Démo & TP (MySQL) 45 Cours 4: Présentation SQL 2,5h Cours 4: Présentation SQL 2,5h & Algèbre relationnelle Démo & TP (Access) 1h Démo & TP (Access) 1h Cours 5: Normalisation (1)3,5h Cours 5: Normalisation (1)3,5h Cours 6: Normalisation (2)& optimisation2h Cours 6: Normalisation (2)& optimisation2h Démo & TP (Access,MySQL) 45 Démo & TP (Access,MySQL) 45 Contrôle continu1,5h Contrôle continu1,5h Cours 7: Présentation SQL avancé 2,5h Cours 7: Présentation SQL avancé 2,5h Démo & TP (MySQL) 45 Démo & TP (MySQL) 45 Préparer projet (30/10->30/11)1h Préparer projet (30/10->30/11)1h Cours 8: SGBD XML&Web Services 2h Cours 8: SGBD XML&Web Services 2h Démo & TP (MySQL)1,5h Démo & TP (MySQL)1,5h Cours 9: BD et Web – Administration2,5h Cours 9: BD et Web – Administration2,5h Contrôle continu (soutenance de projet)2,5h Contrôle continu (soutenance de projet)2,5h Examens2h30 Examens2h30

6 Contenu du cours 1 Définition de bases de données Définition de bases de données Définition de SGBD Définition de SGBD SGBD: SGBD: Caractéristiques Caractéristiques Pourquoi Pourquoi Modèles de modélisation des données Modèles de modélisation des données Objectif du SGBD Objectif du SGBD Architecture Architecture deux niveaux deux niveaux trois niveaux trois niveaux répartie répartie

7 Résumé Bases de données, définition: Bases de données, définition: Collection de fichiers reliés par des pointeurs multiples, bien organisés, répondre efficacement des demandes variées Collection de fichiers reliés par des pointeurs multiples, bien organisés, répondre efficacement des demandes variées Collection dinformations via la modélisation du monde réel Collection dinformations via la modélisation du monde réel

8 SGBD - Quest-ce cest ? SGBD (DBMS): Databases Management System SGBD (DBMS): Databases Management System Système de Gestion de Bases de Données Définition de SGBD: Définition de SGBD: Logiciel: Logiciel: données persistantes données persistantes accès efficace accès efficace(Ullman) Ensemble de logiciels systèmes permettant de stocker et dinterroger un ensemble de fichiers indépendants. Il est aussi un outil permettant de modéliser et de gérer des données (G.Gardarin) Ensemble de logiciels systèmes permettant de stocker et dinterroger un ensemble de fichiers indépendants. Il est aussi un outil permettant de modéliser et de gérer des données (G.Gardarin)

9 SGBD: Caractéristiques Management des données persistantes Management des données persistantes Accéder aux larges données avec efficacité Accéder aux larges données avec efficacité Supporter modèles de données Supporter modèles de données Transaction Transaction Permettre de définir des données(structure, accès, manipuler) Permettre de définir des données(structure, accès, manipuler) Recouverte des données Recouverte des données Control daccès Control daccès

10 Objectif du SGBD (1) Assurer lindépendance des programmes aux données (architecture 2-tiers) Assurer lindépendance des programmes aux données (architecture 2-tiers) What non How What non How Indépendance: Indépendance: Physique des programmes aux données Physique des programmes aux données Logique des programmes aux données Logique des programmes aux données Administration facile Administration facile Permettre de manipuler par langages query (SQL) Permettre de manipuler par langages query (SQL)

11 1. Objectifs des SGBD (2) INDÉPENDANCE PROGRAMMES/DONNÉES INDÉPENDANCE PROGRAMMES/DONNÉES Indépendance physique Indépendance physique Indépendance logique Indépendance logique ACCÉS PAR DES LANGAGES ASSERTIONNELS ACCÉS PAR DES LANGAGES ASSERTIONNELS Recherche (le quoi et non le comment) Recherche (le quoi et non le comment) Insertion (en groupes, calculées) Insertion (en groupes, calculées) Mise à jour (basée sur la recherche) Mise à jour (basée sur la recherche) EFFICACITÉ DES ACCÈS EFFICACITÉ DES ACCÈS Temps de réponse Temps de réponse

12 SGBD données SGBD physique logique

13 Objectifs des SGBD (3) SUPPORT DE TRANSACTIONS SUPPORT DE TRANSACTIONS Atomique (tout ou rien) Atomique (tout ou rien) Cohérente (respect de l'intégrité) Cohérente (respect de l'intégrité) PARTAGEABILITÉ ET SÉCURITE DES DONNÉES PARTAGEABILITÉ ET SÉCURITE DES DONNÉES Simultanéité lecture/écriture maximum Simultanéité lecture/écriture maximum Accès transactionnels & décisionnels Accès transactionnels & décisionnels Confidentialité (authentification, droits d'accès, cryptage) Confidentialité (authentification, droits d'accès, cryptage) Restauration après pannes (journaux, sauvegardes) Restauration après pannes (journaux, sauvegardes)

14 Objectifs des SGBD (4) CONCEPTION FACILITÉE DES APPLICATIONS CONCEPTION FACILITÉE DES APPLICATIONS Conception visuelle des BD (diagrammes E/R, objets) Conception visuelle des BD (diagrammes E/R, objets) Conception des traitements (diagrammes de flux entre modules) Conception des traitements (diagrammes de flux entre modules) Dictionnaire de données (objets BD, graphiques, applicatifs) Dictionnaire de données (objets BD, graphiques, applicatifs) ADMINISTRATION SYSTÈME FACILITÉE ADMINISTRATION SYSTÈME FACILITÉE Visualisation des plans d accès Visualisation des plans d accès Élaboration de statistiques Élaboration de statistiques

15 Architecture ANSI/SPARC 78 Externe (vues) Externe (vues) description des entités et associations vues par un utilisateur (ou un groupe dutilisateurs) description des entités et associations vues par un utilisateur (ou un groupe dutilisateurs) Conceptuel Conceptuel description des entités et associations du monde réel description des entités et associations du monde réel Interne Interne implémentation physique des implémentation physique des entités et associations dans les fichiers Vue externe Vue externe Vue externe conceptuel interne

16 Architectures Client-Serveur Définition Définition modèle d'architecture applicative où les programmes sont répartis entre processus clients et serveurs communiquant par des requêtes avec réponses. modèle d'architecture applicative où les programmes sont répartis entre processus clients et serveurs communiquant par des requêtes avec réponses. Une répartition hiérarchique des fonctions Une répartition hiérarchique des fonctions données sur le serveur partagées entre N clients données sur le serveur partagées entre N clients interfaces graphiques sur la station de travail personnelle interfaces graphiques sur la station de travail personnelle communication par des protocoles standardisés communication par des protocoles standardisés distribution des programmes applicatifs afin de minimiser les coûts distribution des programmes applicatifs afin de minimiser les coûts

17 Pourquoi le Client-serveur ? Évolution des besoins de l'entreprise Évolution des besoins de l'entreprise Augmentation de productivité, de réactivité Augmentation de productivité, de réactivité Utilisation des micros assurant flexibilité et faibles coûts Utilisation des micros assurant flexibilité et faibles coûts Besoin de décisionnel et transactionnel sur gros volumes Besoin de décisionnel et transactionnel sur gros volumes Évolution des technologies Évolution des technologies Systèmes ouverts permettant l'usage de standards Systèmes ouverts permettant l'usage de standards Environnements de développement graphiques Environnements de développement graphiques Explosion de la puissance des micros et des serveurs Explosion de la puissance des micros et des serveurs Solutions techniques séduisantes Solutions techniques séduisantes Les données partagées enfin accessibles simplement Les données partagées enfin accessibles simplement Mise en commun des services (règles de gestion, procédures) Mise en commun des services (règles de gestion, procédures) Gestion de transactions et fiabilité au niveau du serveur Gestion de transactions et fiabilité au niveau du serveur

18 Architecture 1e génération Windows NTUNIX CLIENTS APPLICATIONS REQUETE RESULTAT règles SGBD NT, UNIX, NOVELL GCOS, VMS, MVS APPLICATIONS SERVEUR APPLICATION Données Architecture Client-Serveur

19 Application Outil Applicatif Outil de connectabilité Protocole Réseau Serveur BD base de données Client Requêtes de services Résultats Serveur Protocole Réseau Outil de connectabilité Procédures Stockées Le C/S de 2e génération Procédure stockée Procédure stockée Procédure accomplissant une fonction de service sur les données Procédure accomplissant une fonction de service sur les données Exemple : Entrée ou sortie de stock Exemple : Entrée ou sortie de stock Architecture orientée services plutôt que requêtes Architecture orientée services plutôt que requêtes Distribution des traitements Distribution des traitements Peut être automatisée Peut être automatisée Évolution et passage à l'échelle Évolution et passage à l'échelle Possibilité de serveurs multiples, avec redondances Possibilité de serveurs multiples, avec redondances Possibilité de données privées sur les clients Possibilité de données privées sur les clients

20 Intérêt du C/S de 2e génération Réduction des transferts réseaux Réduction des transferts réseaux non nécessité de monter les données dans le client pour les modifier non nécessité de monter les données dans le client pour les modifier appel de services plus compact appel de services plus compact Distribution automatique des applications Distribution automatique des applications développement sur le poste de travail développement sur le poste de travail partitionnement par tirer-déposer (drag & drop) partitionnement par tirer-déposer (drag & drop) Simplification des outils de développement Simplification des outils de développement principe de la fenêtre unique principe de la fenêtre unique modélisation uniforme des objets applicatifs modélisation uniforme des objets applicatifs invisibilité du modèle de données à l'extérieur du serveur invisibilité du modèle de données à l'extérieur du serveur

21 Vers le 3e génération Intégration du Web et du client-serveur Intégration du Web et du client-serveur navigateur à présentation standard pour le client navigateur à présentation standard pour le client possibilité de petites applications (contrôles) sur le client possibilité de petites applications (contrôles) sur le client très grande portabilité (Intranet, Internet) très grande portabilité (Intranet, Internet) Architecture à 3 strates (3-tiered) Architecture à 3 strates (3-tiered) Base de données avec procédures stockées Base de données avec procédures stockées Services applicatifs partagés et objets métiers (EJB, ActiveX) Services applicatifs partagés et objets métiers (EJB, ActiveX) Présentation hypertexte multimédia avec contrôles Présentation hypertexte multimédia avec contrôles Support de l'hypermédia Support de l'hypermédia types de données variées et extensibles (texte, image,vidéo) types de données variées et extensibles (texte, image,vidéo) hypertexte et navigation entre documents et applications hypertexte et navigation entre documents et applications

22 Gestionnaire de fichiers Concepts de Base Le gestionnaire de fichiers est la couche interne d'un SGBD, souvent intégrée au système opératoire. Le gestionnaire de fichiers est la couche interne d'un SGBD, souvent intégrée au système opératoire.

23 Structures des Disques Notion 1: Volume (Disk Pack) Notion 1: Volume (Disk Pack) Unité de mémoire secondaire amovible. Unité de mémoire secondaire amovible.

24 Notion de fichier Notion 2: Fichier (File) Notion 2: Fichier (File) Récipient d'information caractérisé par un nom, constituant une mémoire secondaire idéale, permettant d'écrire des programmes d'application indépendants des mémoires secondaires. Récipient d'information caractérisé par un nom, constituant une mémoire secondaire idéale, permettant d'écrire des programmes d'application indépendants des mémoires secondaires. Un fichier se caractérise plus particulièrement par : Un fichier se caractérise plus particulièrement par : UN NOM UN NOM UN CREATEUR UN CREATEUR UNE DATE DE CREATION UNE DATE DE CREATION UN OU PLUSIEURS TYPES D'ARTICLE UN OU PLUSIEURS TYPES D'ARTICLE UN EMPLACEMENT EN MS UN EMPLACEMENT EN MS UNE ORGANISATION UNE ORGANISATION

25 Les fichiers sur les volumes Notion 7: Label de volume (Label) Notion 7: Label de volume (Label) Premier secteur d'un volume permettant d'identifier ce volume et contenant en particulier son numéro. Premier secteur d'un volume permettant d'identifier ce volume et contenant en particulier son numéro. Notion 8: Descripteur de fichier (Directory entry) Notion 8: Descripteur de fichier (Directory entry) Ensemble des informations permettant de retrouver les caractéristiques d'un fichier, contenant en particulier le nom du fichier, sa localisation sur disque, etc… Ensemble des informations permettant de retrouver les caractéristiques d'un fichier, contenant en particulier le nom du fichier, sa localisation sur disque, etc… Notion 9: Catalogue (Directory) Notion 9: Catalogue (Directory) Table (ou fichier) située sur un volume et contenant les descripteurs des fichiers du volume. Table (ou fichier) située sur un volume et contenant les descripteurs des fichiers du volume.

26 LABEL n CATALOGUE F1 F2 F3 F4 … F1F2 F3 F4 VOLUME n Organisation d'un volume

27 Catalogue Hiérarchisé Notion 10: Catalogue hiérarchisé Notion 10: Catalogue hiérarchisé Catalogue constitué d'une hiérarchie de fichiers, chaque fichier contenant les descripteurs des fichiers immédiatement inférieurs dans la hiérarchie. Catalogue constitué d'une hiérarchie de fichiers, chaque fichier contenant les descripteurs des fichiers immédiatement inférieurs dans la hiérarchie. > PIERRE > PIERRE > PIERRE > BASES-DE-DONNEES > PIERRE > BASES-DE-DONNEES > PIERRE > BASES-DE-DONNES > MODELES > PIERRE > BASES-DE-DONNES > MODELES

28 Allocation de l'espace disque Notion 11: Région (Allocation area) Notion 11: Région (Allocation area) Ensemble de zones de mémoires secondaires (pistes) adjacentes allouées en une seule fois à un fichier. Ensemble de zones de mémoires secondaires (pistes) adjacentes allouées en une seule fois à un fichier. Notion 12: Granule d'allocation (Allocation granule) Notion 12: Granule d'allocation (Allocation granule) Unité de mémoire secondaire allouable à un fichier. Unité de mémoire secondaire allouable à un fichier.

29 Stratégie d'allocation Objectifs d'une stratégie Objectifs d'une stratégie (1) minimiser le nombre de régions à allouer à un fichier de sorte à réduire d'une part les déplacements des bras des disques lors des lectures en séquentiel et d'autre part le nombre de descripteurs de régions associés à un fichier; (1) minimiser le nombre de régions à allouer à un fichier de sorte à réduire d'une part les déplacements des bras des disques lors des lectures en séquentiel et d'autre part le nombre de descripteurs de régions associés à un fichier; (2) minimiser la distance qui sépare les régions successives d'un fichier, de sorte à réduire les déplacements de bras en amplitude. (2) minimiser la distance qui sépare les régions successives d'un fichier, de sorte à réduire les déplacements de bras en amplitude.

30 |||||||||||||||||||| offset = adresse relative Adressage Relatif Notion 13: Adresse relative (Relative address) Notion 13: Adresse relative (Relative address) Numéro d'unité d'adressage dans un fichier (autrement dit: déplacement par rapport au début du fichier). Numéro d'unité d'adressage dans un fichier (autrement dit: déplacement par rapport au début du fichier).


Télécharger ppt "Cours Bases de données Nguyen Tuan Loc. Contact Nguyen TuanLoc, Dr Nguyen TuanLoc, Dr Laboratoire LIP6Laboratoire LIP6-CNRS Université Pierre et Marie."

Présentations similaires


Annonces Google