1 / 22

Introduction à l’informatique

Introduction à l’informatique. Chapitre 2: Donnés et base données. 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

camden
Download Presentation

Introduction à l’informatique

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Introduction à l’informatique Chapitre 2: Donnés et base données

  2. 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

  3. 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

  4. Cycle 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 immatricule 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

  5. Défis lié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 !

  6. Bade de donné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

  7. Tables de données “Enseignants” Num Nom Prenom Email StatutDerniere Vernier Frédéric frederic.vernier@limsi.fr DEPINFO-LIMSI Max Aurelien aurelien.max@limsi.fr DEPINFO-LIMSI 3 Bautier Jean jean.bautier@laposte.net EXTERIEUR 4 Schlienger Francoise schlieng@fiifo.u-psud.fr IUT 5 Vauchelle Alain avauchel@fiifo.u-psud.fr IUT 6 Tixeuil Sebastien tixeuil@fiifo.u-psud.fr DEPINFO-LRI 7 Allauzen Alexandre allauzen@limsi.fr DEPINFO-LIMSI 8 Voisin Frederic voisin@fiifo.u-psud.fr DEPINFO-LRI 9 Nel Laurent laurent.nel@leuville.com UP11-AUTRE Longavesne Jean-P Grip@cnam.fr UP11-AUTRE Lisser Abdel lisser@fiifo.u-psud.fr DEPINFO-LRI Rousseau Martine rousseau@fiifo.u-psud.fr IUT 13 Astier Roger astier@iut-orsay.fr IUT 14 Calisti Jean jean.calisti@ifips.u-psud.fr IFIPS 15 Simon Laurent simon@lri.fr DEPINFO-LRI 16 Roussel Nicolas roussel@lri.fr DEPINFO-LRI 17 Alphonse Erick alphonse@lri.fr DEPINFO-LRI 18 Journiac Brigitte journiac@fiifo.u-psud.fr UP11-AUTRE 19 Lenoir Jean-Pierre lenoir@fiifo.u-psud.fr IUT 20 Barras Claude barras@fiifo.u-psud.fr DEPINFO-LIMSI 21 Blanch Renaud blanch@lri.fr DEPINFO-LRI 22 Fournier Jean-Pierre jpf@fiifo.u-psud.fr IUT 23 Herault Thomas Thomas.Herault@lri.fr DEPINFO-LRI … 518 Appert Caroline Caroline.Appert@lri.fr DEPINFO-LRI 519 Benoit Stacey stacey.benoit@supelec.fr EXTERIEUR 520 Panzer Claire clairepanzer92@free.fr EXTERIEUR Elements Numero Texte court Choix multiples

  8. Requêtes SQL • Récupération des données : SELECT Prenom, Nom FROM Etudiants WHERE Niveau=“S1” SELECT * FROM Enseignements WHERE Niveau=“S1” AND Filiere=“L-MPI” • Insertion INSERT INTO `Etudiants` ( `NumEtudiant`, `Prenom`, `Nom`, `Email`, `Filiere`, `Annee`, `Niveau`, `DateN`) VALUES (’856', 'Jean', 'Nemaclac', 'jean.nemaclac@laposte.net', ’MPI', '2006', ’S1', ’1988-11-29')

  9. Table des Résultats • 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

  10. Opérations de Selection (clause WHERE) SELECT * FROM Etudiants WHERE • (DateN > 1988-01-01 • AND % et logique • Prenom LIKE “Chris%”) % ressemble à • OR % ou logique • (AGE=19 • AND • Filiere NOT LIKE “%-MPI”) Composition identique delà l’algorithmique mais les opérateurs diffèrent

  11. Jointure / Croisement Une note par étudiants et par enseignement … mais tous les étudiants ne suivent pas tous les enseignements ! SELECT *FROM Etudiants, Enseignements WHERE Etudiants.Filiere= Enseignements.Filiere SELECT * FROM Etudiants, Enseignements, Options WHERE Etudiants.Numero= Options.NumeroEtudiants AND Enseignements.Numero = Options.NumEnseign Etudiants Options Enseignements

  12. Jointure + 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”

  13. 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é

  14. 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’inscrire les nouveaux arrivants ? • Et le groupe de TD avec le plus de redoublants ?

  15. Schémas de base de données • Graphique synthétique des relations entre données • Flèches / tables

  16. Example plus réaliste ;-)

  17. La bonne recette • Jointures multiples • Selections aux petits oignons • Tables nombreuses et bien organisées • Aucune données redondantes ou inutile • Un schéma bidon pourle patron / le chef • Un vrai schéma de propour le vrai boulot (voir avant) • PS : logo/icone d’une BD = cylindre

  18. Utilitaires • SQL ne gère pas que la recherche et le remplissage de la BD. • Rajouter / enlever des tables • Supprimer des éléments DELETE FROM `Enseignants` WHERE `NumEns` =1 • Modifier une valeur UPDATE `Enseignants` SET `Statut` = “BonProf” WHERE `NumEns` =1 • Modifier les droits d'accès • Créer / détruire / modifier des utilisateurs / groupes • etc.

  19. Interfaces • Interfaces graphique pour éditer / remplir / détruire • … mais pour les requêtes, on a rien fait de plus puissant due le SQL ! • Formulaires • Gestion descontraintes • Formulaire Web • Facilité d’accès • Affichage formatté

  20. Et puis … • Fonctions d’aggrégations • Performances, Optimisation • Multimedia (images, sons, ...) • Sécurité (chiffrements, droits) • Transactions (plusieurs utilisateurs/banque + €) • Clé multiples • Manipulation d’une BD depuis un programme • Sauvegarde d’une table • BD geographiques SELECT * FROM Villes WHERE dist<100km • Réseaux, accès a distances, fragmentation. etc.

  21. Applications • 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 • BD de pages Web qui s’appelle Google (savoir faire des requêtes compliquées) • Autre disciplines • Gestion / Economie = pensez a la MiAGE • DRH/ Gestion du personnel • Médecine • Informatique • DBA (administrateur de BD) • Systèmes d’information (DSI)

  22. FIN BD Algo SI Bio-Info RO IG Réseaux Archi IHM TAL IA GL Visu // Vision Crypto parole Compil

More Related