Introduction et retour sur les bases de données traditionnelles
- Le modèle relationnel.
- Gestion des transactions et des accès concurrents.
- Le big data.
- Le mouvement NoSQL.
- Les grandes familles du NoSQL.
- Clés valeurs, document, orientées colonnes. Graphes : présentation des capacités de PostgreSQL.
- Les critères pour le choix du NoSQL.
Démonstration
Comparatif des bases de données traditionnelles avec les bases NoSQL.
Présentation du stockage NoSQL
- NoSQL, la fin des formes normales.
- Présentation des différentes bases colonnes, clés / valeurs, graphe, multimodales.
- Schémas et formats de sérialisation.
- XML : DTD et transformation XSLT.
- JSON : Bynary JSON.
- YAML : format et exploitation.
Démonstration
Présentation des différentes bases NoSQL.
Conception de base NoSQL
- Présentation de MongoDB.
- Exploitation de JSON.
- Le format JSONB.
- Importation de données.
- Indexation.
- Jointure NoSQL.
- Spécificités de PostgreSQL.
Travaux pratiques
Implémentation avec MongoDB.
Le requêtage avancé
- La connexion à une base NoSQL via Foreign Data Wrappers.
- Benchmark performance des différents serveurs de bases NoSQL.
Travaux pratiques
Gestion de la performance des différentes serveurs de bases NoSQL
Les outils autour du Big Data
- Hadoop et le rôle de Map Reduce.
- Stockage HDFS.
- HBase une base de données clé / valeur orientée colonnes.
- Spark/PostgreSQL.
- Performance et déploiement.
Travaux pratiques
Récupération de la base de données en cours depuis PostgreSQL en utilisant Spark.
Les bases de données orientées graphe
- Les principes.
- Mise en œuvre sous PostgreSQL.
Travaux pratiques
Création de graphes permettant de représenter graphiquement, et de stocker dans un grand ensemble de données.