Les technologies big data avec speech commentaries
1. Université de Kairouan
Institut Supérieur d’Informatique
et de Gestion de Kairouan
LES TECHNOLOGIES
BIG-DATA
Réaliser par:
Jamli Rim
2. PLAN:
En jeux du Big Data
Types De Technologie Big Data
Top Des Technologies Big Data
Apache Spark
1
2
3
4
1
3. 2
1- En jeux du BIG DATA
Without big data analytics,companies are blind and deaf,wandering out onto the web like deer on a freeway.
Geoffrey Moore
4. 4
En jeux du BIG-DATA
1
1
Les méga donné par le biais des
formules mathématiques.
D’identifier et d’analyser nos schémas
comportementaux .
Prédire l’avenir , le future numérique.
Explosion des données modifier
radicalement notre vie.
Que le Big data c’est : l’accroissement
exponentielle des données.
6. 6
Types De Technologie Big Data
2
Qu'est-ce que la technologie Big Data?
Logiciel utilitaire conçu pour analyser , traiter et extraire les informations complexe et volumineux
logiciel de traitement de données traditionnel
Technologies de traitement de Big Data:
analyser énorme quantité de données
temps réel
proposer des conclusions /prévisions
réduire les risques
7. 7
Types De Technologie Big Data
2
Types de technologies Big Data:
Technologies Big Data opérationnelles
Technologies analytiques du Big Data
Les données quotidiennes normales que nous générons
Les transactions en ligne, les médias sociaux ou les
données d'une organisation particulière
Alimenter les technologies analytiques de Big Data.
Réservation de billets en ligne, qui comprend vos billets de train,
billets d'avion, billets de cinéma,Airbnb,tripadvisor
Les achats en ligne qui sont votre offre Amazon,
Walmart, Snap et bien d'autres.
médias sociaux comme Facebook, Instagram,etc
8. 8
Types De Technologie Big Data
2
Types de technologies Big Data:
Technologies Big Data opérationnelles
Technologies analytiques du Big Data
la version avancée des technologies du Big Data
complexe que le Big Data Opérationnel
Le big data analytique est l'endroit où la partie de la performance réelle entre en scène et les
décisions commerciales cruciales en temps réel sont prises en analysant le Big Data opérationnel
9. 9
Types De Technologie Big Data
2
Types de technologies Big Data:
Technologies Big Data opérationnelles
Technologies analytiques du Big Data
Stock marketing
Réaliser les missions spatiales où chaque information est cruciale.
Informations sur les prévisions météorologiques.
Domaines médicaux dans lesquels:
l'état de santé d'un patient particulier peut être surveillé.
11. 11
Top Des Technologies Big Data
3
Les principales technologies Big Data
sont divisées en 4 domaines qui sont classés
comme suit:
Stockage de données
Exploration de données
Analyse des données
Visualisation de données
12. 12
Top Des Technologies Big Data
3
2019
2019
Stockage de données: HADOOP
Hadoop est un Framework logiciel open-source utilisé pour stocker et traiter le Big Data de manière
distribuée sur de grands clusters de matériel de base. Hadoop est sous licence Apache v2.
Hadoop a été développé sur la base de l'article rédigé par Google sur le système MapReduce et
applique des concepts de programmation fonctionnelle.
Développé par : Apache Software Fondation en 2011, le 10 décembre.
Écrit en : JAVA
Entreprises utilisant Hadoop:
Qu'est-ce que Hadoop?
13. 13
Top Des Technologies Big Data
3
Exploration des données
PRESTO est un moteur de requêtes SQL distribué open source permettant d'exécuter des requêtes
analytiques interactives sur des sources de données de toutes tailles allant de gigaoctets à pétaoctets.
Presto permet d'interroger des données dans Hive , Cassandra , les bases de données relationnelles
et les magasins de données propriétaires.
Développé par : Apache Foundation en 2013.
Écrit en : JAVA
Entreprises utilisant Presto :
14. 14
Top Des Technologies Big Data
3
Spark fournit des capacités de calcul en mémoire pour fournir Speed,
un modèle d'exécution généralisé pour prendre en charge une grande
variété d'applications, et des API Java , Scala et Python pour faciliter
le développement.
Développé par : Apache Software Foundation
Écrit en : Java, Scala, Python, R
Entreprises utilisant Spark:
Analyse des données
15. 15
Top Des Technologies Big Data
3
BlockChain:
utilisé dans des fonctions essentielles telles que le paiement, le séquestre et le titre peut également réduire la
fraude, augmenter la confidentialité financière, accélérer les transactions et internationaliser les marchés.
BlockChain peut être utilisé pour réaliser ce qui suit dans un environnement de réseau d'entreprise:
Grand livre partagé: Ici, nous pouvons ajouter le système distribué d'enregistrements sur un réseau
d'entreprise.
Contrat intelligent: les conditions commerciales sont intégrées dans la base de données des transactions et
exécutées avec les transactions.
Confidentialité: en garantissant une visibilité appropriée, les transactions sont sécurisées, authentifiées et
vérifiables
Consensus: toutes les parties d'un réseau d'entreprise acceptent de mettre en réseau les transactions vérifiées.
Développé par : Bitcoin
Rédigé en : JavaScript, C ++, Python
Entreprises utilisant Blockchain:
Analyse des données
16. 16
Top Des Technologies Big Data
3
Tableau est un outil de visualisation de données puissant et à la croissance la plus rapide
utilisé dans le secteur de la Business Intelligence .
L'analyse des données est très rapide avec Tableau et les visualisations créées se présentent
sous la forme de tableaux de bord et de feuilles de calcul.
Développé par : TableAU 2013 May 17
Écrit en : JAVA, C ++, Python, C
Entreprises utilisant :
Visualisation de données
17. 17
Top Des Technologies Big Data
3
Technologies Big Data émergentes
Technologies Big Data émergentes
18. 18
Top Des Technologies Big Data
3
TensorFlow dispose d'un écosystème complet et flexible d'outils, de bibliothèques et de ressources
communautaires qui permet aux chercheurs de pousser les avancées de pointe en matière de machine
learning et les développeurs peuvent facilement créer et déployer des applications basées sur le machine
learning.
Développé par : Google Brain Team en 2019
Écrit en : : Python, C++, CUDA
Entreprises utilisant TensorFlow:
Technologies Big Data émergentes
20. 20
Apache Spark
4
Un projet de recherche à l' UC
Berkeley AMPLab en 2009
Open source au début de 2010
En 2013, transmis à la
fondation Apache, Spark
devient l'un des projets les
plus actifs de cette dernière
En 2014, Spark a
gagné le Daytona
GraySort Contest
dont l'objectif est de
trier 100 To de
données le plus
rapidement possible
Les contributeurs qui participent à son développement sont nombreux et
issus d'environ 200 sociétés différentes,
comme Intel, Facebook, IBM et Netflix. Ainsi depuis 2015 on recense plus de
1 000 contributeurs
Historique
21. 21
Apache Spark
4
Plateforme de traitement sur cluster générique
Assure un traitement parallèle et distribué des données massives
Réalise des traitement par lot (batch) ou a la volée (streaming)
Permet d’intégrer tous les outils et technologies Big data
Offre un traitement itératif et interactif
Offre des API de haut niveau en JAVA, Scala ,PYTHON et R
La notion Spark
24. 24
Apache Spark
4
RDD
RDD
Resilient Distributed Dataset
Collection distribuée d’éléments en mémoire, qui peut être gérée en parallèle
Résilient: capable de récupérer rapidement en cas de panne ou de problèmes
Distribué: partage les données sur les différents nœuds pour une exécution parallèle
Dataset: collection des données en mémoire ;accélère le traitement sur données
27. 23
Apache Spark
4
RDD
En parallélisant des collections existantes
Utiliser la fonction: parallelize()
A partir de fichieres enregistrés dans un support de stockage
tel que disque local, hdfs,Cassandra….
A partir d’autres RDD
Grace aux transformations…
28. 25
Apache Spark
4
Performance De Traitement:
Spark utilise des mécanismes qui
optimisé en terme de temps
d’exécution
La réduction de nombres de lecture-
écriture sur le disque.
Dynamicité:
Il est facilement possible de
développer une application
parallèle, car Spark fournit
80 opérateurs de haut niveau.
Tolérances Aux pannes:
Offre une tolérance aux pannes via Spark abstraction-RDD.
Les RDD Spark sont conçus pour gérer l’échec de tout nœud
de travail du cluster. Ainsi, cela garantit une perte de données
nulle.
Traitement A La Volée
Support De Plusieurs Langages:
Convivialité: Spark prend en charge
plusieurs langues, ce qui facilite le
travail
Avantages
29. Spark et Hadoop :
compagnons ou concurrents ?
Spark n’est pas un concurrent d’Hadoop.
Spark et Hadoop ne sont pas pour le même usage.
Spark :traite les données plus rapidement que Map
Reduce.
D’une part professionnel :utiliser hadoop avec la partie
HDFS et Spark peut remplace map reduce
26
Chacun de nos actes ou presque est capturer et enregistrer des informations qui alimentent ce qu’on appelle le BIG DATA ,les méga donné par le biais de formules mathématiques.
Il permet d’identifier et d’analyser nos schémas comportementaux , mais ce n’est pas tout il peut aussi prédire l’avenir , le future numérique
En 2013 nous avons produit une quantité de données numériques égale a la somme de toutes les données de l’histoire de l’humanité prés de quartes milliards et demi de Téra octets et chaque jour cette explosion de données modifie radicalement notre vie.
D’une autre façon en peut dire que le big data c’est : l’accroissement exponentielle des données.
Qu'est-ce que la technologie Big Data?
La technologie Big Data peut être définie comme un logiciel utilitaire conçu pour analyser , traiter et extraire les informations d'un ensemble de données extrêmement complexe et volumineux que le logiciel de traitement de données traditionnel ne pourrait jamais gérer.
Nous avons besoin de technologies de traitement de Big Data pour analyser cette énorme quantité de données en temps réel et proposer des conclusions et des prévisions pour réduire les risques à l'avenir.
Voyons maintenant les catégories dans lesquelles les technologies Big Data sont classées:
La technologie Big Data est principalement classée en deux types:
Technologies Big Data opérationnelles
Technologies analytiques du Big Data
Premièrement, le Big Data opérationnel concerne les données quotidiennes normales que nous générons. Cela pourrait être les transactions en ligne, les médias sociaux ou les données d'une organisation particulière , etc. Vous pouvez même considérer cela comme une sorte de données brutes qui sont utilisées pour alimenter les technologies analytiques de Big Data.
Voici quelques exemples de technologies opérationnelles Big Data :
Réservation de billets en ligne, qui comprend vos billets de train, billets d'avion, billets de cinéma, etc.
Les achats en ligne qui sont votre offre Amazon, Flipkart, Walmart, Snap et bien d'autres.
Données provenant de sites de médias sociaux comme Facebook, Instagram,
Alors, avec cela, passons aux technologies analytiques du Big Data.
Le Big Data analytique est comme la version avancée des technologies du Big Data. C'est un peu complexe que le Big Data Opérationnel. En bref, le big data analytique est l'endroit où la partie de la performance réelle entre en scène et les décisions commerciales cruciales en temps réel sont prises en analysant le Big Data opérationnel.
Quelques exemples de technologies analytiques Big Data sont les suivants:
Stock marketing
Réaliser les missions spatiales où chaque information est cruciale.
Informations sur les prévisions météorologiques.
Domaines médicaux dans lesquels l'état de santé d'un patient particulier peut être surveillé.
Jetons un coup d'œil aux principales technologies de Big Data utilisées dans les industries informatiques.
Les principales technologies Big Data sont divisées en 4 domaines qui sont classés comme suit:
Stockage de données
Exploration de données
Analyse des données
Visualisation de données
Examinons maintenant les technologies relevant de chacune de ces catégories avec leurs faits et leurs capacités, ainsi que les entreprises qui les utilisent.
Blockchain s'occupe de toutes les transactions de bitcoin
Bitcoin est une monnaie numérique
parlons maintenant des technologies émergentes du Big Data
Apache Spark a commencé comme un projet de recherche à l' UC Berkeley(université de Californie à Berkeley ) AMPLab en 2009, et a été open source au début de 2010.
Plateforme de traitement sur cluster générique c à dire faite pour s’exécuter sur un cluster de machine
(cluster: un ensemble de machines interconnectées c’est un système repartie)
Spark est a la base fait pour s’exécuter en parallèle sur un ensemble de machine elle Assure un traitement parallèle et distribué des données massives l’objectif ici c’est de traiter des données de grande taille c’est pour quoi en fait qu’on appelle Spark technologie Big data car l’un des objectifs de Spark c’est de s’exécuter sur les données massives et de façon qui soit optimal
Donc le problème avec les données massives c’est que ce sont des données de gros volumes qui impacte toujours le temps de traitement plus on a de volumes plus le traitement prend du temps la avec Spark on gagne le maximum de temps et d’avoir une performance élevé
aussi Réalise des traitement par lot (batch=totalité des données) c a d sur totalité des données dans le cluster ou a la volée (streaming) des données qui sont arrivée au fur et en mesure et peut les traité(se sont des traitement de courte durée
Permet d’intégrer tous les outils et technologies Big data :Spark est une technologie de traitement et pas de stockage en tous cas pas encore
Spark peut faire des traitement en utilisant des technique de stockage qui existe déjà par exemple hadoop hdfs en profitant de toute la puissance hdfs répartition réplication gestion des fautes ….
Offre un traitement itératif(batch=totalité des données) et interactif(les traitement en mémoire)
Offre des API de haut niveau en plusieurs longuage JAVA, Scala ,PYTHON et R
Spark est une architecture à assez complexe qui va contenir plusieurs composants donc pour commencer il y a d’abord :
Spark core est le cœur su Spark c’ est l’ensemble des bibliothèque qui contient Spark a partir de laquelle en peut exécutée les traitement qu'on veut faire:
Création du rdd(structure de données en mémoire)
On a la couche Spark SQL pour permettre traiter les données stockées dans un système de fichier(familiers avec le base de données)
Par suite la couche Spark streaming qui va permettre des traitement en temps réel( pas vraiment )mais traitement en micro batch
En 3eme lieu Spark va offrir une bibliothèque de machine Learning qui s’appelle MLIB (ré implémenter des algorithme de ML sur des données distribuées
4ement Graph X qui permet de gérer les traitement sous forme de graphe en mémoire celons type d’application bien sur.
Dernières couche celui qui permet l’interaction avec système de fichier on appelle les gestionnaires des ressources (attribuer les jobs)
Spark a son ordonnanceur qui s’appelle stand alone scheduler
Et peut aussi utilisée autres gestionnaire de ressources comme YARN (hadoop)
Spark utilise une architecture en maitre esclave c’est adire composée d’un ensemble de processus qui communiquent:
Un processus maitre qui va gérer le traitement principale de Spark
Et un ensembles d’esclaves qui vont exécuter ces traitement la:
Spark composé d’un 1er processus qui s’appelle driver program qui contient en fait un objet qui s’appelle Spark Context REPRESENTE le point d4entrer a toutes les applications.
driver program celui qui va gérer l’ensemble des JOBS.
Donc le SparkContext peut connecter au
Gestionnaire du cluster le cluster manager les gestionnaires de ressources
Celui qui gère l’attribution d’une ressources matérielle a un job particulier
Ce sont eux qui vont dire ou vont s’exécuter l’ensemble de job, les allocations mémoire/processeur
stand alone scheduler va permettre de la communication entre Spark et n’importe quelle système de fichier
La par exemple on n nœuds pour chacun nœud il y a un ensemble d’exécuteur ,chaque exécuteur était alloue a une application particulière
Sont des processus parallèles chaque processus lancer également ensemble des taches en parallèle (parallélisme une notion de base)
En fin les exécuteurs renvoyer le code de l’application sous forme d’un fichier jar ou python selon et Spark Context qui va coordonnes l’ensemble d’exécution des taches sur différents machines .
Le rdd est par définition distribué nous avons déjà dire que spark est une architecture maitre esclave
On va avoir le driver qui va synchroniser l’ensemble des opérations qui se fond dans spark
Et puis il va avoir un ensemble des node workers qui vont faire le travail et chaq’un va contenir une partie du RDD et le faite de diviser un rdd sur plusieurs machines ça va aider a paralléliser de façon efficace e beaucoup plus rapide
Quelles sont les opérations qu’on peut faire sur un rdd:
Créer un rdd c’est la première étape donc un rdd peut subir un ensemble de transformation et chaque transformation c’est une opération sur la partie du RDD
Qui peut gérer même un autre RDD et dans certain moment on a besoin de réaliser une action(c’est une opération qui sortir un resultat affiché ou stocké sur le disque
Spark c’est pas un concurrent d’hadoop parce que souvent la tendance certains pensent le contraire.
En générale les deux outils ne sont pas pour le même usage
Spark c’est pour traiter les données plus rapidement que map reduce
Parce que elle est capable de travail sur la totalité des données en une seul fois et c’est pas le cas avec Map Reduce(beaucoup plus rapide)
Donc en conclure que si vous devez réaliser des traitement rapide est bien d’utiliser hadoop avec la partie HDFS mais vous allez choisir Spark pour la partie traitement distribués
Donc Spark remplace map reduce puisque n’étant pas capable de réaliser des stockages distribuer bon il faut s’appuie sur HDFS ce qui est capable de le faire