Introduction aux bases de données BD4 S.B., F.C., & N. G. d. R. Licence MIASHS, Master ISIFAR, Paris-Diderot Janvier 2015 . BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) Introduction aux bases de données 1/10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Janvier 2015 1 / 10 . Introduction Bases de données Pourquoi ? Les bases de données ne sont pas un langage (comme JAVA) ou un environment de calcul (comme R). Ce sont des logiciels intermédiaires qui assurent une fonction complémentaire : le stockage au long cours des données. D’où viennent elles ? Les entreprises et les administrations ont toujours cultivé une mémoire sous forme de fichiers plus ou moins mécanisés et formattés. Ces fichiers mécanisés répondaient à des exigences de fiabilité, de convenance (facilité de la recherche, de la maintenance). Bases de données relationnelles forment un sous-ensemble important (prépondérant) des systèmes de gestion des bases de données. . BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) Introduction aux bases de données 2/10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Janvier 2015 2 / 10 . Introduction Collection de data frames Caricaturalement Une base de données est une collection de tables dont la forme ressemble à celle d’un data frame de R Data frame (R) Un data frame est une liste de vecteurs. Les vecteurs sont tous de même longueur. Les données d’un vecteur sont d’un même type. Mais chaque vecteur a son type. Chaque élément de la liste (chaque vecteur) possède un nom. Autres environments (Excel, Python/Pandas, ...) Les spreadsheet des tableurs, les DataFrame en Python/Pandas permettent de représenter ce que les data frame représentent en R. R/Tableurs offrent un environnement interactif de manipulation de données et un environnement de définition de données. . BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) Introduction aux bases de données 3/10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Janvier 2015 3 / 10 . Introduction Au delà Persistance Les tableurs, R n’offrent pas de persistance : entre deux sessions les données sont confiées au système de fichiers de l’ordinateur. Intégrité Les données confiées au système de fichiers peuvent être altérées par d’autre logiciel. Concurrence Les data frame ou équivalents ne peuvent pas être manipulés (consultés, mis à jour) de manière concurrente par plusieurs (ou du moins par une grande quantité d’) utilisateurs. . BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) Introduction aux bases de données 4/10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Janvier 2015 4 / 10 . Introduction Usages Derrière les sites web dynamiques il y a en général une base de données. Logiciels personnels Derrière certaines applications (gestion de photos, de carnet d’adresses, ...), on trouve des bases de données légères. Partout L’usage (transparent) des bases de données est universel : ▷ smartphones, tablettes, ... ▷ web, réseaux sociaux ▷ administrations (APOGEE...) ▷ entreprises (Stocks Supply Chain, Customer Relationship Management, ...) ▷ NSA . BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) Introduction aux bases de données 6/10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Janvier 2015 6 / 10 . Introduction Objectifs ▷ Compétences d’un usager de BD relationnelles ▷ Exprimer des requêtes en algèbre relationnelle et en SQL ▷ SQL Définition, manipulation et contrôle des données ▷ Concevoir un Modèle Conceptuel de Données (MCD) ▷ Déterminer les dépendances fonctionnelles et normaliser une relation ▷ Spécifier des contraintes ▷ Créer/utiliser les vues et les index . BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) Introduction aux bases de données 7/10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Janvier 2015 7 / 10 . Introduction Plan du cours ▷ Algèbre et calcul relationnels ▷ SQL (algèbre relationnelle strictes) ▷ SQL sous-requêtes ▷ SQL aggrégation ▷ SQL requêtes paramétrées ▷ Partiel ▷ Définition de données/Conception ▷ Vues et PL/SQL ▷ Triggers ▷ Normalisation . BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) Introduction aux bases de données 8/10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Janvier 2015 8 / 10 . Introduction Support logiciel PostgreSQL http ://www.postgresql.org/ PostgreSQL is a powerful, open source object-relational database system. It has more than 15 years of active development and a proven architecture that has earned it a strong reputation for reliability, data integrity, and correctness. It runs on all major operating systems An enterprise class database, PostgreSQL boasts sophisticated features such as Multi-Version Concurrency Control (MVCC), point in time recovery, tablespaces, asynchronous replication, nested transactions (savepoints), online/hot backups, a sophisticated query planner/optimizer, and write ahead logging for fault tolerance. It supports international character sets,..., Unicode, and it is locale-aware for sorting, and formatting. It is highly scalable both in the sheer quantity of data it can manage and in the number of concurrent users it can accommodate. There are active PostgreSQL systems in production environments that manage in excess of 4 terabytes of data . BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) Introduction aux bases de données 9/10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Janvier 2015 9 / 10 . Introduction Environnement Un serveur PostgreSQL ... hébergé par l’UFR de Mathématiques. Sur ce serveur, vous disposerez d’un accès authentifié. Vous pourrez lancer des requêtes sur les bases mises à disposition depuis un client (psql ou pgAdmin) résident sur un ordinateur de la salle de TP ou sur votre ordinateur personnel. Chez vous... Vous pouvez aussi installer un serveur PostgreSQL sur votre ordinateur. ▷ http ://pgadmin.org pour installer le client pgAdmin ▷ http ://www.postgresql.org pour installer client et serveur sur votre ordinateur. . BD4 (Licence MIASHS, Master ISIFAR, Paris-Diderot) Introduction aux bases de données 10/10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Janvier 2015 10 / 10 .