22
versité PARIS-SUD - Licence MPI - S1 1 Introduction à Introduction à l’informatique l’informatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Embed Size (px)

Citation preview

Page 1: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S1 1

Introduction à l’informatiqueIntroduction à l’informatique

Chapitre 2: Donnés et base données

Page 2: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S12

Données et stockage Données et stockage Algorithme

= puissance de l’ordinateur Problèmes : vitesse, exactitude, prévisibilité.

Données = richesse de l’ordinateur Problèmes : masse des données, structuration,

sauvegarde 2 domaines fortement liés

Algorithme de visualisation de masses de données

Systèmes de sauvegarde et de gestion de version des programmes

Page 3: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S13

Données et stockage Données et stockage Algorithme

= puissance de l’ordinateur Problèmes : vitesse, exactitude, prévisibilité.

Données = richesse de l’ordinateur Problèmes : masse des données, structuration,

sauvegarde

2 domaines fortement liés Algorithme de visualisation de masses de données Systèmes de sauvegarde et de gestion de version des

programmes Logique booléenne identique

Page 4: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S14

Cycle de vie d’un système de stockage des donnéesCycle de vie d’un système de stockage des données Conception - Modélisation

Analyse des données Solution sous forme de schémas

Langage de modélisation Mise en oeuvre

Base de données langage de « haut niveau »

Remplissage / Récupération Croiser les données

La voiture 206 diesel est immatriculée en 75 Le département 75 a des frais de carte grise de 135 euros

Maintenance Mise à jour des données Sauvegarde Evolution du schéma => traduction des données

Page 5: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S15

DDééfis lifis liés au stockage des données és au stockage des données Hétérogénéité des données

Numériques, textuels, dates, multimédia, etc. Taille / Passage à l'échelle

Nombre de « trucs », complexité des « trucs » Partage entre utilisateurs

Rôles : Contributeur, vérificateurs, visionneur, etc. Accès simultanés

Lisibilité du schéma Comme en algo.

Performances Accès aux très grandes tables Croisements complexes Comptage des réponses

Google vous donne 10 réponses en quelques millisecondes … mais aussi le nombre de réponses … même quand il y en a des millions !

Page 6: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S16

Base de donnBase de donnéées relationelles es relationelles Modèle relationnel inventé par E. Codd en1970

Directeur de recherche du centre IBM de San José IBM Sequel (Structured English Query Language) en 1977 IBM Sequel/2 IBM System/R IBM DB2 SQL/86 SQL/89 SQL/92 ou SQL 2.0

Données tabulaires Norme / Standard = SQL (Structured Query Language)

Typage des données Protection des données

notions de propriétaires, de groupes et de droits d'accès

Page 7: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S17

Tables de donnTables de donnéées “Enseignants”es “Enseignants”Num Nom Prenom Email StatutDerniere1 Vernier Frédéric [email protected] DEPINFO-LIMSI 2 Max Aurelien [email protected] DEPINFO-LIMSI 3 Bautier Jean [email protected] EXTERIEUR 4 Schlienger Francoise [email protected] IUT5 Vauchelle Alain [email protected] IUT6 Tixeuil Sebastien [email protected] DEPINFO-LRI 7 Allauzen Alexandre [email protected] DEPINFO-LIMSI8 Voisin Frederic [email protected] DEPINFO-LRI 9 Nel Laurent [email protected] UP11-AUTRE 10 Longavesne Jean-P [email protected] UP11-AUTRE 11 Lisser Abdel [email protected] DEPINFO-LRI 12 Rousseau Martine [email protected] IUT13 Astier Roger [email protected] IUT 14 Calisti Jean [email protected] IFIPS15 Simon Laurent [email protected] DEPINFO-LRI 16 Roussel Nicolas [email protected] DEPINFO-LRI 17 Alphonse Erick [email protected] DEPINFO-LRI 18 Journiac Brigitte [email protected] UP11-AUTRE19 Lenoir Jean-Pierre [email protected] IUT20 Barras Claude [email protected] DEPINFO-LIMSI21 Blanch Renaud [email protected] DEPINFO-LRI 22 Fournier Jean-Pierre [email protected] IUT23 Herault Thomas [email protected] DEPINFO-LRI… 518 Appert Caroline [email protected] DEPINFO-LRI 519 Benoit Stacey [email protected] EXTERIEUR 520 Panzer Claire [email protected] EXTERIEUR

NumeroNumero Texte courtTexte court Choix multiplesChoix multiples

ElementsElements

Page 8: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S18

Requêtes SQLRequêtes SQL Récupération des données :SELECT Prenom, NomFROM EtudiantsWHERE Niveau=“S1”

SELECT *FROM Enseignements WHERE Niveau=“S1” AND Filiere=“L-MPI”

