Hadoop, Spark & Big Data 2.0. Exploiter une grappe de calcul pour des problème des données massives



Documents pareils
4 Exemples de problèmes MapReduce incrémentaux

M2 GL UE DOC «In memory analytics»

Programmation parallèle et distribuée

Les technologies du Big Data

Big Data. Cyril Amsellem Consultant avant-vente. 16 juin Talend

Anticiper et prédire les sinistres avec une approche Big Data

Certificat Big Data - Master MAthématiques

Cartographie des solutions BigData

Programmation parallèle et distribuée

Introduction aux algorithmes MapReduce. Mathieu Dumoulin (GRAAL), 14 Février 2014

Big Data : utilisation d un cluster Hadoop HDFS Map/Reduce HBase

Fouillez facilement dans votre système Big Data. Olivier TAVARD

Organiser vos données - Big Data. Patrick Millart Senior Sales Consultant

Programmation parallèle et distribuée (Master 1 Info )

Formation Cloudera Data Analyst Utiliser Pig, Hive et Impala avec Hadoop

Introduction à MapReduce/Hadoop et Spark

BIG DATA en Sciences et Industries de l Environnement

Déploiement d une architecture Hadoop pour analyse de flux. françois-xavier.andreu@renater.fr

CNAM Déploiement d une application avec EC2 ( Cloud Amazon ) Auteur : Thierry Kauffmann Paris, Décembre 2010

HADOOP ET SON ÉCOSYSTÈME

Introduction à Linux (pour le HPC) «Linux 101» Présentation :

L écosystème Hadoop Nicolas Thiébaud Tuesday, July 2, 13

Bases de données documentaires et distribuées Cours NFE04

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril / 15

Table des matières INITIATION À SPARK AVEC JAVA 8 ET SCALA

R+Hadoop = Rhadoop* Des logiciels libres complémentaires, une implémentation, une réponse au nouveau paradigme du bigdata!

Stephan Hadinger, Sr. Mgr Solutions Architecture, AWS. Salon du Big Data 11 mars 2015

MapReduce. Nicolas Dugué M2 MIAGE Systèmes d information répartis

Notes de cours Practical BigData

Labs Hadoop Février 2013

Map-Reduce : un cadre de programmation parallèlle pour l analyse de grandes données. Stéphane Genaud ENSIIE

Ricco Rakotomalala R.R. Université Lyon 2

MapReduce et Hadoop. Alexandre Denis Inria Bordeaux Sud-Ouest France ENSEIRB PG306

Retour d expérience en Astrophysique : utilisation du Cloud IaaS pour le traitement de données des missions spatiales

Le Cloud Open-Mind! Emilien Macchi

API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture

Livre. blanc. Solution Hadoop d entreprise d EMC. Stockage NAS scale-out Isilon et Greenplum HD. Février 2012

Hadoop dans l entreprise: du concept à la réalité. Pourquoi et comment?

Panorama des solutions analytiques existantes

1 Démarrage de Marionnet

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

Cassandra et Spark pour gérer la musique On-line

Big Data Concepts et mise en oeuvre de Hadoop

Hadoop / Big Data. Benjamin Renaut <renaut.benjamin@tokidev.fr> MBDS

BIG Data et R: opportunités et perspectives

NoSQL. Introduction 1/30. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

Sommaire. 3. Les grands principes de GFS L architecture L accès de fichier en lecture L accès de fichier en écriture Bilan

AVRIL Au delà de Hadoop. Panorama des solutions NoSQL

NoSQL. Introduction 1/23. I NoSQL : Not Only SQL, ce n est pas du relationnel, et le contexte. I table d associations - Map - de couples (clef,valeur)

Le projet Gaïa, le Big Data au service du traitement de données satellitaires CRIP - 16/10/2013 Pierre-Marie Brunet

Oracle Maximum Availability Architecture

Cassandra chez Chronopost pour traiter en temps réel 1,5 milliard d événements par an

Offre formation Big Data Analytics

DEMARRER UN PROJET BIGDATA EN QUELQUES MINUTES GRACE AU CLOUD

Cloud Computing : Utiliser Stratos comme PaaS privé sur un cloud Eucalyptus

Importation et exportation de données dans HDFS

Les enjeux du Big Data Innovation et opportunités de l'internet industriel. Datasio 2013

Cloud Computing. Introduction. ! Explosion du nombre et du volume de données

Présentation Alfresco

Our experience in using Apache Giraph for computing the diameter of large graphs. Paul Bertot - Flavian Jacquot


Introduc)on à Map- Reduce. Vincent Leroy

Chapitre 2. Cluster de calcul (Torque / Maui) Grid and Cloud Computing

