Slides:



Advertisements
Présentations similaires
Mais vous comprenez qu’il s’agit d’une « tromperie ».
Advertisements

Le Nom L’adjectif Le verbe Objectif: Orthogram
ORTHOGRAM PM 3 ou 4 Ecrire: « a » ou « à » Référentiel page 6
Licence pro MPCQ : Cours
Distance inter-locuteur
1 Plus loin dans lutilisation de Windows Vista ©Yves Roger Cornil - 2 août
Les numéros 70 –
Les numéros
Introduction Pour concrétiser l’enseignement assisté par ordinateur
Cours MIAGE « Architectures Orientées Services » Henry Boccon-Gibod 1 Architectures Orientées Services Composants de Service Exemple pratique de développement.
Le Modèle Logique de Données
51 Les technologies XML Cours 6 : XML et les architectures N-tiers – Tier Métier Janvier Version 1.0 -
LES TRIANGLES 1. Définitions 2. Constructions 3. Propriétés.

TP 3-4 BD21.
Gestion de la persistance des objets

Programme Introduction aux BD et aux SGBD Le modèle relationnel
Principes des Bases de Données Relationnelles
Pratique de Bases de Données
SERABEC Simulation sauvetage aérien avec un Hercule C130. Départ de St-Honoré le 4 octobre Durée de vol 3 heures. Premier vol en Hercule pour les.
1 5 octobre 2011 / paw Présentation du 7 octobre 2011.
1 ARCHITECTURE DACCÈS la méthode générale modèle de données définitions module daccès / modules métiers construction des modèles les modules daccès, les.
Initiation au système d’information et aux bases de données
Développement d’applications web
Contrôles d'accès aux données
Le soccer & les turbans Sondage mené par lAssociation détudes canadiennes 14 juin 2013.
Présentation générale
Vuibert Systèmes dinformation et management des organisations 6 e édition R. Reix – B. Fallery – M. Kalika – F. Rowe Chapitre 2 : Les applications fonctionnelles.
1 Guide de lenseignant-concepteur Vincent Riff 27 mai 2003.
GRAM 1 CE2 Je sais transformer une phrase affirmative en phrase négative.
Introduction à la conception de Bases de Données Relationnelles
Titre : Implémentation des éléments finis sous Matlab
Modèle Logique de Données
Projet poker 1/56. Introduction Présentation de léquipe Cadre du projet Enjeux Choix du sujet 2.
Gestion des bases de données
F Copyright © Oracle Corporation, Tous droits réservés. Créer des programmes avec Procedure Builder.
LES NOMBRES PREMIERS ET COMPOSÉS
Les chiffres & les nombres
SYSTEME DE GESTION DE BASES DE DONNEES
Staf 2x Cours de bases de données
DUMP GAUCHE INTERFERENCES AVEC BOITIERS IFS D.G. – Le – 1/56.
Année universitaire Réalisé par: Dr. Aymen Ayari Cours Réseaux étendus LATRI 3 1.
Les concepts et les méthodes des bases de données
Titre : Implémentation des éléments finis en Matlab
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
1 INETOP
Initiation aux bases de données et à la programmation événementielle
Michel Tollenaere SQL et relationnel ENSGI Cours MSI 2A Relationnel et SQL version 1.4 du 25 septembre 2007 (ajout jointures) 1 Modèle relationnel Historique.
Aire d’une figure par encadrement
Copyright Serge Miranda
MAGIE Réalisé par Mons. RITTER J-P Le 24 octobre 2004.
1/65 微距摄影 美丽的微距摄影 Encore une belle leçon de Macrophotographies venant du Soleil Levant Louis.
Introduction.
Nom:____________ Prénom: ___________
Annexe Résultats provinciaux comparés à la moyenne canadienne
Présentation Session RPSI
Réalisé par : Mr IRZIM Hédi Mr JRAD Firas
1 BDs Orientées Objets Witold LITWIN. 2 Pourquoi ? F Les BDs relationnelles ne sont pas adaptées aux applications CAD/CAM, cartes géo... F le problème.
STRUCTURES DES DONNEES. L’ORGANISATION DES DONNEES. BASES DES DONNEES
Le Langage SQL Introduction. 2 Historique du Langage SQL E. F. CODD : premiers articles dans les années 70 IBM crée le langage SEQUEL (Structured English.
1 Initiation aux bases de données et à la programmation événementielle Responsable : Souheib BAARIR. (le sujet de votre .
Initiation aux SGBD Frédéric Gava (MCF)
Dr Mohamed Anis BACH TOBJI
1 Structure en MC Principes Stockage des données dans la mémoire volatile d’un ordinateur Problèmes Stockage temporaire «Petits» volumes de données Langages.
La gestion des bases de données
Séance /10/2004 SGBD - Approches & Principes.
INTRODUCTION AUX BASES DE DONNEES
Introduction Module 1.
Analyse, élaboration et exploitation d’une Base de Données
Transcription de la présentation:

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 Structure en mémoire centrale (MC) Fichiers Notion de bases de données Contexte technique Structure en mémoire centrale (MC) Fichiers Bases de données

Structure en MC Principes Problèmes 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)

Fichiers Stockage persistant sur disque «Gros» volumes de données 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)

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

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

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

