OpenEdge-labs trainings
  • OpenEdge-labs trainings
  • Thématiques
    • Cloud
      • Administration Openstack
      • Administration Openstack-avancé
      • Développement sur OpenStack
      • Openshift:Déploiement, administration, sécurisation et monitoring
    • Virtualisation
      • XCP-NG
      • Open Nebula
    • Systèmes
      • Monitoring-observabilite
        • Outils
          • monitoring
            • Prometheus
            • Victoria Metrics
            • Nagios XI pour Administrateurs
          • Observabilite
            • Opentelemetry-initiation
            • OpenTelemetry: approfondissement
            • Jaeger
            • eBPF-observabilité
            • LGTM stack
            • Grafana-Initiation
            • Grafana-approfondissement
            • Loki-initiation
            • Loki-approfondissement
        • Méthodologies
          • Stratégie d'incident management: monitoring à l'autoremédiation
          • Datavisualisation avec Grafana
          • Continuous Profiling
          • Auto-remédiation – Automatisation des Processus de Remédiation
      • Linux
        • Parcours développeur(TD)
          • Développement de Scripts et Automatisation sur Linux/Unix
          • Programmation Système Avancée sur Unix/Linux
          • Sécurité des Applications sur Unix/Linux
          • Développement et le Déploiement d'Applications Cloud-Native sur Linux
          • Linux, Drivers et Programmation Noyau
        • Parcours administrateur
          • Optimisation et le Tuning des Performances sur Linux/Unix
          • Sécurité avancée sur Linux
        • Parcours architecte(TD)
          • Conception d'Architectures Résilientes sur Linux/Unix
          • Conception d'Architectures Cloud et Hybrid Cloud sur Linux/Unix
    • Stockage
      • Etat de l’art-Systèmes de stockage open source
      • Migration vers un système de stockage open source
      • Glusterfs
      • Ceph
      • Sécurisation d'un système de stockage Open Source
    • Data
      • Opensearch
      • Opensearch-administration avancée
      • Dataviz open source
      • Kafka
      • Cassandra
    • Cloud native
      • Observabilité Avancée avec OpenTelemetry et Jaeger
      • Chaos Engineering et Résilience des Applications
      • Polyglot Persistence dans les Applications Cloud Native
      • Développement d'Architectures Serverless Open Source
      • Cloud Native Security – Zero Trust et Au-delà
      • Formation Avancée sur le Développement d'Architectures Serverless Open Source
    • IOT
      • Introduction à l'IoT
      • Analytique et Big Data pour l'IoT avec des Outils Open Source
      • Blockchain pour l'IoT avec des Technologies Open Source
      • Développement de Solutions IoT avec MicroPython et ESP8266/ESP32
      • Edge Computing avec Open Source IoT
      • Sécurité IoT avec des Outils Open Source
    • Devops
      • GitLab - Administration, CI/CD, et Gestion de Projets
      • Ingénierie de la Performance et la Planification de la Capacité
    • IA
      • Initiation à l'Intelligence Artificielle pour les Dirigeants
      • Transformation Digitale et Intelligence Artificielle (IA) pour les DSI
      • Gestion des Risques et Sécurité en IA
      • Applications Stratégiques de l'IA pour les Dirigeants
      • Intelligence Artificielle et Éthique pour les Décideurs
      • IA et Data Science pour les DSI
      • Analyse des Coûts et ROI des Projets IA
      • Stratégies d'Adoption de l'IA Open Source pour les DSI
      • Développement et Déploiement d'Applications IA Open Source
    • Edge computing
      • Développement de Solutions Edge Computing avec Open Source
      • Edge Computing pour l'IoT avec Open Source
      • Edge Computing et Conteneurisation avec Docker et Kubernetes Open Source
    • Industrie4.0
      • Parcours modulaire
      • Introduction à l'Industrie 4.0 et Sécurité Numérique
      • Architecte en Solutions IIoT et Cybersécurité Industrielle
      • Intelligence Artificielle, Cybersécurité et Digitalisation des Processus
      • Jumeau Numérique, Simulation et Sécurité
    • AIOPS(Disponible Juin 2025)
    • Cybersecurite
      • Cybersecurite industrielle
        • Parcours modulaire Cybersécurité industrielle
      • Cybersecurite-gouvernance
  • PARCOURS spécialisés de formations
    • Incident Management 360° : Stratégie, Résilience et Optimisation
    • Spécialisation Industrie 4.0
    • Cybersecurite
    • Expert en Virtualisation Open Source
Powered by GitBook
On this page
  1. Thématiques
  2. Cloud native

Polyglot Persistence dans les Applications Cloud Native

Objectif de la Formation :

Cette formation a pour objectif de former les participants à l'utilisation de plusieurs types de bases de données dans des applications cloud-native, un concept connu sous le nom de "Polyglot Persistence". Les participants apprendront à choisir la bonne base de données pour différents types de données, à intégrer et gérer ces bases de données dans des environnements cloud, et à optimiser les performances et la résilience des systèmes distribués polyglottes.

Public cible:

Prérequis:

Durée de la Formation :

5 jours (40 heures)


Jour 1 : Introduction à la Polyglot Persistence et aux Applications Cloud Native

1.1 Concepts de Base de la Polyglot Persistence

  • Théorie : Définition de la Polyglot Persistence, avantages et défis, exemples d'utilisation dans des systèmes cloud-native.

  • Pratique : Étude de cas sur des architectures cloud-native polyglottes (ex. Netflix, Uber), identification des besoins en types de bases de données.

1.2 Introduction aux Applications Cloud Native

  • Théorie : Principes des applications cloud-native (microservices, conteneurisation, déploiement continu), rôle des bases de données dans ces environnements.

  • Pratique : Déploiement d'une application cloud-native simple sur Kubernetes, configuration de bases de données pour chaque service.