20 ans du Master SIAD de Toulouse - BigData par l exemple - Julien DULOUT - 22 mars ans du SIAD -"Big Data par l'exemple" -Julien DULOUT

Projet d'infrastructure de stockage mutualisée

Implémentation parallèle de certains algorithmes de fouille de données avec le framework MapReduce

Avant-propos. Organisation du livre

La Continuité d Activité

Fouille de données massives avec Hadoop

Introduction au Massive Data

Acquisition des données - Big Data. Dario VEGA Senior Sales Consultant

e-obs : Conception et utilisation Rémy Decoupes Ether // ums3365

Rapport d activité. Mathieu Souchaud Juin 2007

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Les environnements de calcul distribué

Présentation du module Base de données spatio-temporelles

Informatique & Systèmes de Communication. Stages de 12 à 16 semaines aux Etats-Unis

Open Source Job Scheduler. Installation(s)

TwinCAT Backup. Mise en œuvre rapide

Big data et données géospatiales : Enjeux et défis pour la géomatique. Thierry Badard, PhD, ing. jr Centre de Recherche en Géomatique

La dernière base de données de Teradata franchit le cap du big data grâce à sa technologie avancée

LE BIG DATA. TRANSFORME LE BUSINESS Solution EMC Big Data


Grid 5000 : Administration d une infrastructure distribuée et développement d outils de déploiement et d isolation réseau

Pentaho Business Analytics Intégrer > Explorer > Prévoir

Le cloud computing au service des applications cartographiques à haute disponibilité

Tests de SlipStream sur les plateformes et : vers la. Vers la fédération du Cloud computing

Edito. Optimisation de la gestion d une Infrastructure Virtuelle. Questions / Réponses Amosdec Q Numéro 7

CAS, un SSO web open source. 14h35-15h25 - La Seine A

«clustering» et «load balancing» avec Zope et ZEO

Gestion de clusters de calcul avec Rocks

Projet Xdata. Cinequant, Data Publica, EDF, ESRI, Hurence, INRIA, Institut Mines Telecom, La Poste, Orange, Veolia

27/11/12 Nature. SDK Python et Java pour le développement de services ACCORD Module(s)

Le tout à l usage dans un IaaS public «Comment une plateforme industrielle permet de déployer des usages applicatifs en accord avec cette promesse»

Analytics & Big Data. Focus techniques & nouvelles perspectives pour les actuaires. Université d Eté de l Institut des Actuaires Mardi 8 juillet 2014

ORACLE 10g Découvrez les nouveautés. Jeudi 17 Mars Séminaire DELL/INTEL/ORACLE

Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop

Transcription:

Hadoop, Spark & Big Data 2.0 Exploiter une grappe de calcul pour des problème des données massives

Qui suis-je? Félix-Antoine Fortin Génie info. (B. Ing, M. Sc, ~PhD) Passionné de Python, Data Analytics, Statistiques, et de CIP. 5 ans à l emploi de Calcul Québec* Supermarine Spitfire LF Mk.IXc MJ783 Musée Royale de l Armée et d Histoire Militaire, Bruxelles

Plan 1. Introduction à Apache Spark 2. Introduction à magpie 3. Démonstration interactive

Aller au delà de Map-Reduce? Les tâches complexes et interactives requièrent une chose que le MapReduce ne peut offrir: Primitive efficace pour le partage de données Algorithme itératif Analyse interactive Source: http://fr.slideshare.net/tsailiming/spark-meetup1-intro-to-spark

Aller au delà de MapReduce? Primitive Hadoop pour le partage de données: stockage! Sérialisation et I/O = jusqu à 90% du temps! Source: http://fr.slideshare.net/tsailiming/spark-meetup1-intro-to-spark

Principe derrière Spark chargement unique Mémoire distribuée Source: http://fr.slideshare.net/tsailiming/spark-meetup1-intro-to-spark

Resilient Distributed Dataset (RDD) Collection logique de données Stocké en mémoire Partitionné entre les noeuds Supporte la réplication (fault tolerance)

Spark RDD: création Un RDD peut être créé à partir de différente sources dont des fichiers textes et tout format d entrée Hadoop. textfile Les fichiers peuvent êtres compressés et multiples. On peut aussi distribuer des objets quelconques. parallelize

Spark RDD: transformations Un RDD est immuable. Ces fonctions permettent de créer un nouveau jeu de données de façon paresseuse (lazy evaluation). map filter flatmap sample distinct groupbykey reducebykey sortbykey join mappartitions union intersection cartesian cogroup

