DéveloppeurWeb.Com
    DéveloppeurWeb.Com
    • Agile Zone
    • AI Zone
    • Cloud Zone
    • Database Zone
    • DevOps Zone
    • Integration Zone
    • Web Dev Zone
    DéveloppeurWeb.Com
    Home»Uncategorized»Comprendre le fonctionnement du traitement de flux
    Uncategorized

    Comprendre le fonctionnement du traitement de flux

    mars 8, 2023
    Comprendre le fonctionnement du traitement de flux
    Share
    Facebook Twitter Pinterest Reddit WhatsApp Email

    Avec l’évolution numérique constante, les sources de données en continu augmentent, telles que l’IoT, les appareils en réseau, les activités en ligne de toutes sortes, les fichiers journaux du serveur, etc. Et avec chaque industrie devenant dépendante de ces données pour débloquer des informations commerciales basées sur les données, les systèmes de traitement en continu alimentent tout, de la détection des fraudes en temps réel, des plates-formes de négociation d’actions et de l’analyse des sentiments des flux de médias sociaux aux jeux multijoueurs et au suivi GPS.

    Cependant, les données en continu sont générées à des vitesses très élevées par de nombreuses sources de données. Ainsi, il peut être difficile de créer des solutions de traitement de flux robustes. Cet article décrit le fonctionnement du traitement de flux et les éléments de base de son architecture.

    Qu’est-ce que le traitement de flux ?

    Le traitement de flux est une technologie de gestion de données qui traite les données à la volée. Cela implique d’ingérer un flux continu de données entrantes et de les traiter/transformer à mesure qu’elles arrivent. Une fois traités, les résultats sont livrés à une destination pour une action immédiate et/ou stockés pour une utilisation ultérieure.

    Comment ça marche?

    Avant d’approfondir le fonctionnement du traitement de flux, examinons quelques termes standard de traitement de flux, notamment :

    • Les données générées en continu sont appelées données en continu, qui arrivent généralement à des vitesses élevées, en volumes élevés et sans limite (un ensemble de données dont la taille est théoriquement infinie).

    • Les événements font référence à un certain nombre d’éléments dans un système numérique, tels que les mesures d’application, les activités des utilisateurs sur un site Web, les transactions financières ou les données de capteurs IoT.

    • Dans une application de traitement de flux typique, les événements et les données sont générés par un ou plusieurs éditeurs/sources (également appelés producteurs). Les données sont ensuite enrichies, testées et transformées si nécessaire.

    • Enfin, le système envoie les données à un abonné/puits (également appelé consommateur). Les éditeurs et les abonnés sont également communément appelés pub/sub. Les sources et les puits courants incluent Apache Kafka et les référentiels de Big Data comme Hadoop.

    Remarque : Il est essentiel de noter que le traitement de flux signifie la notion d’analyse en temps réel, mais en termes relatifs. Le « temps réel » pourrait signifier des millionièmes de seconde pour une application algorithmique de négociation d’actions, des milliardièmes de seconde pour un chercheur en physique ou cinq minutes pour une application d’analyse météorologique.

    Cette notion indique comment un moteur de traitement de flux regroupe des groupes de données pour différentes applications. Il organise les événements de données arrivant par lots courts pour les présenter à d’autres applications sous forme de flux continu. Ainsi, cela simplifie également la logique pour les développeurs qui combinent et recombinent des données provenant de différentes sources à différentes échelles de temps.

    Composants d’une architecture de traitement de flux

    Un système de traitement de flux est un cadre de composants logiciels qui fournit une solution pour gérer la plupart des cas d’utilisation, sinon tous. Donc, d’un point de vue architectural, la construction d’un tel système peut être un processus complexe.

    Quels sont donc les éléments constitutifs d’une architecture de streaming ? Ci-dessous, nous discuterons et examinerons où et comment chaque bloc de construction ou type de composant s’intègre dans l’architecture globale.

    1. Processeur de flux ou courtier de messages pour collecter des données et les redistribuer

    Les processeurs de flux ou les courtiers de messages utilisent l’API pour récupérer les données des producteurs/sources. Le processeur convertit les données dans un format de messagerie standard et transmet la sortie en continu aux consommateurs.

    Il collecte des flux de données provenant de diverses sources, telles que les réseaux de médias sociaux, les flux de clics, les activités des joueurs dans le jeu, les achats en ligne, etc. De plus, les données peuvent arriver dans différents formats (formats non structurés ou semi-structurés, tels que JSON).

    La première génération de courtiers de messages (comme Apache ActiveMQ et RabbitMQ) reposait sur le paradigme MOM (Message Oriented Middleware). Mais plus tard, des plates-formes de messagerie hyper-performantes appelées processeurs de flux ont émergé et se sont avérées plus adaptées à un paradigme de streaming. Les outils de traitement de flux les plus populaires aujourd’hui sont Apache Kafka, Azure Event Hub, Amazon Kinesis Data Streams et Google Cloud PubSub.

    2. Outils de traitement de flux et de transformation de données (ETL, ELT, etc.) pour préparer les données pour l’interrogation

    Une fois que l’agent de messages a déposé des données, des outils de traitement de flux ou de transformation de données, transformez, agrégez et structurez les données pour vous assurer qu’elles sont prêtes pour l’analyse. Les transformations peuvent inclure la normalisation, le mappage des champs pertinents aux colonnes, le compactage, l’enrichissement (combinaison de points de données avec d’autres sources de données pour créer plus de contexte et de sens), le partitionnement, etc. Le résultat peut être une action, une alerte, un appel d’API, une visualisation ou (dans certains cas) un nouveau flux de données.

    3. Analyses et moteurs de requête pour extraire la valeur commerciale

    Dès que les données sont préparées pour la consommation, elles sont analysées pour libérer de la valeur. Il existe différentes approches de l’analyse des données en continu, selon le cas d’utilisation. Quelques exemples d’outils et de techniques incluent les moteurs de requête (Amazon Athena, Amazon Redshift), les moteurs de recherche de texte (Elasticsearch), etc.

    De plus, les données traitées sont souvent écrites dans des magasins de données analytiques, où elles sont optimisées pour la visualisation et l’analyse. Ou il est ingéré directement dans la couche d’analyse et de rapport pour l’analyse, la BI (intelligence d’affaires) et la visualisation du tableau de bord en temps réel.

    4. Stockage des données

    Il peut inclure un stockage rentable (stockage de fichiers et d’objets) pour les volumes élevés et la nature multi-structurée des données en continu. Ou les magasins de données sont également utilisés pour stocker les données de sortie après traitement pour une utilisation ultérieure ultérieure.

    Par exemple, si vous stockez vos données de streaming sur Snowflake, cela vous permet également d’effectuer des analyses en temps réel avec des tableaux de bord et des outils de BI. Ces magasins de données peuvent également servir de points d’intégration flexibles, car des outils extérieurs à l’écosystème de streaming peuvent accéder aux données. De plus, avec l’avènement des technologies de stockage à faible coût telles qu’Amazon S3, la plupart des organisations stockent aujourd’hui leurs données d’événements de streaming ou les archivent.

    Traitement de flux sans état ou avec état

    Le traitement de flux peut être avec ou sans état. Dans le traitement de flux sans état, les données/événements actuels sont traités indépendamment des précédents. Les données sont évaluées au fur et à mesure qu’elles arrivent sans tenir compte de l’état ou des connaissances antérieurs.

    Au contraire, le traitement de flux avec état concerne l’état général des données. Cela signifie que les événements passés et actuels partagent un état. Ainsi, le contexte des événements précédents aide à façonner le traitement des événements actuels.

    Par exemple, le traitement sans état s’applique lorsque vous avez besoin d’une alimentation en temps réel de la température d’une machine industrielle sans vous soucier de son évolution. Mais un système de traitement de flux avec état est idéal si vous souhaitez prévoir la température future en fonction de son évolution au fil du temps.

    Conclusion

    Il peut être difficile de créer un système de traitement de flux rapide, évolutif, sécurisé et fiable. De plus, de nombreux outils et services gérés modernes et flexibles sont disponibles sur le marché aujourd’hui. Nous espérons que cet article vous a aidé à comprendre les composants essentiels et les considérations pour choisir les bonnes technologies afin de développer un moteur de traitement de flux efficace.

    Share. Facebook Twitter Pinterest LinkedIn WhatsApp Reddit Email
    Add A Comment

    Leave A Reply Cancel Reply

    Catégories

    • Politique de cookies
    • Politique de confidentialité
    • CONTACT
    • Politique du DMCA
    • CONDITIONS D’UTILISATION
    • Avertissement
    © 2023 DéveloppeurWeb.Com.

    Type above and press Enter to search. Press Esc to cancel.