Qu'est-ce qu'Apache Kafka ?

Apache Kafka est une plate-forme de streaming d'événements couramment utilisée pour collecter, traiter et stocker des flux continus de données d'événements ou des données qui n'ont pas précisément de début ni de fin. Kafka permet l'émergence de nouvelles applications distribuées capables d'évoluer pour gérer des milliards d'événements diffusés par minute.

Jusqu'à l'apparition de systèmes de streaming d'événements comme Apache Kafka et Google Cloud Pub/Sub, le traitement des données était le plus souvent géré par des tâches par lot périodiques, où les données brutes sont d'abord stockées, puis traitées à des intervalles arbitraires. Par exemple, une société de télécommunications pourrait attendre la fin de la journée, de la semaine ou du mois pour analyser les millions d'enregistrements d'appels et calculer les frais accumulés.

L'une des limitations du traitement par lot est qu'il ne se fait pas en temps réel. Or, les organisations veulent de plus en plus analyser les données en temps réel afin de pouvoir prendre des décisions commerciales éclairées et réagir dès qu'il se passe quelque chose d'intéressant. Par exemple, la société de télécommunications mentionnée précédemment pourrait avoir intérêt à tenir les clients informés des frais en temps réel afin d'améliorer l'expérience utilisateur globale.

C'est là que le streaming d'événements entre en jeu. Le streaming d'événements est le processus qui consiste à traiter des flux infinis d'événements au fur et à mesure qu'ils sont créés, afin de capturer la valeur temporelle des données et de créer des applications en mode Push qui entrent en action dès qu'il se passe quelque chose d'intéressant. Le streaming d'événements inclut, par exemple, l'analyse en continu des fichiers journaux générés par des applications Web destinées aux clients, la surveillance des comportements des utilisateurs qui visitent des sites Web d'e-commerce afin d'agir en conséquence, l'étude continue des sentiments des clients par l'analyse des changements au niveau des flux de clics générés par les réseaux sociaux, ou encore la collecte et la gestion des données de télémétrie provenant des appareils IoT (Internet des objets).

Découvrez Apache Kafka pour BigQuery, un service qui automatise les opérations et la sécurité de Kafka, et facilite l'insertion des données en flux continu dans BigQuery.

Découvrez Confluent Cloud, l'offre intégrée et entièrement gérée d'Apache Kafka sur Google Cloud.

Prêt à vous lancer ? Les nouveaux clients bénéficient de 300 $ de crédits à dépenser sur Google Cloud.

Présentation d'Apache Kafka

Kafka collecte les flux de données et enregistre exactement ce qui s'est passé et quand. Cet enregistrement porte le nom de journal de commit immuable. Il est immuable, car on peut y ajouter des données, mais pas le modifier. À partir de là, vous pouvez vous abonner au journal (accéder aux données) ou l'éditer (y ajouter des données) depuis un certain nombre d'applications de streaming en temps réel, ainsi que d'autres systèmes.

Par exemple, vous pouvez utiliser Kafka pour collecter tous les flux de données de transaction de votre site Web afin d'alimenter une application chargée de suivre les ventes de produits en temps réel et de les comparer aux quantités en stock pour permettre un réapprovisionnement juste-à-temps.

Quels sont les avantages de Kafka ?

Kafka est Open Source

Cela signifie que le code source est disponible gratuitement pour tous et qu'il peut être extrait, modifié et distribué sous une version propre et à toutes fins. Il n'y a aucuns frais de licence ni autres restrictions. Kafka compte également sur une communauté mondiale de développeurs qui collaborent à son amélioration. Kafka peut ainsi proposer toute une gamme de connecteurs, plug-ins, outils de surveillance et outils de configuration, fruits d'un écosystème en pleine croissance.

Évolutivité et rapidité

Non seulement Kafka s'adapte aux volumes croissants de données, mais il fournit également ces données en temps réel au sein de l'entreprise. Autre point positif important, Kafka est une plate-forme distribuée. En effet, le traitement est réparti sur plusieurs machines, (physiques ou virtuelles), ce qui présente deux avantages : d'une part, Kafka est capable, avec quelques ajustements, d'effectuer un scaling horizontal (pour ajouter des machines si une puissance de traitement supérieure ou un stockage supplémentaire sont nécessaires). Et d'autre part, il est fiable, car la plate-forme fonctionne en permanence, même si des machines tombent en panne. Cette fonctionnalité de Kafka peut toutefois s'avérer difficile à gérer à grande échelle.

