Formations à distance

Toutes nos formations sont accessibles à distance en classes virtuelles : accès à l'infrastructure de travaux pratiques, machines physiques, outils pédagogiques, échanges avec le formateur. N'hésitez pas à nous appeler pour réserver une formation ou pour participer aux serious games !

Financement FNE-Formation 2021

Toutes nos formations sont éligibles au FNE-formation 2021

Formation : Cycle certifiant Développeur BigData

Durée23 jours
Prix 11720 €
Code coursCB070
Inscription

Public:

Chefs de projet,développeurs

Objectifs:

Savoir développer des applications bigData et mettre les oeuvre les outils adaptés aux différents types de données (Cassandra, spark, Neo4j, ElasticStack). Comprendre le fonctionnement des principaux outils de requêtage et de traitement des données. Acquérir les bonnes pratiques de distribution de messages, savoir configurer kafka pour intégrer les données de différents formats et de sources différentes. Comprendre les connexions existantes entre les mondes relationnels et NoSQL en environnement Big Data. Savoir mettre en oeuvre Hive et Pig, Impala, les Spark Dataframes.

Connaissances préalables nécessaires:

Connaissance des bases des systèmes d'information, et notions de calculs statistiques et d'un langage de programmation

Validation des pré-requis

Validation des attentes

Programme détaillé de la formation


