Découvrez le streaming de données et Redpanda

Pour concevoir un pipeline de streaming,votre manager Sophie vous a mis à disposition l’outil idéal, Redpanda. Avant de foncer tête baissée dans l’utilisation de cet outil, vous décidez de prendre un peu de temps pour comprendre ce qu’est le streaming et découvrir les avantages de Redpanda. C’est parti !

Découvrez le streaming de données

Le streaming de données est une méthode de traitement des flux de données en temps réel ou quasi-temps réel. Contrairement au batch processing, qui collecte et traite les données en lots de façon périodique, le streaming permet d’analyser les données dès qu'elles arrivent. Cette méthode est utilisée pour des applications à faible latence, où des décisions doivent être prises instantanément. C’est notamment le cas des notifications en temps réel, des capteurs IoT ou des transactions financières. 

Comment les données communiquent-elles entre elles ?

Les producers (ou “producteurs” en français) envoient des événements vers des topics et les consumers (ou “consommateurs” en français) s'abonnent à ces topics pour les lire. Ce mécanisme, appelé modèle Publish/Subscribe ( ou “Pub/Sub”), permet aux systèmes de communiquer de façon découplée et évolutive. Redpanda se positionne comme une plateforme de streaming d'événements, offrant l'infrastructure indispensable pour diffuser des données en temps réel.

Un utilisateur passe une commande, un événement est publié dans le topic 'order_placed'. Différents consommateurs, comme un processeur de commande, une application analytique et un moteur de recommandation, réagissent en temps réel.
Le fonctionnement du streaming

Dans une application de commerce électronique, par exemple, un producteur peut publier des événements liés aux commandes passées dans un topic nommé "order_placed", par exemple. Les consommateurs, comme les services de gestion des paiements ou des stocks, s'abonnent à ce topic pour traiter ces événements. Cela permet de valider un paiement ou de mettre à jour les niveaux de stock en temps réel.

Temps estimé pour suivre cette ressource : 1 heure 

Après vous être inscrit sur Redpanda Academy, suivez le Chapitre 1 du cours Streaming fundamentals (“Lesson 1 Event Streaming Basics”, “Lesson 2 Communication Patterns” et “Lesson 3 Landscape of Streaming Data Platforms”) et découvrez les fondamentaux du streaming d'événements et pourquoi cette méthode est essentielle dans le contexte des architectures modernes. Ce chapitre est une ressource bonus et vise principalement à approfondir vos connaissances sur les points suivants :

  • Streaming d’événements et la différence avec le traitement par lots (batch processing).

  • Définition des concepts clés du streaming : Event Streaming, Topics, Partitions, Producers, Consumers.

  • Exemples d'applications du streaming : IoT, transactions financières et réseaux sociaux.

  • Utilisation du modèle Pub/Sub pour faciliter la communication et le découplage des systèmes.

  • Importance de traiter les données en temps réel et la gestion de l’historique des événements avec Redpanda.

Comprenez les avantages de Redpanda

Contrairement à des systèmes traditionnels de gestion de données, Redpanda est spécifiquement conçu pour gérer des flux de données en continu, permettant un traitement en temps réel des événements générés dans vos systèmes. Son concurrent direct, Apache Kafka est l'une des solutions les plus populaires pour le streaming d'événements. Il utilise une architecture distribuée pour gérer les flux de données en temps réel, offrant une grande scalabilité et une résilience pour des volumes élevés de données. Cependant, Kafka présente quelques limitations en termes de gestion et de performance, notamment en raison de sa dépendance à ZooKeeper (service de gestion centralisée des configurations et de coordination de tâches pour les applications distribuées) et de sa complexité opérationnelle. Redpanda a donc été conçu comme une alternative plus performante et simplifiée tout en conservant la compatibilité avec l'API Kafka. Cela permet une intégration facile dans des environnements existants qui utilisent Kafka.

Voici la liste des principaux avantages de Redpanda :

Redpanda offre une solution open source performante, avec une architecture simplifiée, une compatibilité avec l'API Kafka et une sécurisation avancée des données.
Les avantages clés de Redpanda

Avantage 

Description

Open source et gratuit

Redpanda est une solution open source, gratuite et conçue pour être utilisée à la fois dans des environnements on-premise (installés sur votre propre serveur) et dans des environnements cloud.

Haute performance

  • Redpanda est écrit en C++ et optimise les écritures et lectures pour offrir des performances exceptionnelles.

  • Il est conçu pour être plus rapide que Kafka, avec des latences de queue réduites et des transactions utilisant Kafka API jusqu’à six fois plus rapides.

Architecture simplifiée

  • Contrairement à Kafka, Redpanda ne nécessite pas de JVM (Java Virtual Machine ou machine virtuelle Java) ou ZooKeeper, ce qui simplifie grandement la configuration et l’administration.

  • Redpanda fonctionne avec une seule binaire (exécutable), ce qui rend son déploiement beaucoup plus simple. L’article Exploring the benefits of single-binary architecture explique ce concept.

Compatibilité Kafka API

Redpanda utilise une Kafka API, ce qui permet d’intégrer facilement les outils et les systèmes qui sont déjà compatibles avec Kafka, mais avec une gestion simplifiée et une meilleure performance.

Sécurisation des données de bout en bout

Redpanda utilise un système de réplication et de partitionnement des données pour garantir une haute disponibilité et la résilience face aux pannes.

Outre Kafka et Redpanda, plusieurs autres solutions de streaming et de communication Pub/Sub existent, notamment dans les environnements cloud :

  • AWS : Amazon Kinesis est le service de streaming d'événements d'Amazon, qui permet de traiter en temps réel de grandes quantités de données.

  • Google Cloud Platform (GCP) : Google Cloud Pub/Sub est une solution de messagerie asynchrone qui permet de connecter des systèmes à l'échelle. 

  • Azure : Azure Service Bus est une solution de gestion des messages pour l'orchestration d'événements.

Temps estimé pour suivre cette ressource : 1 heure

Suivez le Chapitre 2 du cours Streaming fundamentals sur Redpanda Academy (“Lesson 1 Core Concepts”, “Lesson 2 Event Storage”, “Lesson 3 Feature and Operational Characteristics”) et explorez plus en détail l'architecture de Redpanda et les concepts associés. Ce chapitre est une ressource bonus et vise principalement à approfondir vos connaissances sur les points suivants :

  • Vue d'ensemble de l'architecture de Redpanda, y compris les brokers, les topics et les partitions.

  • Les partitions et leur rôle dans la gestion de la scalabilité des données.

  • Les producteurs et consommateurs de données et comment ils interagissent avec Redpanda.

  • Le système de réplication de Redpanda pour garantir la disponibilité et la résilience des données.

En résumé

  • Le streaming de données permet de traiter et analyser les flux en temps réel, contrairement au traitement par lots qui fonctionne de manière périodique.

  • Le modèle Publish/Subscribe (Pub/Sub) repose sur des producteurs qui publient des événements dans des topics et des consommateurs qui s’y abonnent pour les traiter.

  • Redpanda est une plateforme de streaming d’événements qui offre une alternative plus performante et simplifiée que Kafka, tout en restant compatible avec son API.

  • Grâce à son architecture sans dépendance à ZooKeeper et sans nécessité d’une JVM, Redpanda simplifie l’administration et le déploiement des systèmes de streaming.

Maintenant que nous avons découvert les avantages de Redpanda, il est temps de passer à l'installation.

Ever considered an OpenClassrooms diploma?
  • Up to 100% of your training program funded
  • Flexible start date
  • Career-focused projects
  • Individual mentoring
Find the training program and funding option that suits you best