Spark RDD: actions Les actions produisent un résultat immédiat qui doit pouvoir être contenu dans la mémoire de l exécutant (driver) ou sur disque. reduce collect count first take takesample saveastextfile foreach

Spark RDD: persistence Un jeu de données n est pas nécessairement conservé en mémoire. cache persist Si on ne dispose pas d assez de mémoire pour stocker tout le jeu de données, la persistence peut être partielle.

Spark: écosystème API Python Java R Scala Librairies

Spark: compter des mots file = spark.textfile("file://...") counts = file.flatmap(lambda line: line.split(" "))\.map(lambda word: (word, 1))\.reduceByKey(lambda a, b: a + b) counts.saveastextfile("hdfs://...")

Spark: estimation de def sample(p): x, y = random(), random() return 1 if x*x + y*y < 1 else 0 count = spark.parallelize(range(0,num_samples)) \.map(sample) \.reduce(lambda a, b: a + b) print "Pi est approximativement = %f" % \ (4.0 * count / NUM_SAMPLES)

Spark: performance Terasort contest Hadoop Record Spark 100TB Spark 1PB Taille des données 100TB 100TB 1000 TB Durée du tri 72 minutes 23 minutes 234 minutes # Noeuds 2100 206 190 # Coeurs 50,400 6592 6080 Type instance Dédiée EC2 (i2.x8large) EC2 (i2.x8large) Jusqu à 100x plus rapide que Hadoop...

Comment lancer Spark à CQ? magpie

magpie Scripts de lancement de tâches de l écosytème big data d Apache

Qu est-ce que c est magpie? Ensemble de scripts de soumission de tâches d exécution des logiciels de l écosystème Big Data de Apache. Développé à Lawrence Livermore (LLNL) Compatible avec Moab/Torque (CQ) Simple à déployer (git clone) Open Source: https://github.com/chu11/magpie

Comment ça fonctionne? 1. Écrire un script de soumission de tâche à partir d un template et soumettre 2. Allocation des noeuds par Moab. 3. Génération des fichiers de configuration. 4. Lancement des démons sur tous les noeuds. 5. Interaction avec le cluster: a. Exécution d un script. b. Interaction directe en se connectant au noeud de tête.

Débuter avec magpie 1. git clone https://github.com/chu11/magpie 2. cd magpie; cd submission-scripts/script-msub-torque 3. vim magpie.msub-torque-spark 4. Ajuster les paramètres de la tâche (-N, -A, -l *)

Débuter avec magpie 5. Configurer MAGPIE_SCRIPTS_HOME pour pointer vers notre clone de magpie (~ ligne 72). 6. Décommenter et ajuster les variables (~ligne 150) export MAGPIE_STARTUP_TIME=5 export MAGPIE_SHUTDOWN_TIME=5 7. Remplacer la ligne export JAVA_HOME (~ligne 210) module load compilers/java 8. Configurer la version du logiciel (~ligne 225) export SPARK_VERSION="1.2.1[...]"

Débuter avec magpie 9. Configurer le chemin vers la racine de l application export SPARK_HOME=/software6/apps/spark/ 10. Configurer le type de tâche à exécuter (~ ligne 355) export SPARK_MODE="interactive" 11. Configurer les options de l application (ligne 360+) export SPARK_LOCAL_SCRATCH_DIR=${SCRATCH} # En mode non-interactif export SPARK_SCRIPT_PATH="${HOME}/script" 12. Sauvegarder le script

Lancer une tâche magpie 1. Soumettre la tâche: msub magpie.msub-torque-spark 2. Vérifier quels noeuds ont été alloués: checkjob <JOBID> 3. 1er noeud de la liste Allocated Nodes = master 4. Se connecter au master depuis une login via: a. ssh : ssh <hostname> b. http : firefox http://<hostname>:<port>/

Quelle est la suite? Déployer une version de magpie configurée sur mesure pour Colosse Chargement des modules (lmod) Permettre au master d exécuter des des démons d exécution (pull-request #7) Éliminer les constantes de temps (issue #9)

Démonstration interactive + magpie

Conclusion Spark offre une API simple permettant l interaction directe avec ses données permet de charger de gros jeux de données en fédérant la mémoire des noeuds de calcul. magpie pour lancer facilement Apache * Disponible et fonctionnel sur Colosse

Remerciements Albert Chu du groupe Chaos à LLNL pour le développement de magpie. magpiethat.com pour les divertissantes illustrations de pies.

Pour en apprendre plus École d'été CQ sur le CIP - HPC Data Analytics formation pratique avec Spark IPython Notebook R pour le CIP Quand : 25 au 29 mai 2015 Où : Centre d arts Orford

Questions? Êtes-vous prêt à l essayer?