Devenez un professionel du Big Data
Développez les compétences stratégiques et opérationnelles nécessaires pour travailler de bout-en-bout de la conception de l'architecture d'une solution Big Data Streaming à son déploiement en production
Pourquoi une formation dans le Big Data Streaming ?
De plus en plus de cas d'usage et de modèles économiques sont nourris par des données générées au fil de l'eau, notamment la publicité en ligne avec la facturation par clic, l'analyse du parcours client, la recommandation d'achats en temps réel, la détection de fraude, la cybersécurité (spécialement avec l'utilisation des SIEM), les robots industriels, les compteurs intelligents (Linky), le reporting en temps réel, ou encore le tracking des achats. Ces cas d'usage ont atteint leur paroxysme avec les objets connectés, l'intégration des capteurs dans des devices physiques (voiture, réfrigérateur, télévision, PC etc.) ou logiques (sites web, logiciel). Valoriser les données générées au fil de l'eau à large échelle et livrer des résultats de calculs en temps réel soulèvent des problématiques qui sont de plus en plus préoccupantes dans les entreprises ! Cela se rajoute aux difficultés qu'elles rencontrent déjà pour recruter des Data Engineers formé(e)s aux approches de traitement massivement parallèle. Clairement, le Big Data Streaming est une niche porteuse du marché de la data !
Vous souhaitez travailler dans le Big Data ? Vous êtes en cours de réorientation vers une carrière dans le Big Data ? Vous pensez devenir Data Engineer Big Data ? Cette formation a été développée pour vous.
Elle vous équipera des compétences conceptuelles, stratégiques et technologiques nécessaires pour surmonter avec habileté les problématiques que soulèvent la valorisation des données produites en streaming à large échelle. Elle vous rendra capable de travailler de bout-en-bout de la conception de l'architecture d'une solution Big Data Streaming à son déploiement en production.
Quel est l'intérêt de cette formation ?
L'approche classique utilisée jusqu'à présent pour stocker les données consiste à les considérer comme des faits et à les historiser dans une base de données centrale qui est elle-même gérée par un SGBDR. Cette approche est appelée Data Warehouse ou Data Warehousing (entrepôt de données). La collecte traditionnelle est faite à l'aide d'un ETL, Extract Transform & Load, qui extrait les données des sources opérationnelles, les transforme de sorte qu’elles soient conformes aux règles d’homogénéisation définies par le métier et les charge dans le Data Warehouse.
Malheureusement, dans le cadre des cas d'usage des données générées en streaming (ou au fil de l'eau), cette approche "collecte ETL + Stockage Data Warehouse + Traitement Batch sur des données historisées" n'est pas appropriée, car au delà de leur débit et de la vitesse avec laquelle elles sont produites, les données streaming se caractérisent principalement par un délai de péremption très rapide : elles perdent 60% de leur valeur métier dans les instants qui suivent leur création. En d'autres termes, les données streaming perdent leur valeur métier quelques instants seulement après avoir été générées. Pensez-y un instant : lorsque les capteurs implantés dans un véhicule connecté génère des données concernant les conditions du trafic environnant un véhicule par exemple, ces données ne sont valables que dans le contexte des conditions de ce trafic. Lorsqu'un cookie est déposé sur un navigateur Web pour tracker les clics de l'internaute, ce cookie n'a qu'une durée de vie limitée. En d'autres termes, elles ne sont actionnables que dans les instants où elles sont capturées. A cause de leur péremption rapide, elles doivent donc être exploitées à l'immédiat (ou en temps réel) dans les secondes qui suivent leur création, sinon elles perdent leur valeur métier et il n'y'a plus aucun intérêt à les historiser.
La latence et les caractéristiques inhérentes du Data Lake le rendent inapte à ingérer efficacement les données produites en flux continu. Pareil, Hadoop quoique adapté pour le stockage de divers actifs de données, est un système intrinsèquement batch et a des latences qui sont incommodantes à l'ingestion streaming.
Pour réussir à ingérer les données en flux continu, une couche intermédiaire est nécessaire entre la source de données et le consommateur des résultats. Cette couche intermédiaire s’appuient sur deux éléments : une structure de données particulière appelée le Log ou bus d’événements et un système de messagerie Publish/Subscribe.
Maintenant qu'on sait collecter et ingérer les données générées au fil de l'eau, comment les traiter [en temps réel] ?
Souvenez-vous, la caractéristique principale des données streaming est leur durée de péremption rapide. Les données streaming perdent leur valeur métier (ou leur intérêt) juste quelques instants après leur collecte. Ainsi, si ce n'est juste à des fins de tolérance aux pannes, leur historisation dans un Data Lake ne sert pratiquement à rien ! Il faut les traiter en temps réel, c'est-à-dire au-fur-et-à-mesure qu'elles sont ingérées.
De façon classique, un traitement de données se fait sur un historique persisté du fichier de données. Par exemple, un fichier client stocké sur le disque dur, une table de base de données, etc. Ce fichier dans certains cas (les traitements de data science notamment) est chargé en mémoire et le traitement y est exécuté en one-shot. Malheureusement, en streaming, cette approche n'est pas applicable car les données arrivent au fil de l'eau. Si vous collectez les données en mémoire au-fur et à mesure qu'elles arrivent, vous allez inlassablement tomber sur l'erreur "Out of Memory" ou "Java Heat Memory", c'est-à-dire une saturation de la mémoire. Un traitement streaming ne s'exécute pas sur un historique persisté ni sur une image statique des données.
Pour traiter les données à l'immédiat ou en temps réel, il faut changer de paradigme, cesser de considérer la data comme un fait, mais plutôt comme un événement. Lorsqu'on a besoin de collecter les données pour les charger en mémoire avant de les traiter, on est en train de considérer la donnée comme un fait, c'est-à-dire comme un historique non-volatile. Les données streaming ne sont pas des faits au sens véritable du terme car elles n'ont ni début, ni fin. On dit qu'elles sont "inbounded" (ou continues). De plus, elles sont volatiles et se périment très vite ! En streaming, l'historisation des données ne sert qu'à des fins de haute disponibilité et de tolérance aux pannes, pas à des fins d'historisation comme en Business Intelligence !
Il existe plusieurs approches pour traiter les données au fil de l'eau, mais la plus appropriée consiste à découper les données streaming en fenêtres (Windows) et à appliquer un traitement micro-batch sur ces fenêtres. Cette approche est communément appelée approche par fenêtrage.
Qu'est ce que cela implique ? Cela implique que si vous faites des calculs de data science, vous devez savoir discrétiser vos traitements pour qu'ils s'exécutent en temps réel. Si vous faites des calculs d'indicateurs de performance, vous devez vous assurer que l'ordre des messages de la fenêtre est correct et qu'un mécanisme est mis en place pour gérer les événements retardataires. Vous devez vous assurer que les mêmes événements ne sont pas re-traités en cas de reprise de panne.
En réalité, traiter les données par fenêtrage est très simple et n'a rien de nouveau. Par contre, là où le bas blesse c'est comment s'assurer que les données de la fenêtre appartiennent bien à l'intervalle de la fenêtre ? Comment gérer les événements retardataires ou les événements qui ont été collectées dans la fenêtre mais qui n'y appartiennent pas ? Comment s'assurer que chaque événement n'est traité qu'une seule fois ? Comment gérer les pannes de la couche d'ingestion ?
Beaucoup d'éditeurs et d'acteurs du Big Data vous font croire dans leurs meet-up et leurs conférences que pour surmonter les challenges de la valorisation des données streaming, il suffit simplement de maîtriser des outils spécifiques tels que Spark Streaming, Flink, ou Kafka.
D'un point de vue ingénierie logicielle, ils ont raison ; développer une solution streaming n'est pas difficile. Quelques tutoriels gratuits sur Kafka et Spark Streaming suffisent et nul intérêt de vous procurer cette formation. Cependant, ce que vous ne voyez pas et ce que personne ne vous dit c'est que développer une solution Big Data Streaming robuste (c'est-à-dire utilisée en production par des milliers d'utilisateurs) demande de faire des arbitrages en amont de la phase de développement sur plusieurs questions liées par exemple à la sémantique de livraison des messages, à l'ordre de réception des messages, à la gestion des retardataires, à la collecte des données, à la façon de rendre le système tolérant aux pannes, à la garantie que chaque événement est traité exactement une fois, à la façon dont les nœuds communiquent dans le cluster pour éviter qu'un même événement ne soit traité plus d'une fois, etc. Ces arbitrages ne peuvent être faits que par les personnes qui travaillent sur la solution. Ce n'est pas l'éditeur qui viendra répondre à votre place aux questions comme quel domaine temporel choisissons-nous ? Sommes-nous ok pour une sémantique Au-Moins-Une-Fois, Exactement-Une-Fois ou Au-Plus-Une-Fois ? Comment gère t'on les événements retardataires ? Que fait-on en cas de panne ? Re-initialiser l'offset ou bien recommencer au début ? etc...
C'est cette réflexion en amont qui définira la robustesse de votre solution streaming en aval et déterminera la façon dont vous la développerez d'un point de vue logiciel. En réalité, le GROS, le COEUR de la valorisation de données streaming se situe plus dans la capacité à faire des bons arbitrages en amont qu'à développer proprement dit sur Spark, ou Kafka. Et c'est principalement là que se situe l'intérêt de notre formation. Elle vous aidera à :
1 - comprendre les concepts et notions essentielles pour aborder avec aisance la gestion des données générées en streaming, notamment la sémantique de livraison des messages (Exactement-Une Fois, Au-Moins-Une-Fois, Au-Plus-Une-Fois), la sémantique de traitement, le domaine temporel, l'idempotence, la persistence anticipée de messages (Write Ahead Logging), les systèmes de messagerie Publish/Subscribe, le fenêtrage, le micro-batch, les états, les modèles de collecte de données streaming, la cohérence streaming, etc. C'est la connaissance approfondie et la compréhension de ces concepts qui vous permettra de faire les arbitrages qui rendrons votre solution robuste et fiable.
2 - Appréhender et mettre en oeuvre les architectures nécessaires pour ingérer efficacement les données générées en streaming, notamment la construction d'un Data Lake, la mise en place d'un bus d'événements, les architectures Lambda, les architectures kappa, et les architectures hybrides ;
3 - monter en compétence sur les technologies de l'écosystème Hadoop dédiées à l’ingestion et au traitement des données produites en streaming, notamment Apache Kafka, Spark Streaming, Flume, Apache Samza, Storm et S4 (avec un accent plus prononcé sur Apache Kafka et Spark Streaming).
La formation vous équipe des compétences conceptuelles, stratégiques et technologiques nécessaires pour bâtir un système streaming robuste. A la fin de la formation, vous serez capable d'aborder les problématiques que soulèvent la valorisation des données produites en streaming à large échelle et vous serez en même de travailler avec habileté de bout-en-bout de la conception de l'architecture d'une solution Big Data Streaming à son déploiement en production.
Que contient cette formation ?
En réalité, cette formation est un kit. Ce n'est pas juste un ensemble de sessions de cours délivrés en e-learning comme les formations traditionnelles. C'est un Kit qui est composé de :
- d'une bibliothèque de 13 heures de sessions de cours vidéos réparties en 5 modules sur la façon d'aborder conceptuellement les problématiques du Big Data Streaming
- de 4 heures de vidéo-tutoriels pratiques pour monter en compétences sur les technologies du Big Data Streaming, notamment Apache Kafka, Spark Streaming, Flink et Apache S4
- de 6 heures pour apprendre à déployer des applications streaming que vous avez développées avec Kafka et Spark Streaming en production
- un livret d'exercices de 119 pages constitué de plus de 110 exercices sur le Big Data Streaming est disponible en ligne pour consolider vos acquis de compétences
- un Powerpoint interactif de 100 graphiques d'architectures du Big Data Streaming utilisables de suite pour vos propres présentations (mis à jour régulièrement)
- et de nombreux quizz d’évaluation de compétences
Dans sa globalité, la formation est architecturée de la façon suivante :
Au départ, du module 1 au module 3, nous vous enseignerons les concepts de base et les approches conceptuelles utilisées pour résoudre les problématiques que soulèvent la valorisation des données produites en streaming. Dans un second temps, la formation met à disposition des tutoriels pratiques pour vous enseigner comment développer des applications streaming et les déployer en production. C'est dans cette seconde partie que vous monterez en compétences sur les technologies du Big Data Streaming
Module #1 : la collecte de données Streaming (9 leçons)
Ce module contient 9 sessions de cours vidéo sur les différentes méthodes de collecte de données streaming et les contraintes de collecte de données streaming.
Module #2 : l'ingestion streaming de données (10 leçons)
ce module couvre en 10 leçons vidéos, les stratégies nécessaires pour ingérer efficacement les données produites en streaming, notamment le Log, les bus d'événements et les systèmes de messagerie publish/subscribe.
Module #3 : le traitement streaming des données (29 leçons)
Ce module couvre tous les concepts nécessaires pour traiter efficacement les données produites en streaming, notamment les notions d'idempotence, de fenêtrage, les états, la cohérence streaming, la sémantique, etc.
Module #4 : l'artillerie technologique du Big Data Streaming (14 leçons)
Ce module couvre en 14 sessions de cours vidéos, l' approche conceptuelle, l'architecture, le fonctionnement et le mode d'utilisation d'Apache Kafka et Spark Streaming. Vous y apprendrez également les 3 grandes architectures informatiques utilisées pour développer une application streaming quelque soit la technologie : l' architecture Kappa, l'architecture lambda et l'architecture hybride.
Module #5 : déploiement d'applications streaming en production (8 leçons)
Dans ce module, nous vous expliquons comment déployer une application streaming en production. L'idée c'est de comprendre les choix stratégiques à faire pour déployer une application streaming en production avec les outils adéquats, notamment Maven, GitHub, GitLab, et les outils de monitoring de l'écosystème Hadoop
Liste des tutoriels pratiques et avancés :
- un tutoriel pratique sur l'installation et la configuration de Kafka
- un tutoriel pratique sur l'utilisation de l'API Kafka
- un tutoriel pratique sur le déploiement de Kafka à large échelle et en production (Kafka Multi-Broker)
- un tutoriel pratique sur l'utilisation de Kafka Connect
- un tutoriel pratique sur l'utilisation de Kafka Streams
- quatres tutoriels pratiques sur Spark Streaming
- 2 tutoriels pratiques sur le développement d'applications streaming avec Git
- 1 tutoriel pratique sur le déploiement d'applications streaming en production avec Git & Maven
Parce que vous ne développerez pas l'habileté nécessaire pour construire un système streaming robuste en3 semaines, en plus de la bibliothèque des 13 h de cours vidéo et de tout le matériel de la formation, nous mettons à votre disposition 3 ressources complémentaires :
Ressource #1 : des templates de projet Big Data Streaming
Nous mettons à votre disposition un Hub Git dans lequel vous pourrez télécharger des projets streaming, et publier les vôtres librement. Nous pourrons ainsi travailler ensemble sur vos projets. De plus, vous avez des templates de scripts de code Kafka, Spark Streaming et S4 que vous pourrez réutiliser de suite pour tous vos projets
Ressources #2 : Une machine virtuelle clé-en-main
Même si dans la formation, nous vous enseignons à installer les différentes technologies Big Data Streaming, nous mettons aussi à votre disposition une machine virtuelle clé-en-main paramétrée et pré-configurée qui contiennent tous les outils nécessaires au Streaming. Cela vous facilitera grandement la mise en pratique des vidéo-tutoriels de la formation, ainsi que la mise en pratique des cas d'usage streaming.
Ressource #3 : une MasterClass de 24 semaines
Nous vous accompagnons tout au long de votre formation de façon suivi et personnalisé. A votre inscription, nous vous adhérons automatiquement à une MasterClass dans laquelle tous les 3 ou 4 jours, vous recevez un mail qui traite d'un point spécifique du Big Data Streaming de façon poussée. Cette MasterClass durera 24 semaines et rendra votre apprentissage progressif.
Pour qui est ce kit de formation ?
Cette formation a été conçue pour :
- Le professionnel, qui souhaite s'orienter vers une carrière de Data Engineer en Big Data
- Le Data Scientist, qui veut développer des modèles de machine Learning "streaming"
- L’architecte, qui veut concevoir des architectures des systèmes streaming robustes
- Le développeur, qui souhaite développer des applications streaming à large échelle
- et le Manager, qui veut développer une vision holistique sur la façon de capitaliser les données des projets streaming
Qui sont les formateurs ?
Juvénal CHOKOGOUE est spécialisé sur les sujets de valorisation des données à large échelle depuis 2011. Il est également l'auteur des ouvrages "Hadoop - Devenez opérationnel dans le monde du Big Data" paru chez les éditions ENI et "Maîtrisez l'utilisation des technologies Hadoop" paru chez les éditions Eyrolles
Juvénal CHOKOGOUE
Inssaf SALMOUN travaille en tant que Lead Data Engineer. Elle est spécialisée sur les sujets de valorisation de données streaming et les problématiques de Big Data.
Inssaf SALMOUN
Vanelle FOTSING travaille en tant que consultante Cloud & DevOps. Elle est spécialisée sur les sujets d'automatisation du déploiement des applications et des infrastructures cloud.
Vanelle SEGNOU FOTSING
Vous ne prenez aucun risque avec cette formation !
GARANTIE SATISFAIT OU REMBOURSE DE 15 JOURS
Cette formation vous aidera véritablement à développer les compétences nécessaires pour valoriser les données générées en streaming et à monter en compétence sur les technologies du Big Data Streaming. Nous en sommes fermement convaincus ! C’est pourquoi nous l’assortissons d’une garantie satisfait ou remboursé de 15 jours. En d’autres termes, si dans les 15 jours qui suivent votre inscription, vous n’êtes pas satisfaits du kit de formation, ou si pour une raison ou une autre, vous avez le sentiment que la valeur que vous recevez de la formation est inférieure au prix que vous avez payé, écrivez-nous à contact@data-transitionnumerique.com et nous vous rembourserons intégralement sans aucune discussion ! La garantie n’est entâchée d’aucune condition !
Obtenez la formation aujourd'hui pour 350 € seulement !
En réalité, cette formation est lancée uniquement par session. Les sessions d'inscription sont actuellement fermées. Par contre, parce que vous avez manifesté un intérêt prononcé pour la valorisation des données streaming en Big Data, nous vous faisons cette offre unique, one-time. La formation coûte réellement 560 euros, mais nous vous la proposons uniquement aujourd'hui au prix de 350 euros, soit une réduction de quasiment 40%. Vous avez aussi la possibilité de vous procurer la formation en payant en 4 tranches de 99 euros chacune. Cette offre est unique !!
Ils nous font confiance
énormément de clients institutionnels (universités, grandes écoles d'ingénieurs, institutions publiques) nous font confiance et ont acquis cette formation et le livre qui l'accompagne. Quelques exemples de reférences :
Questions les plus fréquemment posées
-
Q.Juvénal, est ce que la formation est un bon investissement pour moi ?
A.Je vais être honnête avec vous. Si vous voulez réellement travailler dans le Big Data, alors oui cette formation est un bon investissement pour vous. A titre de rappel, la journée de travail d’un professionnel du Big Data dépasse actuellement les 580 euros en net (soit bien plus que le tarif de cette formation) et son salaire dépasse 52 000 euros bruts annuel. Si cela ne représente pas une opportunité suffisante pour vous spécialiser en Big Data, alors réellement cette formation n’est pas faite pour vous.
Aussi, la valorisation des données streaming représente l’une des problématiques les plus urgentes dans les entreprises actuellement. Si vous souhaitez aider votre entreprise à surmonter ces défis, alors la formation est faite pour vous.
-
Q.Je souhaite avoir accès uniquement au module portant sur Kafka
A.Non. Cela n’est pas recommandé et n’entre pas dans l’esprit de notre projet. Le kit de formation a été développé pour vous équiper des compétences qui vous permettent de prendre en charge un projet un projet Big Data streaming dans sa globalité, et pas seulement sur l’ingestion streaming avec Kafka. Aussi, nous sommes suffisamment expérimentés pour vous dire qu’aborder de bout-en-bout une problématique de valorisation de données streaming signifie bien plus que maîtriser Spark ou Kafka. Même si au terme de cette formation, vous maîtriserez Kafka, ou Spark, ou toute autre technologie Big Data relative au streaming, si vous cherchez uniquement à maîtriser les technologies, alors cette formation est un peu cher. Nous recommandons de vous orienter vers Udemy.
-
Q.Juvénal, je vois que la formation est en ligne. Combien de temps ai-je accès à la formation ?
A.Oui la formation est fournie à travers un LMS (Learning Management System), un système d’apprentissage léger et simple à utiliser, qui enregistre votre progression, vous fait passer des tests, et vous fournit un espace privé à la formation. Vous avez accès à cet espace indéfiniment. Le LMS que nous avons choisi vous permet de suivre la formation à votre rythme, et en fonction de vos priorités du moment. Que se soit sur votre ordinateur, votre tablette, votre téléphone portable, il suffit de vous connecter avec votre adresse mail et voilà ! Vous avez accès aux cours, à votre dernier point de progression.
-
Q.Est ce que je peux passer une certification éditeur après avoir suivi la formation ?
A.Oui ! Les compétences que vous aurez développées dans le cadre de cette formation peuvent vous aider à passer une certification éditeur. Bien évidemment, ce n’est pas son but, c’est un effet secondaire. Si une certification éditeur est votre motivation première, alors nous vous recommandons de vous rapprocher directement de l’éditeur en question et suivre le programme de formation qu’il recommande pour passer leur certification. Vous aurez une plus grande probabilité de succès qu’avec cette formation.
-
Q.Quand est-ce que la formation n'est pas indiquée ?
A.La formation n’est pas un bon investissement pour vous si :
1. Vous trouvez que la formation coûte trop cher. Vous n’êtes pas prêts à dépenser moins de 540 euros aujourd’hui pour gagner plus de 10 000 euros de plus sur ce que vous gagnez actuellement.
2. Vous n’avez pas le temps. Vous n’êtes pas prêts à consacrer au moins 6 mois de votre temps pour acquérir les compétences stratégiques et opérationnelles offertes par la formation. -
Q.Juvénal, que se passe t'il si après avoir acheté la formation je me rends compte que ce n'était pas ce que je recherchais ?
A.Dans ce cas faites-nous un mail de demande de remboursement à l’adresse contact@data-transitionnumerique.com avant les 30 jours suivant votre achat et nous vous rembourserons intégralement sans aucune question.
-
Q.Est ce que je vais recevoir un diplôme à la fin de la formation ?
A.Non. Cette formation n’est pas un parcours académique. C’est une formation professionnelle, qui aide à développer des compétences spécifiques dans une problématique précise. Un « diplôme d’Etat » n’y est donc pas applicable.
-
Q.Est ce que je peux payer en plusieurs tranches ?
A.Oui, vous pouvez payer la formation en 4 tranches de 140 euros chacune