Développez l'apprentissage automatique prédictif avec Flink | Atelier du 18 déc. | S'inscrire

TRAITEMENT DES DONNÉES DE STREAMING

Guide d’introduction au streaming de données

Également appelé traitement de flux ou streaming événementiel, le streaming de données désigne le flux continu de données au fur et à mesure qu’elles sont générées, ce qui permet de les traiter et de les analyser en temps réel afin d'en extraire des informations immédiates. Aujourd’hui, les plateformes de streaming de données en temps réel telles que Confluent sont utilisées dans de nombreux domaines : jeux multijoueurs, détection de la fraude en temps réel, réseaux sociaux, plateformes boursières, suivi GPS, etc.

Familiarisez-vous avec le fonctionnement du streaming de données et découvrez les cas d’utilisation les plus courants ainsi que des exemples concrets, et apprenez à intégrer cette technologie dans n’importe quelle infrastructure, quelle que soit la source de données.

streaming data - hero icon

Introduction au streaming de données

Qu’est-ce que le streaming de données ?

Également appelé traitement des flux d’événements, le streaming de données se base sur un flux continu de données générées par différentes sources. Grâce à une technologie de traitement dynamique, les flux de données peuvent être traités, stockés, analysés et exploités en temps réel au fur et à mesure qu’ils sont générés.

Que signifie « diffusion en continu » ?

L'expression « diffusion en continu » est utilisée pour décrire les flux de données continus et incessants qui n'ont ni début, ni fin, alimentant un afflux de données constant qu'on peut utiliser ou sur lesquelles il est possible d'agir sans avoir besoin de les télécharger au préalable.

De la même manière, les flux de données sont générés par tous types de sources, dans divers formats et volumes. Des applications, équipements réseau et fichiers journaux de serveurs à l'activité des sites Internet en passant par les transactions bancaires et les données de localisation, tous ces éléments peuvent être regroupés de sorte à rassembler facilement des renseignements et analyses en temps réel à partir d'une seule source d'informations.

Comment fonctionne le streaming de données

Page de glossaire SEO – Illustration streaming de données

Auparavant, les infrastructures héritées étaient mieux structurées, car il n'existait qu'un nombre limité de sources de données. Il était alors facile de concevoir un système capable de spécifier et d'unifier les données et les structures de données. L'avènement des systèmes de traitement de flux a changé la donne, et nous avons dû revoir totalement notre façon de traiter les données afin de répondre aux nouvelles exigences des systèmes modernes.

Présentation du traitement des données diffusées en continu

