Base de données

Programmation Web et bases de données

Règle 3-2-1

  •  

    3 copies de vos données.

    • Par exemple : 1x sur l'ordinateur, 1x sur un disque dur externe, 1x sur le cloud.

    •  

      Contre les erreurs humaines.

  •  

    2 supports différents.

    • Par exemple : sur deux disques durs différents.

    •  

      Contre les pannes matérielles.

  •  

    1 copie hors site.

    • Par exemple : sur un serveur distant dans une autre région.

    •  

      Contre les catastrophes naturelles.

Types de bases de données

https://substack-post-media.s3.amazonaws.com/public/images/ffd5e3dc-215c-4f89-8336-6aa835022693_1984x1188.png

https://blog.algomaster.io/p/15-types-of-databases

NoSQL

  • NoSQL : "Non-SQL" ou "Not only SQL"

  • Modèle de base de données non relationnelle.

    • Pas de tables ni de relations.

    • Documents, clés-valeurs, graphes, etc.

  • Historique :

    • 1970 : premières bases de données relationnelles.

    • 2000 : essor d'Internet et besoin de scalabilité (Google (Bigtable), Amazon (Dynamo), Facebook (Cassandra), LinkedIn (Voldemort), …).

    • 2009 : NoSQL devient un terme générique.

Stockage orienté colonnes

https://user.oc-static.com/upload/2025/05/09/17467431544044_P1C2-3.png

https://openclassrooms.com/fr/courses/8587446-utilisez-les-bases-de-donnees-nosql/8637547-decouvrez-les-origines-du-nosql

  • Organisation des données en colonnes plutôt qu'en lignes.

  • Avantages :

    • Rapide pour les requêtes sur des colonnes (SUM, AVG, MIN, …).

    • Pas de cellules vides dans les tables (meilleure compression).

Stockage clé/valeur

https://user.oc-static.com/upload/2025/05/09/17467434047756_P1C2-4.png

https://openclassrooms.com/fr/courses/8587446-utilisez-les-bases-de-donnees-nosql/8637547-decouvrez-les-origines-du-nosql

  • Stockage de paires clé/valeur (comme un dictionnaire).

  • Avantages :

    • Rapide pour les recherches par clé.

    • Stockage de données simples.

Stockage orienté documents

https://user.oc-static.com/upload/2025/05/09/17467434932066_P1C2-5.png

https://openclassrooms.com/fr/courses/8587446-utilisez-les-bases-de-donnees-nosql/8637547-decouvrez-les-origines-du-nosql

  • Clé/valeur, mais les valeurs sont formatées en documents (JSON, XML, …).

  • Avantages :

    • Flexibilité du schéma (pas de structure rigide).

    • Recherches complexes sur les champs des documents.

Stockage orienté graphes

https://user.oc-static.com/upload/2025/05/09/17467436134205_P1C2-6.png

https://openclassrooms.com/fr/courses/8587446-utilisez-les-bases-de-donnees-nosql/8637547-decouvrez-les-origines-du-nosql

  • Organisation des données sous forme de graphes (sommets et arêtes).

  • Avantages :

    • Requêtes sur les relations entre les données.

    • Représentation des réseaux.

Série chronologique (time series)

https://hazelcast.com/wp-content/uploads/2024/12/diagram-time-series-database.svg

https://hazelcast.com/foundations/data-and-middleware-technologies/time-series-database/

  • Des données indexées par temps.

  • Avantages :

    • Idéal pour les données chronologiques (monitoring, logs, …).

    • Optimisé pour les requêtes sur des plages de temps.

Méthodologie

  • La méthodologie de projet structure et organise le travail d'un projet.

  • 1970 : Modèle en cascade (Waterfall)

    • Processus linéaire et séquentiel

  • Évolution de la distribution de logiciels

    • Disques (CD/DVD) : années + physique

    • Cloud (dématérialisé) : heures/minutes + téléchargement

  • 2001 : Méthode agile

    • Processus itératif, incrémental et adaptatif

    • Manifeste Agile : 4 valeurs et 12 principes

Waterfall vs Agile

https://cdnb.ganttpro.com/uploads/2016/11/waterfall-and-agile-methods.jpg

https://blog.ganttpro.com/en/waterfall-vs-agile-with-advantages-and-disadvantages/

Waterfall vs Agile

https://powerslides.com/wp-content/uploads/2019/03/Agile-vs-Waterfall-3.png

https://powerslides.com/powerpoint-business/project-management-templates/agile-vs-waterfall/