InsertionINSERT INTO `Etudiants` ( `NumEtudiant`, `Prenom`, `Nom`, `Email`, `Filiere`, `Annee`, `Niveau`, `DateN`)VALUES (’856', 'Jean', 'Nemaclac', '[email protected]',

’MPI', '2006', ’S1', ’1988-11-29')

Alban BERGUER

Marina BILMONT

Pauline BLANC

… …

Page 9: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S19

Table des RTable des Réésultatssultats Totale (SELECT * FROM Etudiants) Partielle au niveau des lignes

SELECT * FROM Etudiants WHERE Niveau=“S1”

Partielle au niveau des colonnes SELECT Nom, Prenom FROM Etudiants

Doublement partielle SELECT Nom, Age FROM Etudiants WHERE Niveau=“S1”

Ordonnée SELECT * FROM `Etudiants` ORDER BY `Annee` DESC

Limitée dans le nombre d’élements SELECT * FROM `Etudiants` LIMIT 0 , 30

Page 10: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S110

OpOpérations de Sélection (clause WHERE)érations de Sélection (clause WHERE)

SELECT * FROM Etudiants WHERE (DateN > 1988-01-01

AND % et logique Prenom LIKE “Chris%”) % ressemble à

OR % ou logique (AGE=19

AND % et logique Filiere NOT LIKE “%-MPI”)

Composition identique à l’algorithmique mais les opérateurs diffèrent

Page 11: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S111

Jointure / CroisementJointure / CroisementUne note par étudiants et par enseignement … mais tous

les étudiants ne suivent pas tous les enseignements !

SELECT *FROM Etudiants, Enseignements

WHERE Etudiants.Filiere= Options.Filiere

SELECT * FROM Etudiants, Enseignements, Options

WHERE Etudiants.Numero= Options.NumeroEtudiants

AND Enseignements.Numero = Options.NumEnseign

Num

ero

Prenom

Nom …

1 Alban BERGUER …2 Marina BILMONT …

Num

ero

Num

eroEtudiant

Num

eroEnseign …

1 1 1 …2 2 1 …

EtudiantsEtudiants

Num

ero

Intitule

Heures

1 Math102 50 …2 GEOS103 50 …

OptionsOptions EnseignementsEnseignements

Page 12: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S112

Jointure + SelectionJointure + Selection Jointure = Super Selection = Super Jointure + Selection = Genial !

(un peu comme les boucles et les conditions)

SELECT * FROM Etudiants, Enseignants, Groupes

WHERE Etudiants.Numero= Groupes.NumeroEtudiants

AND Enseignants.Numero = Groupes.NumEnseignant

AND Etudiants.NiveauScience=“Faible”

AND Enseignants.TypeNotation=“Sévère”

Page 13: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S113

Numérotation / CléNumérotation / Clé Numérotation automatique

Garantie que 2 étudiants ne peuvent pas avoir le même numéro.

Autre raisons de ne pas avoir des doublons Etudiants avec le même nom => problèmes

Utiliser un numéro unique existant (No SS) Quelle garantie que je n’inscris pas 2 fois la même

personne ? Les tables peuvent définir des clés qui garantissent

l’unicité

Num

ero

Prenom

Nom …

1 Alban BERGUER …2 Marina BILMONT …

Page 14: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S114

Problèmes concrets Problèmes concrets Et si un prof assure d’autres cours avec d’autres

groupes ayant le même numéro (groupes B1 des Licence BIBS) ?

Et si un prof intervient 2 fois dans la même filière ? Et si les étudiants font d’autres groupes pour les

options ou pour les langues ? Et si un prof de Cours TD enseigne aussi en option ? Comment se rappeler d’ou viennent les redoublants ? Comment trouver le plus petit groupe de TD afin d’y

inscrire les nouveaux arrivants ? Et le groupe de TD avec le plus de redoublants pour y

mettre l’enseignant le plus expérimenté ?

Page 15: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S115

SchSchéémas de base de donnmas de base de donnéesées

Graphique synthétique des relations entre données Flèches / tables

Page 16: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S116

Example plus rExample plus rééaliste ;-)aliste ;-)

Page 17: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S117

La bonne recetteLa bonne recette Jointures multiples Selections aux petits oignons Tables nombreuses et bien organisées Aucune données redondantes ou inutile Un schéma bidon pour

le patron / le chef => Un vrai schéma de pro

pour le vrai boulot (voir avant)

PS : logo/icone d’une BD = cylindre

Page 18: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S118

UtilitairesUtilitaires SQL ne gère pas que la recherche et le

remplissage de la BD. Rajouter / enlever des tables Supprimer des élémentsDELETE FROM `Enseignants` WHERE `NumEns` =1

Modifier une valeurUPDATE `Enseignants` SET `Statut` = “BonProf”

WHERE `NumEns` =1

Modifier les droits d'accès Créer / détruire / modifier des utilisateurs / groupes etc.

Page 19: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S119

InterfacesInterfaces Interfaces graphique pour éditer / remplir /

détruire … mais pour les requêtes, on a rien fait de plus

puissant que le SQL ! Formulaires

Gestion descontraintes

Formulaire Web Facilité d’accès Affichage formaté

Page 20: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S120

Et puis …Et puis … Fonctions d'agrégations Performances, Optimisation Multimédia (images, sons, ...) Sécurité (chiffrements, droits) Transactions (plusieurs utilisateurs/banque + €) Clé multiples Manipulation d’une BD depuis un programme Sauvegarde d’une table BD géographiques SELECT * FROM Villes WHERE

dist<100km

Réseaux, accès à distances, fragmentation. etc.

Num

ero

Prenom

Nom

Nb E

tu.

1 Fred Vernier 222 Sandrine Gouraud 24

Page 21: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S121

ApplicationsApplications Sciences

BD génomiques, composes chimiques, articles, étoiles, etc.. Vie quotidienne

BD d’associations de joueurs de mandolines électriques BD des ouvrages d’une bibliothèque / CD-thèque (ITMS) BD de pages Web qui s’appelle Google (savoir faire des

requêtes compliquées) Autre disciplines

Gestion / Economie = pensez à la MiAGE DRH/ Gestion du personnel Médecine / Police (scientifique)

Informatique DBA (administrateur de BD) Systèmes d’information (DSI)

Page 22: Université PARIS-SUD - Licence MPI - S1 1 Introduction à linformatique Chapitre 2: Donnés et base données

Université PARIS-SUD - Licence MPI - S122

RORO

FINFIN

IHMIHMBio-InfoBio-Info

CompilCompil

RRéseauxseauxIAIA

SISI

////

ArchiArchiTALTAL

CryptoCrypto

BDBD AlgoAlgo

VisionVisionparoleparole

VisuVisu GLGL

IGIG

SécuritéSécurité