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»Architecte de moteur d’analyse de données pour votre entreprise à l’aide d’AWS et sans serveur
    Uncategorized

    Architecte de moteur d’analyse de données pour votre entreprise à l’aide d’AWS et sans serveur

    février 17, 2023
    Architecte de moteur d'analyse de données pour votre entreprise à l'aide d'AWS et sans serveur
    Share
    Facebook Twitter Pinterest Reddit WhatsApp Email

    Cet article a été rédigé par AWS Sr. Developer Advocate, Wojciech Gawronski, et publié avec autorisation.

    Selon les estimations, d’ici 2030, les humains généreront un océan de données pouvant atteindre 572 zettaoctets, ce qui équivaut à 572 millions de pétaoctets. Cela pose la question suivante : comment préparer les infrastructures informatiques à cela sans gonfler les coûts d’infrastructure et passer des heures en maintenance ? Deuxièmement, comment les organisations peuvent-elles commencer à produire des informations à partir des informations recueillies sans se soucier de la planification des capacités, de l’infrastructure et des complexités opérationnelles ? L’une des réponses consiste à utiliser l’analyse de données sans serveur dans le cloud AWS.

    Un exercice pratique est disponible dans l’atelier « L’avenir sans serveur de l’analyse de données cloud », tandis que cet article montre l’approche de la conception architecturale que vous pouvez utiliser dans votre organisation pour démarrer le parcours des données et obtenir rapidement des résultats.

    Commencez à partir d’une analyse de rentabilisation

    Imaginez que vous faites partie de l’équipe technique qui pilote la croissance de la startup Serverlesspresso. C’est une entreprise qui a créé un moyen interactif et innovant de livrer du café lors d’événements informatiques (en fait, il a été introduit lors d’AWS re:Invent 2021). Les développeurs sont bien connus pour leur soif de caféine, et la taille du marché croît remarquablement. Pour refléter la dynamique élevée de la plate-forme commerciale, elle a été construite à l’aide de services purement sans serveur d’AWS.

    Les avantages d’une telle approche, entre autres, sont :

    • Capacité à réduire à 0 entre les événements informatiques, limitant les coûts et les efforts de maintenance requis
    • Aucune infrastructure à gérer – uniquement la configuration
    • Architecture évolutive appliquée, permettant une évolutivité rapide de la plate-forme avec de nouvelles fonctionnalités

    C’est formidable, mais comme indiqué dans l’introduction, qu’en est-il des données ? Pour faire croître l’entreprise, vous devrez à un moment donné mettre en œuvre une stratégie de données. Un moteur qui sera capable non seulement de produire des informations commerciales tangibles et exploitables, mais qui sera également une solution pour conserver des informations historiques sur les événements informatiques, collecter de nouvelles données, s’adapter dynamiquement au trafic actuel et fournir un moyen automatisé de pré-traitement. et analyser les informations.

    Décomposez-le en petits puzzles

    Connaissant le contexte métier, vous devez aborder la phase de conception, qui conduira à la mise en œuvre. L’acte d’architecturer des solutions est un processus : un processus qui se concentre sur la prise des meilleures décisions possibles pour répondre aux attentes de l’entreprise avec la technologie. Pour rendre le processus efficace et moins complexe, il vaut la peine de diviser le moteur d’analyse de données en plus petits morceaux. Il y a quelques énigmes que vous devez résoudre.

    L'avenir sans serveur de l'analyse de données cloud

    Regardez le schéma ci-dessus. Sur la gauche, vous pouvez voir l’implémentation existante – un système qui génère des événements liés aux commandes, à la préparation et à la distribution de café. Sur le côté, vous avez collecté des données historiques, qui sont stockées dans Amazon S3. La nouvelle partie que vous devez concevoir et mettre en œuvre se trouve à droite. À l’intérieur, vous pouvez rapidement repérer 4 points d’interrogation, qui sont :

    • Collecte de données – Comment acquérir efficacement les données à partir de diverses sources de données ? Où les enregistrez-vous ?
    • Transformation des données – Comment combinez-vous les informations entrantes provenant de diverses sources, dans divers formats en un seul schéma commun ? Comment enrichir les données pour augmenter leur qualité et leur utilisabilité ?
    • L’analyse des données – Les collectes de données sont-elles explicites ? Comment construire de nouveaux agrégats qui créeront de nouvelles perspectives et mettront plus de lumière sur les tendances ou accéléreront la génération de rapports ?
    • Visualisation de données – Quelle est la meilleure façon de présenter ? Quel type de données doit être suivi en temps réel par rapport aux données entrant dans les rapports d’activité du mois dernier ?

    Les questions ci-dessus ne sont que des exemples pour vous aider à concevoir la meilleure solution possible. Une grande chose qui reste de côté est : quel stockage de données devriez-vous utiliser ? Doit-il s’agir d’un lac de données, d’un entrepôt de données, d’une base de données standard ou de NoSQL ?

    Construire un cadre

    Lors de la conception de solutions de données modernes qui doivent fonctionner à grande échelle, alimentant différents domaines commerciaux et technologiques, il convient de penser aux lacs de données. En bref, un lac de données est un emplacement central où vous pouvez stocker des données provenant de n’importe quel nombre de canaux, de n’importe quelle taille et de n’importe quel format. La différence par rapport aux entrepôts de données est le manque de nécessité pour la planification des schémas, ainsi que pour les relations des données. Cette approche lâche sans schéma introduit de la flexibilité.

    Vous souvenez-vous des étapes que nous devons concevoir dans les solutions d’analyse de données ? Il est recommandé de créer quelques couches de données qui ont des responsabilités nommées et gèrent certaines étapes du traitement des données. Par exemple:

    • Étape de collecte de données – Cela téléchargera les données d’origine inchangées dans la couche brute à l’intérieur du lac de données. Il offrira deux avantages principaux : un meilleur contrôle de la qualité des données grâce à la séparation, ainsi que la possibilité de paralléliser le traitement des données pour alimenter différentes parties de l’organisation avec une variété de données.
    • Étape de transformation des données – Il s’agit d’un processus à sens unique qui démarre à partir d’une couche brute du lac de données et peut effectuer plusieurs opérations : nettoyage, déduplication, enrichissement, jointures, etc. La sortie de l’opération doit être chargée dans une couche nettoyée ou enrichie du lac de données. lac de données. Il s’agit de la source centrale d’informations pour le reste de la plate-forme et d’autres systèmes.
    • Étape d’analyse et de visualisation des données – Selon la technologie et le type d’analyse, nous pouvons décider d’enrichir davantage les données et de les charger dans un entrepôt de données, une base de données relationnelle ou un outil externe. Le point d’entrée est toujours à partir de la couche enrichie du lac de données. La destination finale dépend du cas d’utilisation.

    Une fois que vous avez défini clairement la stratégie de données, y compris les étapes de traitement, les droits d’accès pour les personnes et les applications, les étapes de transformation, la communication et les flux de données, vous êtes prêt à mettre en œuvre la solution réelle.

    L’acquisition des données

    Dans la première étape, vous devez capturer les événements de café entrants au fur et à mesure qu’ils apparaissent et les enregistrer dans une couche brute à l’intérieur du lac de données. Pour accélérer la configuration, vous pouvez utiliser le service Amazon MSK Serverless. Il a été conçu pour faciliter l’exécution d’Apache Kafka. MSK Serverless provisionne et adapte automatiquement les ressources de calcul et de stockage, afin que vous puissiez l’utiliser à la demande et payer pour les données que vous diffusez et conservez.

    Module 1 : Architecture de haut niveau de Serverlesspro Data Analytics - acquisition de données

    Pour mettre en œuvre un processus entièrement automatisé qui capturera les événements de votre système en temps quasi réel, puis les enregistrera dans le lac de données, vous devez configurer Kafka Connect. Vous pouvez imaginer un connecteur comme un agent qui travaille en votre nom, sachant comment se connecter aux producteurs de données (votre système) et envoyer des données aux sujets Kafka. À l’autre extrémité du sujet (canal de données) se trouve un autre connecteur (agent) sachant comment communiquer avec Amazon S3 – qui est la base de notre lac de données en couches.

    Vous disposez de 3 méthodes principales pour configurer les connecteurs et les connecter au cluster sans serveur Amazon MSK existant :

    1. Exécutez les connecteurs Kafka Connect via AWS Fargate service – Vous pouvez envoyer des connecteurs conteneurisés au référentiel de conteneurs et l’exécuter à l’aide de la solution sans serveur. Ce sera une solution à la fois opérationnelle et rentable.
    2. Exécutez les connecteurs Kafka Connect via Connexion Amazon MSK – Il s’agit d’une approche native et d’une configuration pilotée par un assistant. Il est sans serveur, géré et simple. Vous pouvez décharger tous les travaux lourds d’exploitation et d’infrastructure sur AWS.
    3. Exécutez les connecteurs Kafka Connect via un conteneur sur une infrastructure gérée par vous – Cela peut être une approche décente pour les tests et l’apprentissage, mais elle n’est pas durable pour les cas d’utilisation en production. L’acquisition des événements s’arrêtera si votre instance se termine.

    Transformation des données

    Lorsque l’acquisition de données fonctionne et capture des événements de café en temps quasi réel, vous devez examiner les informations qu’elles contiennent. Comprendre la qualité des données, les corrélations et l’enrichissement possible est un élément crucial de la conception de la partie transformation des données de votre moteur de données.

    Imaginez : les données brutes ne peuvent contenir que des identifiants et d’autres valeurs alphanumériques, dont il serait très difficile de tirer un sens. C’est typique, car les systèmes sont conçus pour fonctionner sur des événements légers, pour servir des milliers de requêtes par seconde sans aucun délai. Cela signifie qu’une couche brute fournit peu ou pas de valeur en termes d’informations commerciales en ce moment.

    Une façon de surmonter un tel défi est de construire des magasins de métadonnées expliquant la signification des champs ainsi que des dictionnaires vous donnant la possibilité de rendre les données lisibles.

    Module 2 : Architecture de haut niveau de Severlesspro Data Analytics - transformation et enrichissement des données

    Le schéma ci-dessus est un exemple d’une telle implémentation. Amazon DynamoDB stocke les dictionnaires et toutes les données supplémentaires pouvant être utilisées dans la transformation. Comme vous pouvez le voir, le flux de données est simple. Vous commencez par extraire les données de la couche brute, les traitez avec des tâches dédiées qui implémentent la logique, puis les enregistrez dans une couche distincte à l’intérieur du lac de données. Comment fonctionne cette automatisation sous le capot ?

    • Découverte de schéma automatisée avec Colle AWS – Dans la première étape, vous devez être en mesure de créer un mappage des informations existantes dans votre couche brute du lac de données. Bien que nous ayons dit que les données peuvent être non structurées et dans différents formats, vous devez savoir quels champs sont disponibles dans les ensembles de données pour pouvoir effectuer tout type d’opération. AWS Glue est un service d’intégration de données sans serveur qui facilite la découverte, la préparation, le déplacement et l’intégration de données provenant de plusieurs sources pour l’analyse, l’apprentissage automatique (ML) et le développement d’applications. Dans ce cas, le crawler est exécuté automatiquement toutes les 1h pour cataloguer les schémas.
    • Enrichir les données avec Amazon EMR sans serveur – Cette option d’Amazon EMR permet aux analystes de données et aux ingénieurs d’exécuter des cadres d’analyse de Big Data open source sans configurer, gérer et mettre à l’échelle des clusters ou des serveurs. En prenant Apache Spark (un cadre de traitement distribué et un modèle de programmation aidant au ML, au traitement de flux ou à l’analyse de graphes) et en implémentant la logique pour les jointures de données, la déduplication, le remplacement des identifiants par des valeurs de dictionnaire significatives et en transformant l’ensemble de données final en Apache Parquet (binaire,…
    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.