Relevez vos plus grands défis avec Google Cloud

Les nouveaux clients bénéficient de 300 $ de crédits à dépenser sur Google Cloud.
Contactez un spécialiste des ventes Google Cloud pour discuter plus en détail de votre propre défi.

Kafka en tant que service géré

Malgré tous les avantages de Kafka, sa technologie est compliquée à déployer. Les clusters Kafka sur site sont difficiles à configurer, mettre à l'échelle et gérer en production. Lors de la mise en place de l'infrastructure sur site pour exécuter Kafka, vous devez provisionner les machines et configurer la plate-forme. Vous devez également concevoir le cluster de machines distribuées de manière à garantir la disponibilité, vous assurer que les données sont stockées et protégées, configurer la surveillance et effectuer correctement le scaling des données pour pouvoir gérer les variations de charge. Vous devez ensuite entretenir l'infrastructure, en remplaçant les machines qui tombent en panne et en appliquant régulièrement des correctifs et mises à jour.

Une autre approche consiste à utiliser Kafka en tant que service géré dans le cloud. Un fournisseur tiers se charge du provisionnement, de la mise en place et de la maintenance de l'infrastructure Kafka. Vous vous chargez simplement de créer et d'exécuter les applications. Le déploiement de Kafka s'en trouve simplifié, car vous n'avez pas à être un expert en gestion de l'infrastructure Kafka. Vous passez moins de temps à gérer l'infrastructure et plus à créer de la valeur pour votre entreprise.

Comment fonctionne Kafka ?

Kafka permet de traiter des événements en streaming à l'aide de cinq fonctions principales :

Publier

Une source de données peut publier ou placer un flux d'événements de données dans un ou plusieurs sujets Kafka, ou dans des regroupements d'événements de données similaires. Par exemple, vous pouvez collecter des flux de données provenant d'un appareil IoT (prenons l'exemple d'un routeur réseau) et les publier dans une application qui effectue une maintenance prédictive pour calculer quand le routeur risque de tomber en panne.

Utiliser

Une application peut s'abonner à/collecter des données d'un ou de plusieurs sujets Kafka et traiter le flux de données résultant. Par exemple, une application peut collecter des données à partir de flux de réseaux sociaux multiples et les analyser pour déterminer la teneur des conversations en ligne sur une marque.

Traiter

L'API Streams de Kafka peut jouer le rôle d'un processeur de flux qui utilise les flux de données entrants d'un ou de plusieurs sujets et produit un flux de données sortant vers un ou plusieurs sujets.

Connecter

Vous pouvez établir des connexions producteur ou consommateur réutilisables qui associent des sujets Kafka à des applications existantes. Il existe des centaines de connecteurs déjà disponibles, tels que des connecteurs vers des services clés comme Dataproc, BigQuery et bien d'autres encore.

Magasin

Apache Kafka fournit un stockage durable. Kafka peut jouer le rôle d'une "source fiable", car il est capable de distribuer les données sur des nœuds multiples pour un déploiement de haute disponibilité dans un centre de données unique ou dans plusieurs zones de disponibilité.

Passez à l'étape suivante

Profitez de 300 $ de crédits gratuits et de plus de 20 produits Always Free pour commencer à créer des applications sur Google Cloud.

Google Cloud
  • ‪English‬
  • ‪Deutsch‬
  • ‪Español‬
  • ‪Español (Latinoamérica)‬
  • ‪Français‬
  • ‪Indonesia‬
  • ‪Italiano‬
  • ‪Português (Brasil)‬
  • ‪简体中文‬
  • ‪繁體中文‬
  • ‪日本語‬
  • ‪한국어‬
Console
  • Faites des économies grâce à notre approche transparente concernant la tarification
  • Le paiement à l'usage de Google Cloud permet de réaliser des économies automatiques basées sur votre utilisation mensuelle et des tarifs réduits pour les ressources prépayées. Contactez-nous dès aujourd'hui afin d'obtenir un devis.
Google Cloud