Bases de données Stockage persistant sur disque 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

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

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

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

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

Terminologie BD Données Modèle de données BD SGBD Schéma d’une 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

Données Une structure Une sémantique Un propriétaire 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

Données (2) Des utilisateurs Interrogent les données 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 »

Modèle de données Ensemble de concepts pour décrire : 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

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

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

CI et Métabase Contrainte d’intégrité (CI): 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 »

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

Classification Volume de données Complexité des traitements Notion de bases de données Domaines d’application Volume de données Complexité des traitements Intensité du service Applications transactionnelles  Go Interrogation + Mise à jour Temps de réponse < 2 s. > 100 tps Application d’aide à la décision Datewarehouse Datamining  To Interrogation Temps de réponse en mn ou h Notion de tpm TPC (Transaction Processing Council) Benchmarks systèmes transactionnels

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

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

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

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

Critique du modèle Entité/Association Modèles BD  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

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

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

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

Modèle réseau (suite) Schéma BD BD Langage de manipulation Systèmes 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

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)

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

Modèle relationnel (3) Schéma BD BD Langage de manipulation 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

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

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

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

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

Conséquences Indépendance physique Indépendance logique 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

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

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

But et moyens But : 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)

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

Fonctionnalités (++) Gestion de versions Gestion de la répartition 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)

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

LDD Définition logique des données Définition physique des données 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

LMD Qu’est-ce qu’un SGBD ? Objectif Style procédural Style déclaratif 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 »

Interface avec un LPG Exemples 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) 2 approches langages hôtes: Par intégration d'un langage d'accès à la BD dans un langage de programmation SEQUEL et le langage C Embedded SQL 2 possibilités: Précompilation des requêtes à la BD Interprétation à l'exécution Par extension d'un langage de programmation PASCAL R

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)

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;

Propriétés des transactions Qu’est-ce qu’un SGBD ? A : Atomicity C : Consistency I : Isolation D : Durability

Les utilisateurs d’un SGBD Qu’est-ce qu’un SGBD ? Le concepteur Contexte de travail : niveau conceptuel Construction du schéma conceptuel avec un modèle de données Administrateur BD Contexte de travail : les 3 niveaux. Définit et màj les schémas logiques Définit les CI + Vues + droits d’accès Définit les schémas physiques (structures de stockage + stratégies d’accès) Utilise le LDD et DD

Les utilisateurs d’un SGBD (suite) Qu’est-ce qu’un SGBD ? Développeur d’applications Contexte de travail : niveau externe et conceptuel Utilise le LMD + LPG Écrit des programmes pour interroger, mettre à jour et traiter les données Connaît les schémas logiques et physiques Utilisateur terminal Contexte de travail : niveau externe « Averti »: interroge la BD en utilisant un LMD « Naïf »: utilise les programmes d’application