( logo acroreadTéléchargez le programme) :
IntroductionL'essentiel du BigData : calcul distribué, données non structurées. Besoins fonctionnels et caractéristiques techniques des projets.La valorisation des données.Le positionnement respectif des technologies de cloud, BigData et noSQL, et les liens, implications.
Concepts clés : ETL, Extract Transform Load, CAP, 3V, 4V, données non structurées, prédictif, Machine Learning.
Exemple d'application : Amazon Rekognition, Polly, EMR.
L'écosystème du BigData : les acteurs, les produits, état de l'art.Cycle de vie des projets BigData.
Emergence de nouveaux métiers : Datascientists, Data labs, Hadoop scientists, CDO, ...
Rôle de la DSI dans la démarche BigData. Gouvernance des données: importance de la qualité des données, fiabilité, durée de validité, sécurité des données
Aspects législatifs : sur le stockage, la conservation de données, etc ...sur les traitements, la commercialisation des données, des résultats
Stockage distribuéCaractéristiques NoSQL. Les différents modes et formats de stockage. Les types de bases de données : clé/valeur, document, colonne, graphe.Besoin de distribution. Définition de la notion d'élasticité. Principe du stockage réparti.
Définitions : réplication, sharding, gossip, hachage,
Systèmes de fichiers distribués : GFS, HDFS, Ceph.Les bases de données : Redis, Cassandra, DynamoDB, Accumulo, HBase, MongoDB, BigTable, Neo4j, ..
Données structurées et non structurées, documents, images, fichiers XML, JSON, CSV, ...
Moteurs de recherche. Principe de fonctionnement. Méthodes d'indexation.Recherche dans les bases de volumes importants. Présentation de Elasticsearch et SolR
Principe du schemaless, schéma de stockage, clé de distribution, clé de hachage
Calcul et restitution, intégrationDifférentes solutions : calculs en mode batch, ou en temps réel,sur des flux de données ou des données statiques.
Les produits : langage de calculs statistiques, R Statistics Language, sas, RStudio; outils de visualisation : Tableau, QlikView
Ponts entre les outils statistiques et les bases BigData. Outils de calcul sur des volumes importants : Kafka/Spark Streaming/Storm en temps réel, Hadoop/Spark en mode batch.
Zoom sur Hadoop : complémentarité de HDFS et YARN. Restitution et analyse : logstash, kibana, elk, zeppelin
Principe de map/reduce et exemples d'implémentations, langages et sur-couches.
Présentation de pig pour la conception de tâches map/reduce sur une grappe Hadoop.
ElasticStackPrésentation, fonctionnalités, licence
Positionnement Elasticsearch et les produits complémentaires : Kibana,X-Pack,
Logstash, Beats
Principe : base technique Lucene et apports d'ElasticSearch
Définitions et techniques d'indexation
Installation de basePrérequis techniques.
Installation avec les RPM
Outils d'interrogationCommunication en RESTFull avec le cluster
Interface http DevTools, travaux pratiques, démonstration
Traitement des donnéesStructure des données. stockage, indexation
Format des données.
Conversion au format JSON des données à traiter.
Interrogations avec Search Lite et avec Query DSL (domain-specific language)
Notion de 'filtre' pour affiner des requêtes.
Autres composantsDémonstrations de Logstash, Kibana et Beats
Intégration
Présentation de la pile elastic.Positionnement d'Elasticsearch et des produits complémentaires :Kibana, Logstash, Beats, X-Pack
Principe : base technique Lucene et apports d'ElasticSearch. Fonctionnement distribué
Cas d'usage classiques : analyse de logs et sécurité, analyse de métriques, recherches web, etc ...
Installation et configurationPrérequis techniques.
Premiers pas dans la console DevTools de Kibana.
Concepts clésPrésentation des concepts clés d'ElasticSearch :
index, types, documents, noeuds, clusters, shards et replica
Notions de datatypes et mappings
Opérations CRUD : exemples d'opérations basiques,
création d'index et mappings
Format et stockage des donnéesFormat des données. Conversion au format JSON des données à traiter.
Structure des données. Stockage, indexation. Terminologie Elasticsearch : notions de document,index.
Métadonnées : _index, _ID
Choix de l'identifiant par l'application avec l'API index, ou genération automatique d'un identifiant..
Indexation inversée.
Outils d'interrogationAPI RESTful en HTTP
Exemples de requêtes simples et plus complexes : recherche de «phrases», extraction de plusieurs documents, etc ..
Notion de pertinence du résultat : «score»
Requêtes avec Search Lite et avec Query DSL (domain-specific language)
Utilisation de 'filtre' pour affiner des requêtes.
Aggrégation de résultats.
Gestion des accès concurrentsUtilisation du numéro de version.
Gestion par l'application : différentes méthodes selon les contraintes fonctionnelles.
Utilisation d'un numéro de version externe.
Analyse et visualisation de donnéesPrincipes de base de l'analyse de texte
Recherche dans des données structurées,
recherche full text,
Ecriture de requêtes complexes.
Notions d'agrégations,
Mise en oeuvre : préparation des données,
agrégation de mesures, bucket aggregation,
Flux logstash et présentation KibanaTraitement de logs avec logstash
Introduction à beats, installation et configuration
Présentation Kibana et démonstrations
Fonctionnalités : recherche, visualisation, création de tableaux de bord et graphiques à partir des données fournies par Elascticsearch
Python pour data-scientistBesoins des data-scientist: calculs, analyse d'images, machine learning, interface avec les bases de données
Apports de python:grande variété d'outils, expertise dans le domaine du calcul scientifique
Tour d'horizon des outils:
pandas, agate, bokeh, scikit-learn, pybrain, tensorflow, keras, mxnet, caffe
Calculs et graphiquesNumPy : Base du calcul sur des tableaux
SciPy : Scientific Tools for Python, couche scientifique
Manipulation de tableaux, fonctions mathématiques.
Représentation graphique avec basemap et matplotlib.
Mise en oeuvre de SciPy/NumPy : manipulation d'images, détection de contours
Manipulation de données relationnellesPandas : manipulation de tables de données
Tableaux avec Pandas: indexation, opérations, algèbre relationnelle
Stockage dans des fichiers: CSV, h5py, netCDF
Comparaison et performances Pandas / NumPy
Machine learning et deep learningPrésentation de TensorFlow,scikit-learn,keras,mxnet,caffe
TensorFlow:principe de fonctionnement, plateformes supportées, distribution,
APIs fournies en standard, modèles d'apprentissage
Projet scikit-learn:classification, régression, validation de modèles prédictifs.
Démonstrations avec les modèles fournis par scikit-learn
Positionnement et comparaison avec Keras, mxnet, caffe
CassandraHistorique, fonctionnalités de Cassandra, licence
Format des données,"key-value", traitement de volumes importants,
haute disponibilité, système réparti de base de données, ...
Installation et configurationPrérequis. Plate-formes supportées. Etude du fichier de configuration : conf/cassandra.yaml
Répertoire de travail, de stockage des données, gestion de la mémoire.
Démarrage d'un noeud et test de l'interface cliente cqlsh.
CQLCommandes de base : connexion au système de base de données,
création de colonnes,insertion, modification recherche,
Le CQL : Cassandra Query Language. Exécution de scripts.
Comment écrire des requêtes? Approches.
Limitations du CQL.
Gestion de la grappePrincipe. Configuration des noeuds.
Notion de bootstrapping et de token.
Paramètres de démarrage des noeuds.
Réplication: topologie du réseau et EndpointSnitch.
Stratégie de réplication.
ajout de noeuds, suppression.
Architecture de stockage mémoire et disque dur, gestion des tombstones, bloom-filter
Travaux pratiques : mise en place d'une configuration de production (multi-datacenters, multi-racks)
SupervisionPrometheus: installation, lancement et découverte
Supervision avec nodetool.
Principe des accès JMX. Exports JMX vers des outils de supervision.
Démonstration avec Prometheus et Grafana.
ExploitationGestion des noeuds Cassandra.
Sauvegardes, snapshots et export au format JSON.
Principe de cohérence, hinted_handoff, digest request et read repair.
Support HadoopPrincipe de map/reduce. Implémentation Hadoop et intégration Hadoop/Cassandra.
Support SparkDescription rapide de l'architecture spark. Mise en oeuvre depuis Cassandra.
Exécution d'application Spark s'appuyant sur une grappe Cassandra.
PerformanceOutil de test de performance Cassandra-stress
Mise en place d'un plan de stress et paramétrage.
SécuritéParamétrage, authentification, sécurisation de la base system_auth.
Gestion des rôles et des autorisations.
SparkPrésentation Spark, origine du projet,apports, principe de fonctionnement.Langages supportés.
Mise en oeuvre sur une architecture distribuée. Architecture : clusterManager, driver, worker, ...
Premiers pasUtilisation du shell Spark avec Scala ou Python. Modes de fonctionnement. Interprété, compilé.
Utilisation des outils de construction. Gestion des versions de bibliothèques.
Mise en pratique en Java, Scala et Python. Notion de contexte Spark. Extension aux sessions Spark.
ClusterDifférents cluster managers : Spark interne, avec Mesos, avec Yarn, avec Amazon EC2
Architecture : SparkContext, SparkSession, Cluster Manager, Executor sur chaque noeud. Définitions : Driver program, Cluster manager, deploy mode, Executor, Task, Job
Mise en oeuvre avec Spark et Amazon EC2. Soumission de jobs, supervision depuis l'interface web
TraitementsLecture/écriture de données : Texte, JSon, Parquet, HDFS, fichiers séquentiels.
Jointures. Filtrage de données, enrichissement. Calculs distribués de base. Introduction aux traitements de données avec map/reduce.
Support CassandraDescription rapide de l'architecture Cassandra. Mise en oeuvre depuis Spark. Exécution de travaux Spark s'appuyant sur une grappe Cassandra.
DataFramesSpark et SQL
Objectifs : traitement de données structurées. L'API Dataset et DataFrames
Optimisation des requêtes.Mise en oeuvre des Dataframes et DataSet. Comptabilité Hive
Travaux pratiques: extraction, modification de données dans une base distribuée. Collections de données distribuées. Exemples.
StreamingObjectifs , principe de fonctionnement: stream processing. Source de données : HDFS, Flume, Kafka, ...
Notion de StreamingContexte, DStreams, démonstrations.
Travaux pratiques : traitement de flux DStreams en Scala. Watermarking. Gestion des micro-batchs.
Travaux pratiques: mise en oeuvre d'une chaîne de gestion de données en flux tendu : IoT, Kafka, SparkStreaming, Spark. Analyse des données au fil de l'eau.
Intégration hadoopRappels sur l'écosystème Hadoop de base : HDFS/Yarn.
Création et exploitation d'un cluster Spark/YARN. Intégration de données sqoop, kafka, flume vers une architecture Hadoop et traitements par Spark.
Intégration de données AWS S3.
Machine LearningFonctionnalités : Machine Learning avec Spark, algorithmes standards, gestion de la persistance, statistiques.
Mise en oeuvre avec les DataFrames.
Spark GraphXFourniture d'algorithmes, d'opérateurs simples pour des calculs statistiques sur les graphes
Travaux pratiques :exemples d'opérations sur les graphes.
Neo4JPrésentation Neo4j, les différentes éditions, license
Fonctionnalités, stockage des données sous forme de graphes
CQL : Cypher Query Language
Positionnement par rapport aux autres bases de données, apports de Neo4j
L'analyse de données.
Cas d'usage
Installation et configurationLes différentes méthodes d'installation
Travaux pratiques : installation de Neo4J Enterprise Edition en cluster.
Premiers pas avec l'interface web.
Création de données, requêtage.
Import de données.
Cypher Query LanguageSyntaxe, description des relations avec CQL,les patterns
Les clauses d'écriture : set, delete, remove, foreach,
de lecture : match, optional match, where, count, case, ..
Les fonctions : count, type, relationship, ..
Principe de profondeur et de direction de relation dans une recherche.
Les listes et les projections maps.
Les algorithmes de Graphe.
Travaux pratiques : création d'un graphe,
Requêtes de recherche, navigation dans le graphe.
ExploitationSauvegardes et restaurations.
Optimisation des transactions.
Indexation.
Client jmx.
Points de surveillance.
Développement Description des APIs disponibles: .Net, Java, Javascript, Python.
Connexions, sessions et transactions.
Principe de causalité entre transactions.
La bibliothèque Apoc.
Travaux pratiques : connexion et récupération de données provenant de Cassandra
SécuritéPrincipe et activation.
Paramètrage.
Travaux pratiques : création d'un compte sécurisé
KafkaLe projet Kafka : historique, fonctionnalités, principe de fonctionnement.
Présentation de l'achitecture et du rôle de chaque composant :
broker, producer, consumer.
Liaison avec Zookeeper.
Mise en oeuvrePréconisations d'installation et prérequis
Travaux pratiques:
installation et lancement de zookeeper et du kafka-server,
Création d'un topic simple,
Mise en oeuvre d'une chaîne de base.
Visualisation des messages avec kafka-console-consumer.
Multi-brokerEtude de la configuration du broker
Travaux pratiques :
création d'une configuration multi-broker,
démarrage de plusieurs noeuds.
ApplicatifConception d'applications avec Kafka. Principe de fonctionnement.
Travaux pratiques:
Développement de prototypes en Python, Java, Scala.
Couplage avec SparkStreaming en mode batch, en mode continu
La réplicationFacteur de réplication.
Partitions.
Travaux pratiques:
tests de haute disponibilité dans une configuration multi-noeuds
Kafka ConnectPrésentation des fonctionnalités : intégration de données d'origines multiples,
modes de fonctionnement (standalone ou distribué)
Types de connecteurs
Travaux pratiques :
configuration de connecteurs, ingestion de données,
création d'une chaîne de transformation.
SécurisationChiffrement SSL et authentification SASL.
Sécurisation de l'infrastructure : Zookeeper, proxy Rest
ExploitationMise en oeuvre de kafka-tool.
Gestion des logs.
Détection de pannes : méthodes et outils.
Benchmarks.
Intégration SQLBesoin. Adéquation entre les objectifs et les outils.
Faciliter la manipulation de gros volumes de données en conservant une approche utilisateurs.
Rappels sur le stockage : HDFS, Cassandra, HBase
et les formats de données : parquet, orc, raw, clés/valeurs.
Les outils : Hive, Impala, Tez, Presto, Drill, Pig, Spark/QL
Hive et PigPrésentation. Mode de fonctionnement. Rappel sur map/reduce.
Hive : le langage HiveQL. Exemples.
Pig : le langage pig/latin. Exemples.
ImpalaPrésentation. Cadre d'utilisation. Contraintes. Liaison avec le métastore Hive.
Travaux pratiques : mise en évidence des performances.
PrestoCadre d'utilisation. Sources de données utilisables.
Travaux pratiques : mise en oeuvre d'une requête s'appuyant sur Cassandra et PostgreSQL.
Spark DataFrameLes différentes approches. Syntaxe Spark/SQl. APIs QL.
Compilation catalyst. Syntaxe, opérateurs.
Travaux pratiques : mise en oeuvre d'une requête s'appusant sur HBase et HDFS.
DrillUtilisation d'APIs JDBC, ODBC. Indépendance Hadoop. Contraintes d'utilisation. Performances.
ComparatifsCompatibilité ANSI/SQL. Approches des différents produits.
Critères de choix.
Besoin. Adéquation entre les objectifs et les outils.
Faciliter la manipulation de gros volumes de données en conservant une approche utilisateurs.
Rappels sur le stockage : HDFS, Cassandra, HBase
et les formats de données : parquet, orc, raw, clés/valeurs
Les outils : Hive, Impala, Tez, Presto, Drill, Pig, Spark/QL
Hive et PigPrésentation. Mode de fonctionnement. Rappel sur map/reduce.
Hive : le langage HiveQL. Exemples.
Pig : le langage pig/latin. Exemples.
ImpalaPrésentation. Cadre d'utilisation. Contraintes. Liaison avec le métastore Hive.
Travaux pratiques : mise en évidence des performances.
PrestoCadre d'utilisation. Sources de données utilisables.
Travaux pratiques : mise en oeuvre d'une requête s'appuyant sur Cassandra et PostgreSQL.
Spark DataFrameLes différentes approches. Syntaxe Spark/SQl. APIs QL.
Compilation catalyst. Syntaxe, opérateurs.
Travaux pratiques : mise en oeuvre d'une requête s'appusant sur HBase et HDFS.
DrillUtilisation d'APIs JDBC, ODBC. Indépendance Hadoop. Contraintes d'utilisation. Performances.
ComparatifsCompatibilité ANSI/SQL. Approches des différents produits.
Critères de choix.

Modalités et délais d'accès
Méthodes mobilisées