Supports cours "Systèmes d'Information"
Fabien Coelho et Claire Medrala.
Caveat
Ces documents sont une partie des supports distribués lors du cours Systèmes d'information. Ils ne constituent pas un support de formation auto-suffisant. Ils sont libres pour usage personnel.
Objectifs
Présenter largement les systèmes d'information, en particulier le stockage dévolue aux bases de données : modélisation, accès avec SQL, administration, extensions...
Contenu
La cours est composé de différents modules, comprennant des cours, des TD et des TP. Les modules ne sont pas vu tous en séquence, mais sont chronologiquement interdépendants. Tous les aspects pratiques s'appuient sur le logiciel libre Postgres
Introduction
- Introduction aux Systèmes d'Information
- Le modèle relationnel
- Article de Codd
- Présentation de Postgres
- Interfaces
- TP - prise en main
- Base COMICS
- Documentation
SQL - Structured Query Language
- Introduction
- Aide syntaxique
- DML - Data Manipulation Language
- TP - SQL DML 1
- TP - SQL DML 2
- DDL - Data Definition Language
- TP - SQL DDL
- DCL - Data Control Language
- TP - SQL DCL et optimisation
- Base COMICS étendue
- DML avancé
- TP - SQL avancé
Modélisation
- Modélisation Entité-Association (E/A)
- TD, exercices de modélisation
- Traduction EA en relationnel
- Théorie de la normalisation
Bases de données avancées
- Transactions
- Fonctionnement de PostgreSQL
- pages, fichiers, cache en mémoire partagés, WAL...
- processus : serveurs, checkpointer, wal-writer...
- niveaux de réplication : disque, base, clients...
- Optimisation des performances
- Étude de cas reporting (OLAP)
- Étude de cas performances et indexations
- Démarrage à froid
- Indexation multi-colonne Bloom
- Latence des transactions (B0 B1 B2 B3 B4 P1
- PgBench WIP (vidéo à PgSession 9)
- Introduction aux systèmes d'information géographiques (SIG) slides
- Introduction aux systèmes distribués (théorème CAP, map-reduce...) slides
Programmation côté serveur et côté client
- Développement en PL/pgSQL
- TP - PL/pgSQL
- Programmation Back-End avec Flask, FlaskSimpleAuth et AnoDB.
Administration de PostgreSQL
Divers
- TP - révisions
- Manga Guide to Databases (extract)
- Exo Postgres en ligne de Alisdair Owen
- Modern SQL by Markus Winand
- The Art of PostgreSQL by Dimitri Fontaine
- Depesz EXPLAIN et pev2 EXPLAIN
- pgFormatter formatage SQL et PL/pgSQL par Gilles Darold
- Franchise client web notebook
- pgcli client texte amélioré
- Postgres observability composants internes de Postgres
- Creately diagrammes en ligne
Examens
L'examen est un oral si possible, sinon un écrit :
- 2024 sujet (prêts d'objects et chantier de maisons) et correction.
- 2023 sujet (muka et paris entre amis) et correction.
- 2022 sujet (trail et airbnb) et correction.
- 2021 sujet (netflix et location de vélos) et correction.
- 2020 examen en ligne avec Corrector.
- 2019 sujet (parkings et ski) et correction.
- 2018 sujet (médicaments et location de voiture) et correction.
- 2017 sujet (résultats électoraux et restaurant) et correction.
- 2016 sujet (télépéage et consultations médicales) et correction.