decryptage_modern_data_platform


Modern Data Platform
par Ismaïl, Directeur du Pôle Data Intelligence

>>> "Promis cet article ne parlera pas d'architecture décisionnelle On-Premise (sur votre serveur local)… quoi que !

La Business Intelligence reposera toujours sur le même principe (ETL, Data Warehouse, Cube, Rapport) non ? A quelques exceptions près…

On abordera, par contre, la fin d'une époque où on devait être mono éditeur et surtout engagé (ou fidèle cela dépend du point de vue) sur une solution pendant "x" années, ROI (Return On Investment) oblige !

On ne devait tout de même pas blaguer avec les centaines de milliers d'euros investis sur les licences, hardware, maintenance, location de Data Centers, … si ce n'est au bout d'un certain temps d'amortissement ou suite à une limitation technique réellement pénalisante !

On évoquera également les évolutions technologiques de cette chaîne décisionnelle qui a vu :

  • l'arrivée du concept de Data Lake,
  • la diversification des types (structurées, semi structurées, non structurées) et des sources de données et l'enrichissement de certaines (je pense notamment au format json, parquet, ORC, …),
  • le passage du process ETL (Extract, Transform, Load) à celui d'ELT (Extract, Load, Transform),
  • la séparation du storage et du compute,
  • le passage de la notion d'outil à celle de service,
  • la diversification des types d'analyse menées sur les données,
  • ...
  • Une chaîne décisionnelle Moderne et une équipe Business Intelligence repensée !

    Après cette introduction et avant de parler Architecture pour une plateforme de données moderne, on va commencer par s'intéresser à la chaîne décisionnelle. Celle-ci avait pour habitude d'être nocturne et principalement quotidienne (pour traiter les données à J-1). Aujourd'hui, on a le luxe de la faire tourner plusieurs fois par jour pour intégrer les données au fil de l'eau et s'approcher du temps réel !

    La chaîne décisionnelle moderne se matérialise en quatre étapes :

  • store (stockage) pour stocker les données au format fichiers (Data Lake) ou tabulaire (Base de données relationnelles),
  • ingest (intégration) pour récupérer les données à des fins de stockage ou de consommation immédiate,
  • process (traitement) pour convertir des données brutes en informations ayant une plus-value,
  • analyze (analyse) pour explorer, analyser et visualiser (sous forme de rapport et tableau de bord) les données traitées via un Notebook Spark ou un service plus traditionnel (exemple : Microsoft Power BI).
  • La répartition de ces étapes au sein de l'équipe Data (et oui on parle moins d'équipe BI ;)) pourrait se faire comme suit :

  • Le/la Data Engineer sera en charge de designer (avec l'Architecte) la plateforme de données et d'assurer les étapes de stockage, intégration et traitement des données.
  • Le/la Data Analyst s'occupera, quant à lui, de la partie restitution de données et pourra partager les étapes d'exploration et d'analyse des données avec le/la Data Scientist.
  • Attention, l'étape d'exploration (ou de profilage) des données ne doit pas être ignorée ou sous-estimée car elle permet d'anticiper et d'optimiser la phase de nettoyage et de transformation des données. Un gain temporel et procédural ô combien important dans un projet Data !

    Le challenge pour cette équipe Data sera, également, de bien identifier en amont du projet :

  • La liste des besoins fonctionnels à satisfaire,
  • La liste des sources de données nécessaires pour ces besoins,
  • Le format des données sources,
  • La fréquence de rafraîchissement de ces données,
  • La volumétrie passée, présente et à venir de ces données,
  • Les entités (dimensions (axes d'analyse) et faits (mesures, indicateurs)) du modèle de données à générer,
  • Le mode de consommation des analyses par les utilisateurs (Portail web, application, abonnement, …),
  • La fréquence des rapports à générer.
  • L'autre élément à considérer est la fréquence de traitement des données sources. Sommes-nous plutôt sur du batch, du stream ou un mix des deux ?

    Le process en mode batch

    Cela consiste à regrouper les données brutes dans un buffer avant de les traiter en lot (ou par groupe). Ce traitement peut se faire de manière planifiée à une fréquence convenue (chaque jour, chaque heure, …) ou suite à l'atteinte d'un seuil (ou quota) de données.

    Le batch processing est le mode le plus classique et répandu. Il est particulièrement adapté aux grosses volumétries et aux analyses poussées des données.

    Le process en mode stream

    Cela consiste à traiter la donnée au fil de l'eau (pas besoin de former des groupes de données donc) ce qui s'adapte parfaitement aux sources de données dynamiques (qui se mettent à jour de manière continue) et à l'objectif de temps réel souhaité par certains (exemple : détection de fraude et d'anomalie en général).

    Une analyse de données qui se diversifie !

    Sur la partie analyse de données, on retrouve aujourd'hui 5 types d'analyse :

  • Analyse Descriptive qui vise à répondre à la question "Qu'est ce qui s'est passé ?" en se basant sur des données d'historique qui faciliteront la prise de décision future. Il s'agit du type d'analyse le plus répandu. Il est assuré par le/la Data Analyst,
  • Analyse de Diagnostique qui vient compléter l'analyse descriptive en répondant à la question "Pourquoi cela s'est produit ?". Ce type d'analyse est assuré par un Data Analyst et un Data Scientist,
  • Analyse Prédictive qui a l'ambition de répondre à la question "Qu'est ce qui risque de se passer dans le futur ?" en se basant sur les faits passés pour tenter de prédire l'avenir et la possibilité qu'ils se reproduisent à nouveau. Des stats et du Machine Learning au menu du Data Scientist en charge de cette analyse donc,
  • Analyse Prescriptive qui vient compléter l'analyse prédictive en répondant à la question "Comment y arriver ?" afin de dresser la liste des actions à mener en vue d'atteindre l'objectif. Le/la Data Scientist en charge de cette analyse se basera notamment sur les algorithmes de recommandation,
  • Analyse Cognitive qui vise à valoriser continuellement la base de connaissances afin de trouver le meilleur moyen d'atteindre un résultat, un objectif. Une parfaite combinaison d'intelligence artificielle, de Machine Learning et d'analyse de données.
  • Une fois l'analyse de données finalisée, déployée et partagée avec les utilisateurs finaux, il est important pour la réussite et l'efficience du projet Data de s'assurer que celle-ci soit réellement :

  • utilisée : usage à monitorer,
  • exhaustive : elle répond à tous les besoins exprimés,
  • stable et accessible : elle ne présente pas de problèmes techniques d'accès, d'utilisation ou d'actualisation,
  • maintenable et évolutive : comment détecter et ajouter les nouveaux besoins ?

  • Des réunions avec les utilisateurs finaux sont donc à prévoir et planifier de manière régulière et adéquate (Vive le mode agile et les Sprints pour cela !). Les journaux d'utilisation (logs) sont, à cet effet, de véritables mines d'or pour préparer ces réunions en amont !"

    Modern Data Plateform : présentation des caractéristiques et atouts principaux


    Retrouvez ici la transcriptionde l'interview autour dela Modern Data Platforme


    Projet Data Intelligence

    Les équipes Data Intelligence de Kwanzeo sont à vos côtés si vous souhaitez déployer ou améliorer votre plateforme décisionnelle/Data avec les solutions de nos partenaires Microsoft, Snowflake, ....

    Nous sommes présents pour initier votre projet Data Intelligence.

    Vous souhaitez :
    - Une présentation de nos offres de conseil ;
    - Echanger sur vos projets et besoins, pour cela n'hésitez pas à prendre rendez-vous avec nous pour un avis constructif sur vos enjeux ;
    - Recevoir le catalogue et les tarifs de nos formations en Business Intelligence . Vous pouvez déjà consulter ici un aperçu de nos formations Power BI.
    - en savoir plus sur les accélérateurs que nous avons mis en place pour les projets Data Cloud tel que KitKAD pour Azure Data. Nous pouvons vous faire part de nos retours d'expérience clients sur ces solutions.

    Echangeons par téléphone au 01 88 33 86 27, par mail à contact@kwanzeo.com ou encore en remplissant ce formulaire.