Les données d'aujourd'hui sont alimentées par une quantité illimitée de sources (capteurs d'IdO, serveurs, journaux de sécurité, applications ou systèmes internes/externes). Il est quasiment impossible de réguler la structure et l'intégrité des données générées, ou de contrôler leur volume ou vitesse.

Si les solutions traditionnelles sont conçues pour ingérer, traiter et structurer les données avant qu'il ne soit possible d'agir dessus, l'architecture des données diffusées en continu permet en plus de consommer les données en mouvement, d'assurer leur stockage persistent, de les enrichir et de les analyser.

De fait, deux principales fonctions seront toujours attendues des applications travaillant avec des flux de données : le stockage et le traitement. Le stockage doit permettre d'enregistrer de grandes quantités de données de façon ordonnée et cohérente. Le traitement doit pouvoir interagir avec le stockage, consommer les données, les analyser et les calculer.

Tout ceci amène son lot de défis et de facteurs à prendre en compte lors de l'utilisation de bases de données ou systèmes hérités. Des outils et plateformes en grand nombre sont maintenant disponibles pour aider les entreprises à concevoir des applications de données diffusées en continu.

Exemples

Il existe des cas d'usage des données de streaming dans chaque secteur d'activité : trading d'actions en temps réel, gestion instantanée des stocks dans la vente au détail, flux de médias sociaux, jeux multijoueurs ou encore applications VTC.

Par exemple, lorsqu'un passager utilise Lyft, des flux de données en temps réel se rejoignent pour créer une expérience utilisateur fluide. Grâce à ces données, l'application rassemble les informations de localisation, les statistiques et les données de circulation en temps réel, ainsi que les tarifs, pour proposer au client le meilleur chauffeur possible. Elle calcule également le prix de la course et estime le temps nécessaire pour arriver à destination en fonction des données en temps réel et historiques.

En ce sens, les données de streaming constituent un élément essentiel pour toute entreprise axée sur les données, car elles permettent l'ingestion, l'intégration et l'analyse en temps réel du big data.

Traitement par lots ou flux en temps réel

Avec les traitements par lots, les données doivent être téléchargées par paquets avant de pouvoir être exploitées. À l'inverse, les données de streaming permettent un traitement, un stockage et une analyse simultanés et en temps réel.

Face à la complexité des exigences modernes, le traitement des données par lots est devenu insuffisant pour la plupart des cas d'usage, car il ne peut traiter les données que sous la forme de groupes de transactions collectées au fil du temps. Les entreprises modernes doivent pouvoir réagir à leurs données en temps réel, à la milliseconde près, avant que celles-ci ne deviennent obsolètes. La possibilité d'accéder aux données en temps réel présente de nombreux avantages et cas d'usage.

Cas d'usage du streaming

Les cas d'usage du streaming événementiel sont nombreux. Parce qu'il se rapproche de la façon dont les choses fonctionnent dans le monde réel, presque tous les processus métier sont mieux représentés avec le streaming événementiel qu'ils ne le seraient avec les traitements par lots. Un avantage qui est particulièrement évident dans certains domaines tels que l'analyse prédictive, le machine learning, l'IA générative, la détection de la fraude, et bien plus encore.

Le streaming événementiel est utilisé dans un grand nombre d'applications, notamment les médias en continu, le retail omnicanal, le covoiturage, etc.

Par exemple, lorsqu'un usager fait appel à Lyft, l'application sait non seulement quel chauffeur lui proposer, mais aussi combien de temps la course prendra grâce à la localisation et à l'historique des données de trafic. Elle peut également déterminer le coût de la course en fonction des données en temps réel et historiques.

Cas d'usage typiques :

  • Données de localisation

– Détection de la fraude – Trading d'actions en temps réel – Marketing, commerce et analyses des données en entreprise – Activité des clients/utilisateurs – Surveillance des systèmes informatiques internes et élaboration de rapports – Suivi de logs : dépannage des systèmes, des serveurs, des appareils, etc. – SIEM (gestion des événements et des informations de sécurité) : analyse en temps réel des fichiers logs et des données événementielles à des fins de suivi, de mesure et de détection des menaces – Gestion des stocks de la vente au détail/des entrepôts : gestion des stocks sur tous les canaux et pour tous les emplacements, et fourniture d'une expérience utilisateur fluide d'un appareil à l'autre – Mise en correspondance des VTC : combiner les données relative à la localisation, à l'utilisateur et au tarif à des fins d'analyse prédictive – Associer les usagers aux meilleurs chauffeurs (selon des critères comme la proximité, la destination, le tarif et le délai d'attente) – Apprentissage automatique et IA : la combinaison de données historiques et actuelles au sein d'un système centralisé ouvre de nouvelles perspectives pour l'analyse prédictive – Analyse prédictive

Difficultés liées à la conception d'applications de flux de données

Principales difficultés liées à la conception d'applications de données en temps réel

Évolutivité : lorsque des erreurs système se produisent, le volume des données de journalisation provenant de chaque appareil peut croître, leur taux d'envoi passant d'un certain nombre de kilobits par seconde à des mégabits par seconde, puis à des gigabits par seconde après agrégation des données. L'ajout de davantage de capacité, de ressources et de serveurs au fil de l'évolution des applications est instantané, ce qui augmente de façon exponentielle la quantité de données brutes générées. Lorsqu'on travaille avec des données diffusées en continu, concevoir des applications présentant une dimension évolutive est primordial.

Ordre : déterminer l'ordre des données dans le flux n'a rien de futile, et c'est au contraire très important dans de nombreuses applications. Un chat ou un échange n'auraient pas de sens s'ils n'étaient pas ordonnés. Lorsque les développeurs résolvent un bug en consultant une vue agrégée des données de journalisation, il est essentiel que chaque ligne soit dans le bon ordre. L'ordre des paquets de données générés diffère souvent de l'ordre dans lequel ils atteignent leur destination. Des divergences apparaissent aussi au niveau de l'horodatage et des horloges des appareils qui génèrent des données. Lors de l'analyse des flux de données, les applications doivent être conscientes de leurs hypothèses concernant les propriétés ACID des transactions.

Cohérence et durabilité : l'accès aux données et leur cohérence constituent toujours un problème complexe dans le cadre du traitement des flux de données. Les données lues à un instant T pourraient avoir déjà été modifiées et être devenues obsolètes dans un autre centre de données situé ailleurs dans le monde. La durabilité des données représente également un défi lorsqu'on travaille avec des flux de données sur le cloud.

Tolérance aux pannes et garanties autour des données : ce sont des aspects qu'il est important de prendre en compte lorsqu'on travaille avec les données, le traitement des flux ou tous types de systèmes distribués. Les données provenant d'un grand nombre de sources et d'emplacements, dans des formats et des volumes variés, votre système peut-il empêcher les interruptions à partir d'un point de défaillance unique ? Peut-il stocker les flux de données présentant une disponibilité et une durabilité élevées ?

Pourquoi choisir Confluent ?

Pour réussir dans le contexte actuel, résolument axé sur le numérique, les entreprises doivent offrir des expériences client de premier ordre et assurer l'efficacité de leurs opérations back-end.

En combinant des données en temps réel et des données historiques au sein d'une source d'informations centrale, Confluent permet de réagir au flux continu de données (qui évolue en permanence), d'y répondre et de s'y adapter en temps réel et en toute simplicité. Conçue par les créateurs d'Apache Kafka, Confluent permet de concevoir une nouvelle catégorie d'applications modernes axées sur les événements, de tirer profit d'un pipeline de données universel et d'accéder à de nouveaux cas d'usage avec une évolutivité, une sécurité et des performances de niveau professionnel.

Adoptée par Walmart, Expedia et Bank of America, Confluent est aujourd'hui la seule plateforme complète de données de streaming conçue pour streamer des données dans n'importe quel cloud et à n'importe quelle échelle.

Lancez-vous gratuitement en quelques minutes.

Des technologies comme Apache Kafka et Confluent rendent la diffusion et l'analyse en temps réel possibles.

En intégrant les données en temps réel et historiques dans une même source d'informations centrale, Confluent permet de concevoir facilement une catégorie entièrement nouvelle d'applications modernes axées sur les événements, d'obtenir un pipeline de données universel et d'accéder à des cas d'utilisation basés sur les données avec une évolutivité, une performance et une fiabilité complètes.

Pourquoi Confluent ?

Vente au détail, logistique, fabrication, services financiers ou encore réseaux sociaux : Confluent permet à tous ces secteurs d'activité de se concentrer sur la valeur commerciale inhérente à leurs données plutôt que de se préoccuper de la façon dont elles sont transférées, déplacées, échangées et triées entre divers systèmes.

Adopté par Walmart, Expedia et Bank of America, Confluent est aujourd'hui le seul logiciel complet de données diffusées en continu conçu pour diffuser les données depuis tous types de sources et à n'importe quelle échelle. Conçue par les créateurs d'Apache Kafka, cette plateforme de données diffusées en continu est aujourd'hui la plus performante qui existe. Elle est non seulement capable de gérer des données de type big data, mais aussi d'effectuer un traitement en temps réel, une intégration globale des données et une analyse au sein des flux.

Découvrez comment vous lancer en quelques minutes avec un essai gratuit ou voyez comment Confluent met à la disposition des entreprises des données en temps réel.