Académique Documents
Professionnel Documents
Culture Documents
• Web Programming
2
3
Volume Horaire / Evaluation
4
Remark
• I am going to use lots of English
vocabularies during this course
5
Rules During my Class
6
Plan – Part 1
• Introduction
• L’algèbre Relationnelle
• Le langage SQL
7
Plan – Part 2
• Le système d’information
• Schéma de Conversion
ü XML Databases
ü NoSQL
9
Références
10
Any organizational question ???
11
Comment Structurés les Données ?
• Programmes
– C, C++, Pyhton, Java, etc.
13
Introduction
§ Question : comment gérer (mémoriser et traiter) les clients d’une banque (BP,
BMCE, etc.) dans toutes les villes Marocaines représentés par leurs CNE, Nom,
Prénom, Adresse, etc. ?
Nooooo
15
Systèmes de Fichiers Caractéristiques
Problèmes
16
Format des Fichiers Caractéristiques
Plusieurs applications
Larry Lary
è plusieurs formats
Symptomes : y
Turlututu : sqj Symptom: yyyy
Analyses xxxx
Symptomes : y Turlututudhjsd
Turlututu : sdd Analyses :xx
Analyses : xxx
Problèmes
1. Difficultés de gestion
Larrey Larey
Turlututu : sq
Symptomes : yy
Symptomyyyy
Analyses : xxxx
Analysesxxxx
Symptomes : yy
Turlututudhjsd
17
Redondance (données) Caractéristiques
Plusieurs applications
Larry Lary è plusieurs formats
Symptomes : y Turlututusqjsk
Turlututu : sqj Symptom: yyyy
Symptomes : y
Turlututu : sdd
Analyses : xxx
Analyses xxxx
Turlututudhjsd
Analyses :xx
Redondance de données
Problèmes
1. Difficultés de gestion
2. Incohérence des données
Larrey Larey
Turlututu : sq
Symptomes : yy
Symptomyyyy
Analyses : xxxx
Analysesxxxx
Symptomes : yy
Turlututudhjsd
18
Interrogations Caractéristiques
Plusieurs applications
Larry Lary è plusieurs formats
SFGoogle
MontGoo
Symptomes : y Turlututusqjsk
Turlututu : sqj Symptom: yyyy
Symptomes : y
Turlututu : sdd
Analyses : xxx
Analyses xxxx
Turlututudhjsd
Analyses :xx
Redondance de données
Difficultés d’interrogation
Problèmes
1. Difficultés de gestion
2. Incohérence des données
3. Coûts élevés
LondGoo
NYGoog
Larrey Larey
Turlututu : sq
4. Maintenance difficile
Symptomes : yy
Symptomyyyy
Analyses : xxxx
Analysesxxxx
Symptomes : yy
Turlututudhjsd
19
Goal
Bases de données
(Databases) J
Example: Youtube DB
Example
25
C’est Quoi un SGBD (DBMS) ?
Très grand programme C L Da
tab
a se
Ma
na
ge
me
nt
Massive (Terabytes or Sy
Petabytes of data) Fiabilité ste
m
BD
Sécurité Indépendance physique
Multi-Utilisateurs
26
SGBD : Principes
§ Création de la base de données : deux possibilités offertes :
(1) utilisation du langage SQL, ou (2) utilisation des interfaces graphiques.
30
Top 10 Market Shares (January 2020)
33
Utilisateurs Clés
§ Responsable de l’Implémentation du SGBD : personne responsable du
développement du système tout entier.
§ Utilisateurs clés.
36
Like it or not, you are using
databases everyday or every
hour or every minute J
Les Modèles de Données
(Data Models)
Why Models ?
• Importants pour examiner ou gérer une partie du monde réel
• Le cout pour utiliser un modèle est moins couteux que
l’utilisation ou l’expérimentation direct du monde réel lui même
• Exemple:
– Carte d’un pays
– Modèle d’un robot
– Self driving car
39
Question
§ Nous avons déjà vu un modèle de données
§ Lequel ?
§ Réponse
ü Le modèle fichier
40
Modèles de Données
41
Modèle de Données - Définition
43
Description des Modèles de Données (2)
§ Contraintes simples
§ Contraintes complexe
44
Le Modèle Fichier
§ Par exemple, dans un hôtel, chaque service possède ses propres fichiers :
ü Le service des ressources humaines conserve les noms des employés et les
informations sur chaque employé.
ü Etc.
46
Le Modèle Hiérarchique
47
Le Modèle Hiérarchique - Exemple
Filière
GI GE TM
48
Modèle Réseau
§ Définit officiellement en 1971 par la spécification CODASYL (Conference on
Data Systems Languages)
§ Un père peut avoir plusieurs fils, (mais aussi un fils peut avoir plusieurs
pères).
49
Modèle Réseau - Exemple
GI GE TM
C Math Comptabilité
50
Modèle Relationnel
51
Modèle Relationnel
• Proposé en 1969/70 par E. F. Codd.
• Une seule manière de représenter les données : Relations.
• Modèle de description des informations
• Modèle très utilisé, quoique ancien
• Fondement mathématique
• Modèle associé à l’algèbre relationnelle
52
Modèle Relationnel
§ Une seule manière de représenter les données : Relations, ou encore
Tables.
CourseID Title Hours Semester
CS01 Algorithms & C Programming 26 S1
CS02 Introduction to Databases 22 S2
La relation
CS03 Artificial Intelligence 30 S6
« Course »
CS04 Data Structures & C++ 34 S2
CS05 Software Engineering 24 S3
…. … … …
§ struct Course {
char CourseID[20];
char Title[20];
int Hours;
Char Semester[20];
};
§ Course c1 = {"CS02","Introduction to Databases", 22, "S2"}; 54
Concepts (1)
§ Attributs : Un attribut est une information qui contribue à la description de
l’objet que l’on veut modéliser (les noms des colonnes de la relation).
55
Concepts (2)
§ Domaines
56
Base de Données Relationnelles
57
Instances d’une Relation
§ La relation « Course » n’est pas statique à Changement au cours du temps
§ Mais, rarement qu’on change le schéma de la base de données à très coutant
(Can you guess why ?).
§ L’ensemble des tuples d’une relation donnée est appelé « instance » de cette
relation.
§ Dans l’exemple ci-dessous, les 5 tuples forment une instance de la relation
Course.
CourseID Title Hours Semester
CS01 Algorithms & C Programming 26 S1
tuple CS02 Introduction to Databases 22 S2
CS03 Artificial Intelligence 30 S6
CS04 Data Structures & C++ 34 S2
CS05 Software Engineering 24 S3 58
Clé d’une Relation
§ Première contrainte qu’impose le modèle relationnel est la notion de clé
§ Autrement dit, on ne peut pas avoir deux tuples d’une relation dont les valeurs
des clés sont les mêmes.
§ Dans une relation, on souligne l’attribut (ou les attributs) qui forment une clé.
59
Clé d’une Relation
§ Exemple
§ Remarque
§ Exemple
62
Next Lecture
64