Administration base de données :
Solutions pour mieux
gérer ”le flux ”
”des données ”
instantané dans notre vie
Mourad NACHAOUI
FST de Béni-Mellal
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 0 / 85
Sommaire
1 Introduction
Données, Bases de données et SGBD
2 Conception des bases de données
Méthodologie d’analyse MERISE
Étapes de la conception des bases de données
3 Modélisation par le modèle entité-association
Remise en cause et évolution du modèle
4 Approche Relationnelle
5 Langage SQL, TP1
6 Normalisation et optimisation SGBD, TP2
7 Algèbre relationnelle, TP3
8 Evalution théorique et pratique
9 Préservation de données:transsation+sécurité+tiggers
10 Défis Big-Data : BD NosQL
11 MongoDB, TP1, TP2, TP3
12 Evalution théorique et pratique
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 1 / 85
Introduction Données, Bases de données et SGBD
Plan
1 Introduction
Données, Bases de données et SGBD
2 Conception des bases de données
Méthodologie d’analyse MERISE
Étapes de la conception des bases de données
3 Modélisation par le modèle entité-association
Remise en cause et évolution du modèle
4 Approche Relationnelle
5 Langage SQL, TP1
6 Normalisation et optimisation SGBD, TP2
7 Algèbre relationnelle, TP3
8 Evalution théorique et pratique
9 Préservation de données:transsation+sécurité+tiggers
10 Défis Big-Data : BD NosQL
11 MongoDB, TP1, TP2, TP3
12 Evalution théorique et pratique
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 2 / 85
Introduction Données, Bases de données et SGBD
Données ?
C’est une information quelconque comme, par exemple : voici une
personne, elle s’appelle Mourad. C’est aussi une relation entre des
informations : Mourad enseigne les bases de données. Des relations
de ce genre définissent des structures.
Définition l’encyclopédie Encarta :
Une donnée est une information représentée sous une forme
conventionnelle, afin de pouvoir être traitée automatiquement
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 3 / 85
Introduction Données, Bases de données et SGBD
Définitions générales
Base de données :
Ensemble structuré de données apparentées qui modélisent un
univers réel. Peu importe le support utilisé pour rassembler et stocker
les données (papier, fichiers, etc.), dès lors que des données sont
rassemblées et stockées d’une manière organisée dans un but
spécifique, on parle de base de données.
Concrétement :
Plus précisément, on appelle base de données un ensemble
homogène et structurée d’informations permettant le stockage de
grandes quantités d’informations afin d’en faciliter l’exploitation (ajout,
mise à jour, recherche de données).
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 4 / 85
Introduction Données, Bases de données et SGBD
Base de données informatisée
Définition :
Une base de données informatisée est un ensemble structuré de
données enregistrées sur des supports accessibles par l’ordinateur,
représentant des informations du monde réel et pouvant être
interrogées et mises à jour par une communauté d’utilisateurs.
Le résultat de la conception d’une base de données informatisée est
une description des données.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 5 / 85
Introduction Données, Bases de données et SGBD
Exemples classiques d’applications BD
Gestion des personnels, étudiants, cours, inscriptions, ... d’une
université
Système de réservation
Gestion des comptes clients d’une banque
Gestion des commandes à Amazon.com
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 6 / 85
Introduction Données, Bases de données et SGBD
Exemples de BD
Exemple 1 :
Organisation : une bibliothèque Données : les livres, les
emprunts, les emprunteurs
Exemple 2 :
Organisation : une Université Données : les étudiants, les
enseignants, les cours, etc.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 7 / 85
Introduction Données, Bases de données et SGBD
Structure du systèmes
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 8 / 85
Introduction Données, Bases de données et SGBD
Modèles de base de données
Modélisation : processus de description permettant de
représenter l’information de manière compréhensible
On utilise un modèle de données
Les modèles les plus connus
Modèle relationnel
Modèle hiérarchique
Modèle réseau
Modèle de base de données orientée objet
Modèle entité-association
Modèles de bases de données NoSQL
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 9 / 85
Introduction Données, Bases de données et SGBD
Définition SGBD :
Systèmes de Gestion de Bases de Données (DataBase Management
Systems - DBMS) :
Ensemble de logiciels systèmes permettant aux utilisateurs
d’insérer, de modifier, et de rechercher efficacement des données
spécifiques dans une grande masse d’informations (pouvant atteindre
plusieurs milliards d’octets) partagée par de multiples utilisateurs.
En bref un SGBD est un système qui permet de gérer une BD
partagée par plusieurs utilisateurs simultanément.
Exemples : MySQL, PostgreSQL, Oracle, Microsoft SQLServer, etc.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 10 / 85
Introduction Données, Bases de données et SGBD
Objectifs et avantages des SGBD
Massif
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 11 / 85
Introduction Données, Bases de données et SGBD
Objectifs et avantages des SGBD
Massif
gèrer des données à grande échelle (des téraoctets de données,
parfois même des téraoctets de données chaque jour).
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 11 / 85
Introduction Données, Bases de données et SGBD
Objectifs et avantages des SGBD
Massif
gèrer des données à grande échelle (des téraoctets de données,
parfois même des téraoctets de données chaque jour).
Persistant
Les données qui sont géré par les systèmes de gestion de base de
données est généralement persistant.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 11 / 85
Introduction Données, Bases de données et SGBD
Objectifs et avantages des SGBD
Massif
gèrer des données à grande échelle (des téraoctets de données,
parfois même des téraoctets de données chaque jour).
Persistant
Les données qui sont géré par les systèmes de gestion de base de
données est généralement persistant.
En sécurité
les systèmes de bases de données ont un certain nombre de
mécanismes intégrés qui s’assurer que les données restent
cohérentes, quoi qu’il arrive.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 11 / 85
Introduction Données, Bases de données et SGBD
Multi-utilisateur
possède des mécanismes dans la base de données permettent le
contrôle de la concurrence.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 12 / 85
Introduction Données, Bases de données et SGBD
Multi-utilisateur
possède des mécanismes dans la base de données permettent le
contrôle de la concurrence.
Commodité
La commodité est en fait l’une des caractéristiques essentielles des
systèmes de base de données.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 12 / 85
Introduction Données, Bases de données et SGBD
Multi-utilisateur
possède des mécanismes dans la base de données permettent le
contrôle de la concurrence.
Commodité
La commodité est en fait l’une des caractéristiques essentielles des
systèmes de base de données.
Efficace
L’efficacité est l’une des caractérsitique la plus importante de SGBD.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 12 / 85
Introduction Données, Bases de données et SGBD
Multi-utilisateur
possède des mécanismes dans la base de données permettent le
contrôle de la concurrence.
Commodité
La commodité est en fait l’une des caractéristiques essentielles des
systèmes de base de données.
Efficace
L’efficacité est l’une des caractérsitique la plus importante de SGBD.
Fiable
Le temps de disponibilité de 99,99999 % est donc le type de garantie
que les systèmes de gestion de bases de données offrent à leurs
applications.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 12 / 85
Introduction Données, Bases de données et SGBD
SGBD (suite)
Que doit permettre un SGBD ?
Décrire les données : indépendamment des applications (de
manière intrinsèque)
⇒ langage de définition des données (DATA DEFINITION
LANGUAGE (DDL))
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 13 / 85
Introduction Données, Bases de données et SGBD
SGBD (suite)
Que doit permettre un SGBD ?
Décrire les données : indépendamment des applications (de
manière intrinsèque)
⇒ langage de définition des données (DATA DEFINITION
LANGUAGE (DDL))
Langage de programmation pour manipuler les structures de données
d’une base de données, et non les données elles-mêmes.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 13 / 85
Introduction Données, Bases de données et SGBD
SGBD (suite)
Que doit permettre un SGBD ?
Décrire les données : indépendamment des applications (de
manière intrinsèque)
⇒ langage de définition des données (DATA DEFINITION
LANGUAGE (DDL))
Langage de programmation pour manipuler les structures de données
d’une base de données, et non les données elles-mêmes.
Manipuler les données : interroger et mettre à jour les données
sans préciser d’algorithme d’accès.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 13 / 85
Introduction Données, Bases de données et SGBD
SGBD (suite)
Que doit permettre un SGBD ?
Décrire les données : indépendamment des applications (de
manière intrinsèque)
⇒ langage de définition des données (DATA DEFINITION
LANGUAGE (DDL))
Langage de programmation pour manipuler les structures de données
d’une base de données, et non les données elles-mêmes.
Manipuler les données : interroger et mettre à jour les données
sans préciser d’algorithme d’accès.
ex.: quels sont les noms des produits de prix < 100 euro ? ⇒ langage
de manipulation des données (DATA MANIPULATION LANGUAGE
(DML))
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 13 / 85
Introduction Données, Bases de données et SGBD
Contrôler les données :
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 14 / 85
Introduction Données, Bases de données et SGBD
Contrôler les données :
intégrité
vérification de contraintes d’intégrité
ex.: le salaire doit être compris entre 1000 euro et 2000 euro
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 14 / 85
Introduction Données, Bases de données et SGBD
Contrôler les données :
intégrité
vérification de contraintes d’intégrité
ex.: le salaire doit être compris entre 1000 euro et 2000 euro
confidentialité
contrôle des droits d’accès, autorisation
⇒ Langage de contrôle des données DATA CONTROL LANGUAGE (DCL)
Partage
une BD est partagée entre plusieurs utilisateurs en même temps
⇒ contrôle des accès concurrents
notion de transaction : L’exécution d’une transaction doit préserver la
cohérence de la BD
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 14 / 85
Introduction Données, Bases de données et SGBD
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 15 / 85
Introduction Données, Bases de données et SGBD
Sécurité
reprise après panne, journalisation (enregistrement d’historique des
événements)
Performances d’accès via l’index (permet de localiser facilement des
enregistrements dans un fichier)
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 15 / 85
Introduction Données, Bases de données et SGBD
Sécurité
reprise après panne, journalisation (enregistrement d’historique des
événements)
Performances d’accès via l’index (permet de localiser facilement des
enregistrements dans un fichier)
Indépendance physique
Pouvoir modifier les structures de stockage ou les index sans que cela
ait de répercussion au niveau des applications.
Les disques, les méthodes d’accès, les modes de placement, le
codage des données ne sont pas apparents
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 15 / 85
Introduction Données, Bases de données et SGBD
Sécurité
reprise après panne, journalisation (enregistrement d’historique des
événements)
Performances d’accès via l’index (permet de localiser facilement des
enregistrements dans un fichier)
Indépendance physique
Pouvoir modifier les structures de stockage ou les index sans que cela
ait de répercussion au niveau des applications.
Les disques, les méthodes d’accès, les modes de placement, le
codage des données ne sont pas apparents
Indépendance logique
Permettre aux différentes applications d’avoir des vues différentes des
mêmes données.
Permettre au DBA de modifier le schéma logique sans que cela ait de
répercussion au niveau des applications.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 15 / 85
Introduction Données, Bases de données et SGBD
Architecture des SGBD
Pour mettre un peu d’ordre dans tout cela, on peut se raccrocher à une
architecture standard conforme à la plus grande partie des SGBD
existant, et offrant l’avantage de bien illustrer les principales
caractéristiques d’un SGBD.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 16 / 85
Introduction Données, Bases de données et SGBD
Cette architecture distingue trois niveaux correspondant d’une part à
trois représentations équivalentes de l’information, d’autre part aux
champs d’interventions respectifs des principaux acteurs.
Pour ces derniers, nous utiliserons la terminologie suivante :
Utilisateur naı̈f : du non spécialiste des SGBD au non
informaticien.
Concepteur et programmeur d’application : à partir des besoins
des différents utilisateurs, écrit l’application pour des utilisateurs
”naı̈fs”.
Utilisateur expert : informaticien connaissant le fonctionnement
interne d’un SGBD et chargé d’administrer la base.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 17 / 85
Introduction Données, Bases de données et SGBD
Architecture des SGBD
Chaque niveau du SGBD remplit (réalise) un certain nombre de
fonctions :
Niveau physiques : gestion sur mémoire secondaire (fichiers) des
données, du schéma, des index ; Partage de données et gestion
de la concurrence d’accès ; Reprise sur pannes (fiabilité) ;
Distribution des données et interopérabilité (accès aux réseaux).
Niveau logique : Définition de la structure de données : Langage
de Description de Données (LDD) ; Consultation et Mise à Jour
des données : Langages de Requêtes (LR) et Langage de
Manipulation de Données (LMD) ; Gestion de la confidentialité
(sécurité) ; Maintien de l’intégrité ;
Niveau externe : Vues ; Environnement de programmation
(intégration avec un langage de programmation); Interfaces
conviviales et Langages de 4e Génération (L4G) ; Outils d’aides
(e.g. conception de schémas) ; Outils de saisie, d’impression
d’états.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 18 / 85
Introduction Données, Bases de données et SGBD
SGBD
En résumé, un SGBD est destiné à gèrer un gros volume
d’informations, persistantes (années) et fiables (protection sur
pannes), partageables entre plusieurs utilisateurs et/ou programmes
et manipulées indépendamment de leur représentation physique.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 19 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Plan
1 Introduction
Données, Bases de données et SGBD
2 Conception des bases de données
Méthodologie d’analyse MERISE
Étapes de la conception des bases de données
3 Modélisation par le modèle entité-association
Remise en cause et évolution du modèle
4 Approche Relationnelle
5 Langage SQL, TP1
6 Normalisation et optimisation SGBD, TP2
7 Algèbre relationnelle, TP3
8 Evalution théorique et pratique
9 Préservation de données:transsation+sécurité+tiggers
10 Défis Big-Data : BD NosQL
11 MongoDB, TP1, TP2, TP3
12 Evalution théorique et pratique
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 20 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Pourquoi une méthode d’analyse ?
Formaliser une réflexion.
Garder une trace compréhensible de la réflexion grâce à :
une démarche admise et utilisée par tous
des modèles admis et utilisés par tous
Tendre vers une réalisation adaptée aux besoins
Fournir des programmes structurés et donc maintenables
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 21 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Les différentes méthodes 1/2
AXIAL (analyse et conception de système d’information assistées par
logiciels)
Une méthode d’analyse, de conception et de gestion de projet
initialement utilisée dans le monde IBM.
MERISE (Méthode d’Etude et de Réalisation Informatique pour les
Systèmes d’Entreprise)
Une méthode d’analyse et de conception des SI basée sur le principe
de la séparation des données et des traitements
OMT (en anglais ”object modeling technique”)
une technique de modélisation destinée à la conception et la
modélisation pour la programmation orientée
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 22 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Les différentes méthodes 2/2
UML (Unified Modeling Language)
Un langage de modélisation graphique à base de pictogrammes conçu
comme une méthode normalisée de visualisation dans les domaines
du développement logiciel et en conception orientée objet.
Chaque méthode produit ses formalismes (langages) et ses notations
(symboles, diagrammes)
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 23 / 85
Conception des bases de données Méthodologie d’analyse MERISE
MERISE : Trois niveaux d’abstraction
Merise possède un certain nombre de modèles (ou schémas
d’abstration) qui sont répartis sur trois niveaux :
Niveau conceptuel :
l’information vue de l’utilisateur
Niveau logique :
l’organisation logique des données
Niveau physique :
l’organisation du stockage
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 24 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Le niveau conceptuel
A ce niveau on élabore le modèle conceptuel des données (MCD) qui
est une représentation graphique et structurée des informations
mémorisées par un SI.
On regarde le problème du point de vue de l’utilisateur
Quoi faire ?
Avec quelles informations ? (l’élaboration du dictionnaire des
données )
On trouve les règles de gestion
On ne se préoccupe ni de l’organisation ni du matériel utilisé
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 25 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Règles de gestion
Il faut établir les règles de gestion des données à conserver. Avant de
vous lancer dans la création de shéma conceptuel.
Exemple
”Un inventaire des stocks doit être dressé chaque mois ”.
”Une commande non livrable sera mise en attente”.
”Les responsables de secteur peuvent changer les informations”
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 26 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Niveau Logique
Le niveau logique est le lien entre le niveau conceptuel et
l’implémentation effective de l’application. Le modèle conceptuel étant
un modèle formel, le modèle logique a pour vocation d’être également
un modèle formel, mais spécifiant non plus la réalité existante ou
recherchée comme le modèle conceptuel, mais les données telles
qu’elles vont exister dans l’application informatique.
Il s’agit de répondre aux questions : Qui? Où? Quand?
On tient compte et/ou on propose des choix d’organisation de
travail
On trouve les règles d’organisation
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 27 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Règles d’organisation
Les règles d’organisation décrivent le ”où”, le ”qui” et le ”quand”. Elles
résultent le plus souvent indirectement des objectifs. L’exicution des
règles de gestions imposent des règles d’organisation (par exemple,
obligation de créer un poste de travail de comptable,. . . ).
exemple
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 28 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Le niveau physique
C’est une représentation des moyens qui vont effectivement être mis
en œuvre pour gérer les données ou activer les traitements. Le niveau
physique apporte des solutions techniques.
En ce qui concerne les données, il y a passage d’une classe de
solutions à un produit de cette classe. On effectue des choix sur
les méthodes de stockage et d’accès.
En terme de traitements, le modèle opérationnel décrira
l’architecture des programmes qui vont activer les différents
tâches de l’ordinateur. En aucun cas à ce niveau, il n’y a de
programmation effective.
En bref
Il s’agit de répondre à la question ” comment réaliser ” ?
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 29 / 85
Conception des bases de données Méthodologie d’analyse MERISE
MERISE : La démarche de réalisation
La démarche MERISE s’inspire de la théorie des systèmes et part
donc du général pour aller au particulier : organisation, puis domaines,
puis projets et enfin application.
Les étapes de la méthode MERISE
Au niveau de l’organisation
Au niveau du domaine
Au niveau de chaque projet
Au niveau de chaque application
L’étude préalable
Etude de l’existant
Solution à mettre en place
Le dossier du choix
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 30 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Les étapes de la méthode MERISE 1/3
Au niveau de l’organisation
On décrit les objectifs à atteindre sous forme d’un schéma directeur du
système d’information. Le schéma directeur est l’étude des plans
d’évolution à moyen et long terme du système d’information d’une
entreprise
Au niveau du domaine
On consigne dans un dossier l’ensemble des hypothèses
d’informatisation possibles pour le domaine. Chaque hypothèse est
examinée sous l’angle de faisabilité et du coût. A l’issue de cette
étape, l’hypothèse la plus appropriée est choisie.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 31 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Les étapes de la méthode MERISE 2/3
Au niveau de chaque projet
Le domaine qui est à automatiser peut être décomposé en projets.
comptabilité clients
Domaine comptable comptabilité fournisseurs On distingue alors
comptabilité trésorie
deux étapes :
l’étude détaillée qui permet de décrire les entrées, les sorties, les
données utilisées et l’enchaı̂nement des tâches.
l’étude technique qui marque la fin de la conception et le début de
la réalisation. Elle l’organisation physique des données et des
traitements.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 32 / 85
Conception des bases de données Méthodologie d’analyse MERISE
Les étapes de la méthode MERISE 3/3
Au niveau de chaque application
On peut dégager à ce niveau 3 étapes :
step1 écriture des programmes
création des tables de la base de données
tests et jeux d’essais.
step2 mise en route progressive de l’application
implantation des données réelles
information du personnel.
step3 maintenance du système
amélioration en fonction des besoins des utilisateurs.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 33 / 85
Conception des bases de données Méthodologie d’analyse MERISE
L’étude préalable 1/4
L’étude préalable prend en compte deux situation :
Le projet est nouvellement créé
Le projet existe déjà on cherche à l’améliorer en proposant une
solution future.
Le projet est nouvellment créé
Recueil des besoins grâce à des entretiens / documents . . .
cerner les objectifs et comprendre les besoins
identifier des concepts (règles de gestion, règles d’organisation,
...)
proposer une évaluation quantitative et qualitative
Produits : diagramme de flux; modèle conceptuel des données
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 34 / 85
Conception des bases de données Méthodologie d’analyse MERISE
L’étude préalable 2/4
Le projet existe déjà on cherche à l’améliorer
Etude l’existant
Le système d’information actuel est étudié à l’aide :
de la description des postes de travail en faisant ressortir les
tâches effectuées, leur durée, leur fréquence, etc . . .
de la description des documents
d’interviews des utilisateurs.
Cette première phase permet :
la mise en évidence des insuffisances actuelles et de leurs causes
la proposition de différentes solutions envisageables.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 35 / 85
Conception des bases de données Méthodologie d’analyse MERISE
L’étude préalable 3/4
Solution à mettre en place
Etude individuelle : Chaque proposition est étudiée
individuellement.
le schéma de circulation de l’information souhaité
le MCD futur
le MCT futur
une estimation des volumes d’informations à traiter
une évaluation des logiciels à acquérir
le budget correspondant à l’achat du matériel et à sa maintenance
Etude comparative
Une étude comparative des différentes propositions permet
d’effectuer le choix définitif. Ce choix peut s’effectuer en tenant
compte de :
la réponse aux objectifs fixés
du coût
la faisabilité technique (matériels, logiciels, délais) et humaine
(recrutement et formation).
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 36 / 85
Conception des bases de données Méthodologie d’analyse MERISE
L’étude préalable 4/4
Le dossier du choix
L’étude préalable s’achève avec l’élaboration d’un dossier présentant
l’existant, les objectifs à atteindre, la description des différentes
propositions étudiées et la justification du choix.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 37 / 85
Conception des bases de données Étapes de la conception des bases de données
Plan
1 Introduction
Données, Bases de données et SGBD
2 Conception des bases de données
Méthodologie d’analyse MERISE
Étapes de la conception des bases de données
3 Modélisation par le modèle entité-association
Remise en cause et évolution du modèle
4 Approche Relationnelle
5 Langage SQL, TP1
6 Normalisation et optimisation SGBD, TP2
7 Algèbre relationnelle, TP3
8 Evalution théorique et pratique
9 Préservation de données:transsation+sécurité+tiggers
10 Défis Big-Data : BD NosQL
11 MongoDB, TP1, TP2, TP3
12 Evalution théorique et pratique
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 38 / 85
Conception des bases de données Étapes de la conception des bases de données
Étapes de la conception des bases de données
On peut décomposer le processus de conception d’une base de
données en plusieurs étapes :
l’analyse du système du monde réel à modéliser ;
la mise en forme du modèle pour l’intégrer dans un SGBD ;
la création effective dans le SGBD des structures et leur
remplissage.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 39 / 85
Conception des bases de données Étapes de la conception des bases de données
analyse du monde réel 1/2
Effectuer l’analyse de la situation du monde réel à considérer
Approche ”humaine” qui se fonde en partie sur des entretiens
avec les personnels concernés.
On détermine les objectifs du système d’information à concevoir
et on identifie tous les éléments à prendre en compte dans le
système; ce sont les champs qui contiendront les données
Par exemple les champs ”nom”, ”prénom” et ”adresse” que l’on
regroupe constituent une ”personne”.
Identifier les liens à modéliser entre ces objets ainsi que les
éléments caractéristiques de ces liens.
Par exemple une personne achète une voiture à 10 000 euros. Ici
les deux objets liés sont ”personne” et ”voiture”, et le prix est le
composant du lien.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 40 / 85
Conception des bases de données Étapes de la conception des bases de données
analyse du monde réel 2/2
Exprimer les règles qui définissent le domaine de validité du
contenu des champs.
Par exemple, le prix d’une voiture ne peut pas être inférieur à 500
euros ou supérieur à 150 000 euros.
Cette modélisation du réel permet de proposer un schéma
conceptuel qui servira à la description générale du système
d’information.
Ce schéma est souvent réalisé à l’aide de la symbolique du
modèle ”entité association” ou exprimé avec le langage UML
(Unified Modeling Language).
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 41 / 85
Conception des bases de données Étapes de la conception des bases de données
passage au sgbd 1/2
Le schéma conceptuel doit être transformée pour la rendre
acceptable par le SGBD, qu’il soit relationnel, objet ou
relationnel-objet.
C’est lors de cette phase que l’on vérifie la qualité de la base de
données en utilisant les critères vus précédemment, comme
l’élimination de la redondance.
Le modèle relationnel procure à cette fin des outils capables de
tester la cohérence du système et de le modifier le cas échéant :
ce sont les ”formes normales”, qui seront vues plus tard.
Il est possible de constater des incohérences à ce niveau de
l’analyse, ce qui implique de modifier le modèle conceptuel de
données développé à l’étape précédente.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 42 / 85
Conception des bases de données Étapes de la conception des bases de données
passage au sgbd 2/2
On obtient un schéma des données qui fournira aux utilisateurs
les informations nécessaires pour effectuer leurs requêtes, par
exemple la description des noms de tables, de champs et leurs
types.
Par contre, on perd à ce niveau l’information du ”sens” des
données et du lien entre elles.
Pour y remédier on définit les ”vues” du système d’information qui
sont adaptées à chaque catégorie d’utilisateurs.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 43 / 85
Conception des bases de données Étapes de la conception des bases de données
création et utilisation de la base de données
On utilise le SGBD pour passer à la création des tables qui
constituent la base de données.
On insère évidemment les valeurs dans les tables.
On crée les vues définies à l’étape précédente et par là même les
utilisateurs concernés. Le système est alors opérationnel.
Toute cette étape se fait forcément en utilisant le SGBD, alors que
les précédentes étaient plus théoriques.
La création des tables et l’utilisation de la base de données
nécessiteront le langage SQL.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 44 / 85
Conception des bases de données Étapes de la conception des bases de données
Étapes de la conception d’une base de données
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 45 / 85
Conception des bases de données Étapes de la conception des bases de données
”Métiers” des bases de données 1/2
consultants/analystes
Ils prennent en charge la première étape qui consiste en l’analyse des
activités et des flux d’information mis en jeu dans le monde réel à
modéliser. La gageure est de parvenir à faire exprimer correctement
les besoins d’informatisation par les utilisateurs du système
d’information, afin de proposer un modèle conceptuel de données le
plus juste possible.
concepteurs de la base
Ce sont les personnes qui s’occupent de traduire le modèle précédent
en un modèle logique exploitable par le SGBD. Le concepteur est un
spécialiste des bases de données qui prépare les tables, les vues, les
schémas d’accès. C’est lui qui renseigne les utilisateurs et
programmeurs pour la définition des requêtes. Le concepteur peut
aussi être administrateur du SGBD.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 46 / 85
Conception des bases de données Étapes de la conception des bases de données
”Métiers” des bases de données 2/2
administrateurs de base de données
L’administrateur a la responsabilité du fonctionnement général du
SGBD. Il crée les ressources (bases, comptes) à la demande. Il donne
les droits d’accès et gère les personnes qui accèdent au système. Il
vérifie que les ressources sont suffisantes (taille du disque, puissance
de la machine), effectue les sauvegardes, vérifie les failles de sécurité.
utilisateurs standard et programmeurs d’applications
Ce sont eux qui utilisent le système d’information. Ils y ont accès
grâce aux vues définies par le concepteur de la base. Ils utilisent les
schémas déterminés aux deux premières étapes de la conception. En
pratique il est préférable, surtout pour les développeurs d’applications,
d’avoir de bonnes connaissances du fonctionnement du SGBD. Par
exemple, pour optimiser les performances, la manière d’écrire les
requêtes peut être assez différente suivant le SGBD employé.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 47 / 85
Modélisation par le modèle entité-association
Plan
1 Introduction
Données, Bases de données et SGBD
2 Conception des bases de données
Méthodologie d’analyse MERISE
Étapes de la conception des bases de données
3 Modélisation par le modèle entité-association
Remise en cause et évolution du modèle
4 Approche Relationnelle
5 Langage SQL, TP1
6 Normalisation et optimisation SGBD, TP2
7 Algèbre relationnelle, TP3
8 Evalution théorique et pratique
9 Préservation de données:transsation+sécurité+tiggers
10 Défis Big-Data : BD NosQL
11 MongoDB, TP1, TP2, TP3
12 Evalution théorique et pratique
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 48 / 85
Modélisation par le modèle entité-association
Après l’étape de recueil d’informations, on dispose d’un ensemble de
phrases simples qui expriment les besoins décrivant la réalité à
modéliser : on doit alors en effectuer une représentation. Le modèle
obtenu à cette étape est en général nommé Modèle Conceptuel des
Données (MCD).
Entité/Association
Le formalisme le plus répandu pour constituer ce schéma est le
modèle entité-association (ou entity-relationship en anglais). Il a été
présenté à l’origine par P. Chen en 1976 aux États-Unis quasi
simultanément avec le modèle de H. Tardieu en France, ce qui
explique les notations légèrement différentes en Europe et aux
États-Unis, en particulier au niveau de la représentation des
cardinalités. Le modèle entité-association a été normalisé à l’ISO.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 49 / 85
Modélisation par le modèle entité-association
Entités
Les entités sont les objets concrets ou abstraits du monde réel.
Elles peuvent être :
un acteur : client, fournisseur
un ”objet” : produit, document, message
un flux : livraison, commande, transport
Les attributs (propriétés)
Un attribut désigne une valeur qui ”qualifie” l’entité à laquelle il se
rapporte.
Caractéristiques
Un nom qui désigne la propriété.
Une occurrence est une valeur particulière de cette propriété
Le domaine de définition est l’ensemble des valeurs possibles que
peut prendre la propriété.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 50 / 85
Modélisation par le modèle entité-association
Exemple
”Un hôtel loue des chambres à des clients qui effectuent des
réservations.” Après avoir procédé à l’analyse de la phrase pour en
extraire les parties importantes, on peut la réécrire de la manière
suivante :
Un client loue une chambre ; un client réserve une chambre.
Les deux objets du monde réel la chambre et le client – apparaissent
clairement.
Attributs
Un client est caractérisé par son nom, son adresse et son numéro
de téléphone.
Une chambre est caractérisée par son numéro, un nombre de
places, son tarif journalier et la présence ou non d’un cabinet de
toilettes.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 51 / 85
Modélisation par le modèle entité-association
Entités ”chambre”, ”attributs” et ”occurrences”
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 52 / 85
Modélisation par le modèle entité-association
Les identifiants (clés)
Propriété (ou ensemble de propriétés) particulière qui permet
d’identifier de façon unique une occurrence de l’entité.
Le choix de l’identifiant n’est pas toujours trivial. Il est parfois
nécessaire d’introduire artificiellement un attribut supplémentaire afin
de pouvoir disposer d’un identifiant. Dans le cas de l’hôtel, il faudrait
intégrer un attribut pour identifier un client.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 53 / 85
Modélisation par le modèle entité-association
Les associations
Les associations représentent les liens qui existent entre les entités.
Dimension d’une association
Association réflexive : lien de l’entité sur elle-même
Association binaire : lien entre deux entités
Association ternaire : lien entre trois entités
Association n-aire : lien entre n entités
Association porteuse
Association qui porte des propriétés
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 54 / 85
Modélisation par le modèle entité-association
Entités ”client” et ”chambre” reliées par les associations ”location” et
”réservation”
Association réflexive
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 55 / 85
Modélisation par le modèle entité-association
cardinalités
Elles quantifient le nombre d’occurrences d’une entité qui participent à
une association.
Cardinalités limites
Combien d’occurrence au minimum? Typique : 0 ou 1.
Combien d’occurrence au maximum ? Typique : 1 ou n.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 56 / 85
Modélisation par le modèle entité-association
Valeurs de cardinalités
Un client loue au minimum une (1) chambre ; il peut en louer
plusieurs (n). La cardinalité est donc de 1,n.
Une chambre peut être louée plusieurs fois (n) et elle peut ne pas
être occupée (0). La cardinalité est donc de 0,n.
De un à un, notée 1,1. Une brosse à dents possède en théorie un
(1) et un (1) seul propriétaire.
De un à plusieurs, notée 1,n. Un livre a au moins un (1) auteur ; il
peut en posséder plusieurs (n). On ne considère pas les ouvrages
anonymes.
Optionnel, notée 0,1. Une personne est célibataire (0) ou mariée
(légalement. . . ) à une (1) autre personne au plus.
De zéro à plusieurs, notée 0,n. Un appartement peut être libre (0)
ou habité éventuellement par plusieurs habitants (n).
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 57 / 85
Modélisation par le modèle entité-association
Exemple d’application
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 58 / 85
Modélisation par le modèle entité-association
Solution
Deux entités du monde réel sont identifiées :
les personnes et les voitures. Une voiture est caractérisée par sa
marque, son type, sa couleur. Une personne est caractérisée par son
nom, son âge, sa ville, son sexe. L’action modélisée est la vente,
caractérisée par le prix de la vente et sa date. Une personne peut
acheter plusieurs voitures ou aucune. Une personne peut acheter
aucune ou plusieurs voitures. Une voiture peut être vendue ou non.
Recherche des identifiants
Les deux entités ”voiture” et ”clients” ainsi que leurs attributs respectifs
sont bien définis ; il manque pour chacune de ces entités un identifiant
capable de différencier les occurrences (ou représentants) des entités
voitures et des clients. Sur cet exemple simple, il est facile de vérifier
qu’aucun attribut ni ensemble d’attributs ne permet de définir sans
ambiguı̈té un identifiant.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 59 / 85
Modélisation par le modèle entité-association
Recherche des cardinalités
Les cardinalités sont déduites des deux dernières phrases :
0,n. Pour ”une personne peut acheter plusieurs (n) voitures ou
aucune (0).”
0,1. Pour ”une voiture peut être vendue une seule fois (1) ou
jamais (0).”
Entités ”voiture” et ”client” liées par l’association ”vente” avec
cardinalités
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 60 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
Plan
1 Introduction
Données, Bases de données et SGBD
2 Conception des bases de données
Méthodologie d’analyse MERISE
Étapes de la conception des bases de données
3 Modélisation par le modèle entité-association
Remise en cause et évolution du modèle
4 Approche Relationnelle
5 Langage SQL, TP1
6 Normalisation et optimisation SGBD, TP2
7 Algèbre relationnelle, TP3
8 Evalution théorique et pratique
9 Préservation de données:transsation+sécurité+tiggers
10 Défis Big-Data : BD NosQL
11 MongoDB, TP1, TP2, TP3
12 Evalution théorique et pratique
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 61 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
qualité des attributs
Règle 1
Ne stocker que les attributs strictement nécessaires. Le choix
s’effectue en tenant compte des fonctionnalités attendues du système
d’information par élimination systématique des données non utiles.
Règle 2
Ne pas retenir les attributs qui peuvent être déduits d’autres attributs.
La déduction peut se faire soit par le calcul, soit par un lien
sémantique entre plusieurs attributs :
Le chiffre d’affaires peut être calculé à partir du prix de vente et de
la quantité.
Une référence peut être construite à partir du nom du produit et
du fournisseur.
Le but est de réduire la place occupée ainsi que les risques
d’incohérence.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 62 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
Attribut multiple
Remplacer un attribut multiple en association et entité supplémentaire
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 63 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
réorganisation des entités
Que se passe-t-il si l’on possède plusieurs exemplaires du même
ouvrage ?
Le numéro ISBN n’est plus identifiant puisqu’il est le même pour
chacun des exemplaires.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 64 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
réorganisation des entités
première solution
Une solution consiste à ajouter un numéro supplémentaire unique
pour chaque livre, qui correspond à la notion de cote dans une
bibliothèque. Ainsi, même si l’on a dix exemplaires d’un ouvrage, il est
possible de les différencier.
L’inconvénient de cette solution
on répète les informations communes aux différents ouvrages (titre,
auteur . . . ) à chaque exemplaire. L’un des risques est de répéter
incorrectement ces informations et d’aboutir ainsi à des incohérences.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 65 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
réorganisation des entités
La solution correcte
On sépare l’entité ”livre” en deux entités ”livre” et ”ouvrage” . L’activité
de la bibliothèque est alors décrite par deux phrases :
Un lecteur emprunte un exemplaire.
Un livre représente un exemplaire d’un ouvrage.
Un livre est caractérisé par un numéro (cote) identifiant et un ISBN. Un
ouvrage est caractérisé par un ISBN, qui est bien dans ce cas un
identifiant, un titre, un auteur et un éditeur. Dans cet exemple, l’objet
du modèle conceptuel ”livre”, utilisé comme entité, est décomposé en
deux autres entités dont une est abstraite : l’ouvrage. L’ouvrage est un
regroupement d’attributs qui n’a pas d’existence ”tangible” dans le
monde réel.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 66 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
réorganisation des entités
Que se passe-t-il si l’ouvrage possède plusieurs auteurs ?
Une solution simpliste est de prévoir un champ par auteur
supplémentaire, c’est-à-dire d’ajouter des champs ’auteur2’, ‘auteur3’,
‘auteur4’, etc.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 67 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
réorganisation des entités
L’inconvénient de cette solution
Cette solution pose de nombreux problèmes :
Si seulement dix livres sur un million possèdent plusieurs auteurs,
on réserve la place pour les champs auteurs supplémentaires qui
sera inutilisée.
Si un livre possède un nombre d’auteurs supérieur au nombre de
champs prévus, on ne résout pas le problème.
Si l’on considère qu’un auteur peut avoir écrit plusieurs ouvrages,
on répète dans ce cas les informations le concernant pour chacun
de ses ouvrages. Cela constitue un cas typique de redondance
qui risque de provoquer des incohérences.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 68 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
réorganisation des entités
Solution correct
La solution correcte dans ce cas est de créer une entité
supplémentaire pour ces attributs qui sont sémantiquement de même
type. On créera ici une entité auteur qui contiendra un numéro
d’auteur (identifiant), son nom et son prénom. Cette entité est reliée à
l’entité ouvrage par l’association ‘a écrit’
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 69 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
réorganisation des entités
Que se passe-t-il si un auteur emprunte un livre ?
Un auteur peut également emprunter un livre et revêtir par conséquent
le rôle de l’emprunteur. Dans ce cas, on répète les informations le
concernant dans l’entité ‘lecteur’. De même que précédemment, cela
provoque de la redondance et peut générer des incohérences.
Comme les entités ‘lecteur’ et ‘auteur’ ont la même structure
(c’est-à-dire des mêmes attributs), la solution consiste à les fusionner
en une entité unique ‘personne’. Cette opération conduit à une
association entre les entités ‘personne’ et ‘livre’ (emprunte) et les
entités ‘personne’ et ‘ouvrage’ (a écrit)
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 70 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
réorganisation des entités
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 71 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
réorganisation des entités
En resumé
On a identifié dans cette sous-section plusieurs cas qui nécessitent de
réorganiser les entités obtenues lors d’une première analyse :
Si l’on repère à l’intérieur d’une entité des attributs qui
représentent un ensemble logique (mis en valeur dans l’exemple
par un défaut d’identifiant pour un livre), on sépare ces attributs
dans une entité supplémentaire.
Si des attributs dans une même entité possèdent une sémantique
identique (auteurs, numéros de téléphone multiples), on crée une
entité supplémentaire pour séparer ces attributs. Cette entité sera
associée à celle dont proviennent les attributs à l’origine.
Si des entités ont la même structure (et représentent le même
type d’objet), on les fusionne et l’on conserve les associations qui
existaient avant la fusion.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 72 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
élimination et fusion d’associations
Élimination d’associations
On considère le cas d’un acte d’achat effectué sur Internet avec une
carte bancaire. Une facture est réglée par une carte. On peut
distinguer les deux entités ‘facture’ et ‘carte’ . Une facture est identifiée
par un numéro de facture, et est constituée d’un montant et d’une date.
Une carte bancaire est identifiée par son numéro, son type (Visa,
MasterCard), sa date de validité et son propriétaire. Les cardinalités
entre les entités ‘carte’ et ‘facture’ sont de type 1-1 (une facture est
payée par une et une seule carte) et 1-n (une carte peut servir à régler
plusieurs factures). On peut utiliser une Ecarte qui permet d’améliorer
la sécurité de ces transactions. Une Ecarte est une carte ”virtuelle”
associée à une véritable carte bancaire, valable pour une seule
transaction. Les cardinalités deviennent alors de type 1-1 des deux
côtés : une Ecarte ne permet de régler qu’une et une seule facture.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 73 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
élimination et fusion d’associations
Dans ce cas, l’association ‘règle’ n’a plus lieu d’être puisqu’il s’agit
d’une pure bijection : à une facture correspond une Ecarte et une
seule, et à une Ecarte correspond un produit et un seul. On peut
fusionner les deux entités ‘carte’ et ‘facture’ et éliminer l’association.
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 74 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
élimination et fusion d’associations
Fusion d’associations
Suivant le même principe, il est possible de fusionner plusieurs
associations ayant le même rôle sémantique. Si l’on considère la
description de l’activité suivante, liée à l’exécution de morceaux de
jazz en quartet. Pour un morceau donné, le premier musicien joue la
partie de basse, le deuxième celle de batterie, le troisième celle de
piano et le quatrième celle de saxophone
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 75 / 85
Modélisation par le modèle entité-association Remise en cause et évolution du modèle
élimination et fusion d’associations
Comme il s’agit de la même activité (un musicien interprète un
morceau), on peut remplacer toutes les associations par une
association ‘interprète’. L’association ‘interprète’ contiendrait l’attribut
‘instrument’ pour ne pas perdre l’information de l’instrument associé
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 76 / 85
Approche Relationnelle
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 77 / 85
Langage SQL, TP1
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 78 / 85
Normalisation et optimisation SGBD, TP2
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 79 / 85
Algèbre relationnelle, TP3
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 80 / 85
Evalution théorique et pratique
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 81 / 85
Préservation de données:transsation+sécurité+tiggers
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 82 / 85
Défis Big-Data : BD NosQL
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 83 / 85
MongoDB, TP1, TP2, TP3
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 84 / 85
Evalution théorique et pratique
Mourad NACHAOUI (LST Informatique ) FST de Béni-Mellal 85 / 85