1.3 Choisir la Bonne Base de Données

  • Théorie : Types de bases de données (relationnelles, NoSQL, graphes, colonnes, etc.), critères de sélection en fonction des besoins applicatifs (transactions, scalabilité, consistance, etc.).

  • Pratique : Analyse des besoins d'une application donnée et sélection des bases de données appropriées pour chaque service.


Jour 2 : Intégration et Gestion des Bases de Données Relationnelles et NoSQL

2.1 Bases de Données Relationnelles dans le Cloud

  • Théorie : Concepts avancés de bases de données relationnelles (ACID, transactions distribuées), déploiement et gestion dans le cloud (RDS, Cloud SQL, etc.).

  • Pratique : Déploiement d'une base de données relationnelle (ex. PostgreSQL) sur un service cloud, connexion et gestion via Kubernetes.

2.2 Introduction aux Bases de Données NoSQL

  • Théorie : Vue d'ensemble des bases de données NoSQL (Clés-valeurs, colonnes, documents, graphes), cas d'utilisation.

  • Pratique : Déploiement d'une base de données NoSQL (ex. MongoDB ou Cassandra) pour un microservice spécifique, intégration avec l'application cloud-native.

2.3 Gestion des Données dans des Environnements Polyglottes

  • Théorie : Stratégies de gestion des transactions dans des systèmes polyglottes, cohérence et réplication des données.

  • Pratique : Mise en place d'un mécanisme de synchronisation des données entre une base de données relationnelle et une base NoSQL, gestion des transactions dans un environnement polyglotte.


Jour 3 : Bases de Données Spécialisées : Graphes, Temps Réel, et Analyse

3.1 Introduction aux Bases de Données Graphe

  • Théorie : Concepts fondamentaux des bases de données graphe, cas d'utilisation (ex. recommandations, réseaux sociaux).

  • Pratique : Déploiement et utilisation d'une base de données graphe (ex. Neo4j) pour gérer les relations complexes dans une application.

3.2 Gestion des Données Temps Réel

  • Théorie : Bases de données optimisées pour le temps réel (ex. Redis, InfluxDB), traitement des flux de données.

  • Pratique : Intégration de Redis pour des caches ou des files d'attente temps réel, utilisation d'InfluxDB pour la collecte de métriques en temps réel.

3.3 Bases de Données pour l'Analyse de Données

  • Théorie : Stockage et traitement des données pour l'analyse (ex. entrepôts de données, bases de données colonnes comme Apache Cassandra, BigQuery).

  • Pratique : Configuration d'un entrepôt de données pour une analyse batch ou temps réel, extraction des données depuis différentes bases de données polyglottes.


Jour 4 : Optimisation des Performances et Sécurité dans des Environnements Polyglottes

4.1 Optimisation des Performances dans les Systèmes Polyglottes

  • Théorie : Stratégies pour optimiser les performances dans un environnement polyglotte (caching, sharding, indexation, etc.).

  • Pratique : Mise en œuvre de techniques d'optimisation sur les bases de données déployées, analyse des performances avant et après optimisation.

4.2 Sécurité des Données dans des Architectures Polyglottes

  • Théorie : Sécurisation des données dans un environnement polyglotte, gestion des accès, chiffrement, conformité (GDPR, HIPAA).

  • Pratique : Configuration de la sécurité pour chaque type de base de données utilisé, mise en place de politiques de gestion des accès et de chiffrement.

4.3 Gestion des Défaillances et de la Résilience

  • Théorie : Approches pour assurer la résilience des bases de données (backup, restauration, haute disponibilité).

  • Pratique : Mise en place de mécanismes de haute disponibilité et de reprise après sinistre pour les bases de données déployées, simulation de pannes et validation de la résilience.


Jour 5 : Gestion des Données à l'Échelle et Intégration Continue

5.1 Scalabilité des Bases de Données Polyglottes

  • Théorie : Concepts de scalabilité horizontale vs verticale, gestion des clusters de bases de données.

  • Pratique : Mise en œuvre de la scalabilité pour une base de données relationnelle et une base NoSQL, gestion de la montée en charge dans Kubernetes.

5.2 Intégration et Déploiement Continu (CI/CD)

  • Théorie : Automatisation des déploiements de bases de données, intégration des bases de données dans des pipelines CI/CD.

  • Pratique : Déploiement automatisé des bases de données via des scripts Terraform et CI/CD, gestion des migrations de bases de données en continu.

5.3 Projet de Fin de Formation : Mise en Place d'une Solution Polyglotte Complète

  • Pratique : Conception et déploiement d'une application cloud-native utilisant plusieurs types de bases de données, démonstration de la résilience, de la sécurité, et des performances.

  • Discussion : Présentation des résultats, revue des défis rencontrés et des solutions mises en œuvre.


Matériel Pédagogique et Outils Requis :

  • Environnement de développement : Accès à un cluster Kubernetes, outils de monitoring (Prometheus, Grafana), Docker.

  • Bases de données : PostgreSQL, MongoDB, Neo4j, Redis, InfluxDB, BigQuery (ou autres selon les besoins).

  • Outils de gestion de cloud : Terraform, Kubernetes Helm, CI/CD (Jenkins, GitLab CI, etc.).

Évaluation et Certification :

  • Évaluations : Tests pratiques à la fin de chaque journée, évaluation finale du projet de fin de formation.

  • Certification : Certificat de maîtrise en Polyglot Persistence dans les Applications Cloud Native, délivré après la réussite du projet final.

PreviousChaos Engineering et Résilience des ApplicationsNextDéveloppement d'Architectures Serverless Open Source

Last updated 8 months ago