Map-Reduce : un cadre de programmation parallèlle pour l analyse de grandes données. Stéphane Genaud ENSIIE
|
|
|
- Virgile Laberge
- il y a 10 ans
- Total affichages :
Transcription
1 Map-Reduce : un cadre de programmation parallèlle pour l analyse de grandes données Stéphane Genaud ENSIIE
2 Traitement de données distribuées Google a introduit Map-Reduce [Dean and Ghemawat 2004] Ils s en servent de manière intensive: utilisation en sept 2007: 400+ TB de données traitées, temps et nombre moyen de machine par traitement Map-Reduce : 6 min et 436 indexation web traite 20+ TB de données brutes analyse d images satellites calculs statistiques pour Google translate clustering des Google news...
3 Traitement de données analyser les données toujours plus vite (avant 2007, 2 jours d ancienneté)... alors que le volume des données augmente toujours 27 mai 2010, 14:00
4 Traitement de données 16 jan 2013, 15:46
5 Traitement de données distribuées Autres applications possibles: New York Times : 4TB d images TIFF transformées en 11 millions de PDFs (durée 24h, coût 240 $ sur 100 machines EC2) caractériser les activités des utilisateurs Facebook analyser les fichiers de logs d un serveur web fouille de données sur logs des caisses enregistreuses super-marché recherche de séquences d ADN dans un génôme
6 Map-Reduce Un modèle de programmation avec un schéma très contraint. Mais permet parallélisation automatique de l'équilibrage de charge des optimisations sur les transferts disques et réseaux de la tolérance aux pannes
7 Schéma général 1. Lecture des données 2. Map : pour chaque élément de données, construire un couple (clé,valeur) 3. Trier selon les clés 4. Reduce: agréger, résumer, filtrer ou transformer les données 5. Écrire les données
8 Exemple: word count Problème: parmi un ensemble de textes, compter le nombre d occurrences de chaque mot. Données: un ensemble de fichiers textes Map : sur chaque texte, décomposer en mots, et à chaque mot m, ajouter à la liste [(m,1),...] Sort : le système trie/regroupe les paires selon la clé m, dans une liste [(m,[1,1,...]),...] Reduce : les valeurs 1 sont additionnées pour chaque mot : [(m,2),...]
9 Schéma général la 1 la ville de la de 1 région... Map ville la 1 1 Sort la ville Reduce la ville vieux village... Map k2 k1 v1 v2... la médaille... Map k4 k3 v1 v5...devrait s appeler Map-Sort-Reduce...
10 N est pas utilisé ici. Contient généralement une clé comme la position du début de chaîne dans le fichier. Pseudo-code word count Map(String input_key, String input_values) : foreach word w in input_values: EmitIntermediate (w, «1»); Reduce (String key, Iterator intermediate_values): int result=0; foreach v in intermediate_values: result += ParseInt( v ); Emit (key, String( result ));
11 Exemple: index renversé Problème: soit un ensemble de fichiers contenant des mots. Etablir une liste des mots, et pour chaque mot une liste des fichiers ou il apparait. F1 : Strasbourg Nantes Paris F2 : Mulhouse Colmar Strasbourg Colmar : F2 Nantes : F1 Mulhouse: F2 Paris : F1 Strasbourg : F1 F2
12 Pseudo-code index renversé Map(String filename, String line) : foreach word w in line: EmitIntermediate( w, filename ); Reduce (String key, Iterator intermediate_values): // key=word, intermediate_values=filenames foreach f in intermediate_values: result += f + ; Emit( key, result ));
13 Implémentations Map-Reduce Des librairies MapReduce existent pour C++, C#, Erlang, Java, Python, Ruby, R La plus connue (hors celle propriétaire de Google) est Hadoop (projet Apache).
14 Signatures En hadoop, les fonctions map et reduce : map : (k 1,v 1 ) [(k 2,v 2 )] Pour chaque paire clé-valeur reçue, on émet un ou plusieurs couple clé-valeur. reduce : k 2,[v 2 ] [(k 3,v 3 )] Pour chaque clé unique et sa liste de valeurs associées, on émet un ou plusieurs couple clé-valeur.
15 Map in Hadoop public class Mapper <KEYIN, VALUEIN, KEYOUT, VALUEOUT>{ public class Context extends MapContext<KEYIN, VALUEIN, KEYOUT, VALUEOUT> { // } } public void map(keyin key, VALUEIN value, Context context) throws IOException, InterruptedException { // }
16 Reduce in Hadoop public class Reducer <KEYIN, VALUEIN, KEYOUT, VALUEOUT> { public class Context extends ReducerContext<KEYIN, VALUEIN, KEYOUT, VALUEOUT> { } // } public void reduce(keyin key, Iterable<VALUEIN> values, Context context) throws IOException, InterruptedException { // }
17 wc avec Hadoop public static class TokenizerMapper extends Mapper<Object, Text, Text, IntWritable>{ private final static IntWritable one = new IntWritable(1); private Text word = new Text(); public void map(object key, Text value, Context context) throws IOException, InterruptedException { } } StringTokenizer itr = new StringTokenizer(value.toString()); while (itr.hasmoretokens()) { word.set(itr.nexttoken()); context.write(word, one); } emit(key,val) 1 ligne d entrée
18 Fichier d entrée Note: par défaut, un mapper un créé pour chaque ligne du fichier d entrée.
19 wc avec Hadoop public static class IntSumReducer extends Reducer<Text,IntWritable,Text,IntWritable> { private IntWritable result = new IntWritable(); public void reduce(text key, Iterable<IntWritable> values, Context context) throws IOException, InterruptedException { } } int sum = 0; for (IntWritable val : values) { sum += val.get(); } result.set(sum); context.write(key, result);
20 Structure public class WordCount { Classe interne héritant de Mapper dont on redéfinit la fonction map public static class TokenizerMapper extends Mapper<Object, Text, Text, IntWritable>{ public void map(object key, Text value, Context context); } } /* Votre code pour map() ici */ Classe interne héritant de Reducer public static class IntSumReducer extends Reducer<Text,IntWritable,Text,IntWritable> { public void reduce(text key, Iterable<IntWritable> values, Context context); /* Votre code pour reduce() ici */ } } } public static void main(string[] args) { Job job = new Job(conf, "word count"); job.setjarbyclass(wordcount.class); job.setmapperclass(tokenizermapper.class); job.setreducerclass(intsumreducer.class); } Configuration des jobs avant lancement
21 Schéma général d exécution
22 Système de fichiers Les lectures et les communications entre processus (une JVM par process) se font par écriture de fichiers. Hadoop propose le pendant du Google File System (GFS): le Hadoop File System (HDFS) Caractéristiques: non-posix, write-once, read-many block-size : par défaut 16 MB
23 Système de fichiers Réplication des blocs de données, pour plus de disponibilité et fiabilité. Texte Namenode centralise les meta-données, et surveille vitalité des blocs par battement de coeurs.
24 Map-Reduce pour des algorithmes de graphes? Google l utilise pour calculer PageRank.
25 n Représentation répandue des graphes : la matrice d adjacence : Mi,j=v, v 0 quand il y a un lien du sommet i à j. n Pour les grands graphes représentant la plupart des phénomènes réels, les matrice d adjacence sont creuses (presque que des 0, lignes inutilement longues). n Utiliser une représentation matrice creuse. n Ex: sommet: (voisin,distance) A: (B, 4), (C, 3), (D, 1)
26 Exemple : degrés des sommets Problème: soit la liste des arrêtes d un graphe exprimées par des relation binaires: (A,B) pour une relation non-orientée entre sommets A et B. Etablir pour chaque arrête, le degré de chacun des deux sommets de la relation. (A,B) (A,C) (B,D) (A,D) (A,B),d(A)=3,d(B)=2 (A,C),d(A)=3,d(C)=1 (B,D),d(B)=2,d(D)=2 (A,D),d(A)=3,d(D)=2
27 Nécessite 2 passes: Exemple : degrés des sommets Map1 : éclater les 2 sommets R1 R2 (A,B) (A,C) A B A C (A,B) (A,B) (A,C) (A,C) R3 R4 (B,D) (A,D) Reduce1 : compte le nombre d enregistrements avec même clé, et ré-émet la relation comme clé avec le degré comme valeur. A A (A,B) (A,C) (A,B) (A,C) d(a)=3 d(a)=3 A (A,D) (A,D) d(a)=3 B (A,B) (A,B) d(b)=2 B (B,D) (B,D) d(b)=2
28 Exemple : degrés des sommets Passe 2: Map2 : identité (quand appariement map et reduce obligatoire comme avec Hadoop) Reduce2 : agrège les degrés trouvés pour une même relation (A,B) d(a)=3 (A,B) d(a)=3 d(b)=2 (A,C) d(a)=3 (A,C) d(a)=3 d(c)=1 (A,D) d(a)=3 (A,D) d(a)=3 d(d)=2 (A,B) d(b)=2 (A,D) d(d)=2...
29 Plus court Chemin A 1 Formulation du problème 3 4 D C Un noeud initial est donné (ici A) B 3 1 On connait les distances de voisin à voisin On veut connaître la distance minimum reliant le noeud initial à tous les autres noeuds. 2 E 5 F 3 G
30 Algorithme de Dikjstra S : ensemble des sommets, s0 : sommet initial neigbhor(a) rend l ensemble des sommets connectés à un sommet a, dist(a,b) rend la distance entre 2 sommets adjacents a et b U : l ensemble des sommets non visités, trié par ordre alpha D : distance minimale de s0 aux autres sommets (le résultat) /* initialization */ forall s S D[i] <- infinity D[s0] = 0 U = S /* computation */ while U <> {} do a <- head(u) U <- tail(u) /* removes a from unvisited */ foreach b neighbor(a) D[b] <- min ( D[b], D[a] + dist(a,b)) endfor enddo
31 A 1 Parcours en largeur: à partir d un sommet, on examine d abord tous les voisins. 3 4 B C D 3 1 Dans le cas d un graphe, nécessité de colorer les sommets pour l arrêt. 2 E 5 F 3 G
32 A 1 Parcours en largeur: à partir d un sommet, on examine d abord tous les voisins. 3 4 B C D 3 1 Il faut n itérations, n diamètre du graphe. 2 E F Problème de l arrêt. 5 3 G
33 A 1 Parcours en largeur: à partir d un sommet, on examine d abord tous les voisins. 3 4 B C D 3 1 Il faut n itérations, n diamètre du graphe. 2 E F Problème de l arrêt. 5 3 G
34 A 1 Parcours en largeur: à partir d un sommet, on examine d abord tous les voisins. 3 4 B C D 3 1 Il faut n itérations, n diamètre du graphe. 2 E F Problème de l arrêt. 5 3 G
35 3 A 4 1 B C D E G F 3 3 G C G 5
36 Problème de l arrêt Idées possibles: Nombre connu d itérations (diamètre du graphe) Constater la stabilité de la solution Utiliser une variable globale - Hadoop Counters pour établir un consensus Diffuser en permanence l information actualisée concernant les noeuds visités
37 Algorithme Map-Reduce La fonction Map reçoit : clé : un sommet a, valeur : (D, voisins) D : distance du sommet à partir du début voisins : liste des sommets accessibles depuis a b voisins, émet (b, dist(a,b)) La fonction Reduce traite toutes les distances possibles vers un b donné et sélectionne le plus petit.
38 Algorithme Map-Reduce On part de A: la distance du début est 0. Pour les autres, initialement infinie. A D C B 3 1 A 0, {B,C,D} B inf, {E} C inf, {G} D inf, {F} E inf, {G} map B 3, {} C 4, {} D 1, {} B inf, {E} C inf, {G} D inf, {F} 2 E F F inf, {C} E F inf, {G} inf, {C} 3 5 G Ce map génère des paires, comme (B,(3,{}), que l on peut interpréter comme : à partir de A, on atteint B, en ayant parcouru une distance de 3.
39 On réduit en prenant pour une même clé, la distance minimum. A D B C D B 3, {} 4, {} 1, {} inf, {E} Reduce B C D E 3, {E} 4, {G} 1, {F} inf, {G} C C inf, {G} F inf, {C} B 3 1 D E inf, {F} inf, {G} 2 E F F inf, {C} 5 3 passe 1 G
40 Le deuxième map génère de nouvelles clés sommet en substituant (clé,(d,{succ1,succ2,...})) par [(succ1,(d+dist(clé,succ1),{}); (succ2,(d+dist(clé,succ2),{});...] A D B C 3, {E} 4, {G} E G 5, {} 9, {} B C 3 1 D 1, {F}... Map F 2, {} 2 E F 3 5 G passe 2
41 On réduit en prenant pour une même clé, la distance minimum A D C B 3 1 E 5, {G} Map G 8, {} 2 E F passe 3 G
42 On réduit en prenant pour une même clé, la distance minimum A 1 E 5, {G} Map G 8, {} 3 4 D... C C 5, {G} Map G 10, {} B E F 3 5 G Reduce 8, {} G passe 4
43 Input File Format % cat inputsp A 0 B,3;C,4;D,1 B 999 E,2; C 999 G,5; D 999 F,1; E 999 G,3; F 999 C,1; G 999 {}
44 Produit de matrices A B C a11 a12 a12 b11 * = b21 c11 b31 La matrice résultat: cij = k aik * bkj
45 Produit de matrices a11 est utilisé pour c11, c12, c13 a12 est utilisé pour c11, c12, c13... a21 est utilisé pour c21, c22, c23 Idée 1 : regrouper les valeurs de A selon leur utilisation dans C on lit : a11, a12, a13 emit(c11, a11); emit(c11, a12); emit(c11, a13)... on lit : a21, a22, a23 emit(c21, a21); emit(c21, a22); emit(c21, a23)...
46 Produit de matrices Idem pour B b11 est utilisé pour c11, c21, c31 b12 est utilisé pour c12, c22, c32... b21 est utilisé pour c11, c21, c31 on lit : b11, b12, b13 emit(c11, b11); emit(c21, b11); emit(c31, b11)... on lit : b21, b22, b23 emit(c11, b21); emit(c21, b21); emit(c31, b21)...
47 Produit de matrices Problème : reduce récupère les valeurs nécessaires pour calculer un cij mais dans un ordre quelconque. Exemple : c11 a11; b11; b21; a12; b31; a13... c21 b11; b21; a21; a22; b31; a23
48 Produit de matrices Idée 2 : ajouter une information dans les valeurs indiquant comment apparier les produits. Exemple : match! c11 (a11,1);(b21,2);(a12, 2); (b11,1);(b31,3);(a13, 3)... match! c21 (b11,1);(b21,2);(a12,1);(a22,2);(b31,3);(a23,2)
49 Input File Format % cat matrices.in.dat A : [ ] [ ] B : [0 1 2] [3 4 5] [6 7 8] [ ] [ ] Par défaut, chaque ligne lue déclenche un map
50 Exemple supplémentaire: Clustering Classification non-supervisée: trouver k groupes de points tels que les points dans chaque groupe soient plus «proches» de ceux de leur groupe que des autres groupes. K-means : 1. prendre au hasard k points initiaux, désignés comme «centres». 2. pour chaque point, définir quel est le centre le plus proche. Le point rejoint le groupe associé au centre. 3. pour chaque groupe, définir un nouveau centre, barycentre des points appartenant au groupe. 4. Recommencer l étape 2. Si aucun point ne change de groupe, fin de l algorithme, sinon recommencer à l étape 3.
MapReduce et Hadoop. Alexandre Denis [email protected]. Inria Bordeaux Sud-Ouest France ENSEIRB PG306
MapReduce et Hadoop Alexandre Denis [email protected] Inria Bordeaux Sud-Ouest France ENSEIRB PG306 Fouille de données Recherche & indexation de gros volumes Appliquer une opération simple à beaucoup
Introduction à MapReduce/Hadoop et Spark
1 / 36 Introduction à MapReduce/Hadoop et Spark Certificat Big Data Ludovic Denoyer et Sylvain Lamprier UPMC Plan 2 / 36 Contexte 3 / 36 Contexte 4 / 36 Data driven science: le 4e paradigme (Jim Gray -
API04 Contribution. Apache Hadoop: Présentation et application dans le domaine des Data Warehouses. Introduction. Architecture
API04 Contribution Apache Hadoop: Présentation et application dans le domaine des Data Warehouses Introduction Cette publication a pour but de présenter le framework Java libre Apache Hadoop, permettant
Certificat Big Data - Master MAthématiques
1 / 1 Certificat Big Data - Master MAthématiques Master 2 Auteur : Sylvain Lamprier UPMC Fouille de données et Medias Sociaux 2 / 1 Rich and big data: Millions d utilisateurs Millions de contenus Multimedia
Notes de cours Practical BigData
Notes de cours Practical BigData Nguyen-Nhut DOAN 15 janvier 2015 Introduction Ces notes personnelles traduisent la deuxième partie du cours INF553 de l Ecole Polytechnique sur les bases de données et
MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15
MapReduce Malo Jaffré, Pablo Rauzy ENS 16 avril 2010 Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 Qu est ce que c est? Conceptuellement Données MapReduce est un framework de calcul distribué
Introduc)on à Map- Reduce. Vincent Leroy
Introduc)on à Map- Reduce Vincent Leroy Sources Apache Hadoop Yahoo! Developer Network Hortonworks Cloudera Prac)cal Problem Solving with Hadoop and Pig Les cours seront mis en ligne sur hhp://membres.liglab.fr/leroy/
Hadoop : une plate-forme d exécution de programmes Map-Reduce
Hadoop : une plate-forme d exécution de programmes Map-Reduce Jonathan Lejeune UPMC 8 octobre 2013 PSIA 2013 Inspiré du cours des années précédentes de Luciana Arantes J. Lejeune (UPMC) Hadoop Map-Reduce
Introduction à Hadoop & MapReduce
Introduction à Hadoop & MapReduce Cours 2 Benjamin Renaut MOOC / FUN 2014-2015 5 Hadoop: présentation Apache Hadoop 5-1 Projet Open Source fondation Apache. http://hadoop.apache.org/
Programmation parallèle et distribuée
Programmation parallèle et distribuée (GIF-4104/7104) 5a - (hiver 2015) Marc Parizeau, Département de génie électrique et de génie informatique Plan Données massives («big data») Architecture Hadoop distribution
Hadoop : une plate-forme d exécution de programmes Map-Reduce
Hadoop : une plate-forme d exécution de programmes Map-Reduce Jonathan Lejeune École des Mines de Nantes Janvier 2015 CODEL 2014/2015 J. Lejeune (École des Mines de Nantes) Hadoop Map-Reduce Janvier 2015
MapReduce. Nicolas Dugué [email protected]. M2 MIAGE Systèmes d information répartis
MapReduce Nicolas Dugué [email protected] M2 MIAGE Systèmes d information répartis Plan 1 Introduction Big Data 2 MapReduce et ses implémentations 3 MapReduce pour fouiller des tweets 4 MapReduce
Fouillez facilement dans votre système Big Data. Olivier TAVARD
Fouillez facilement dans votre système Big Data Olivier TAVARD A propos de moi : Cofondateur de la société France Labs Développeur (principalement Java) Formateur en technologies de moteurs de recherche
Programmation parallèle et distribuée (Master 1 Info 2015-2016)
Programmation parallèle et distribuée (Master 1 Info 2015-2016) Hadoop MapReduce et HDFS Note bibliographique : ce cours est largement inspiré par le cours de Benjamin Renaut (Tokidev SAS) Introduction
Hadoop / Big Data. Benjamin Renaut <[email protected]> MBDS 2013-2014
Hadoop / Big Data Benjamin Renaut MBDS 2013-2014 1 Introduction Programme Planning Objectifs TP/Évaluations Introduction 1-1 Benjamin Renaut Tokidev SAS - Bureau d'étude -
7 Développement d une application de MapReduce
7 Développement d une application de MapReduce Ecrire un programme d Hadoop demande un processus : écrire une fonction map, une fonction reduce et tester localement. Ecrire ensuite un programme pour lancer
Programmation parallèle et distribuée
Programmation parallèle et distribuée (GIF-4104/7104) 5a - (hiver 2014) Marc Parizeau, Département de génie électrique et de génie informatique Plan Mégadonnées («big data») Architecture Hadoop distribution
Hadoop / Big Data 2014-2015 MBDS. Benjamin Renaut <[email protected]>
Hadoop / Big Data Benjamin Renaut MBDS 2014-2015 1 Introduction Programme Planning Objectifs TP/Évaluations Introduction 1-1 Benjamin Renaut Tokidev SAS - Bureau d'étude -
http://blog.khaledtannir.net
Algorithme de parallélisations des traitements Khaled TANNIR Doctorant CIFRE LARIS/ESTI http://blog.khaledtannir.net [email protected] 2e SéRI 2010-2011 Jeudi 17 mars 2011 Présentation Doctorant CIFRE
Cloud Computing MapReduce Année académique 2014/15
Cloud Computing Année académique 2014/15 Qu'est-ce que le Big Data? Source: Paul Butler (Facebook) "Visualizing Friendships", https://www.facebook.com/note.php?note_id=469716398919 2 2015 Marcel Graf Qu'est-ce
4 Exemples de problèmes MapReduce incrémentaux
4 Exemples de problèmes MapReduce incrémentaux 1 / 32 Calcul des plus courtes distances à un noeud d un graphe Calcul des plus courts chemins entre toutes les paires de noeuds d un graphe Algorithme PageRank
Big Data. Cyril Amsellem Consultant avant-vente. 16 juin 2011. Talend 2010 1
Big Data Cyril Amsellem Consultant avant-vente 16 juin 2011 Talend 2010 1 Big Data Architecture globale Hadoop Les projets Hadoop (partie 1) Hadoop-Core : projet principal. HDFS : système de fichiers distribués
Implémentation parallèle de certains algorithmes de fouille de données avec le framework MapReduce
Implémentation parallèle de certains algorithmes de fouille de données avec le framework MapReduce Algorithmes : K-means et Apriori Maria Malek LARIS-EISTI [email protected] 1 Cloud Computing et MapReduce
Cartographie des solutions BigData
Cartographie des solutions BigData Panorama du marché et prospective 1 1 Solutions BigData Défi(s) pour les fournisseurs Quel marché Architectures Acteurs commerciaux Solutions alternatives 2 2 Quels Défis?
Big Data : utilisation d un cluster Hadoop HDFS Map/Reduce HBase
Big Data : utilisation d un cluster cluster Cécile Cavet cecile.cavet at apc.univ-paris7.fr Centre François Arago (FACe), Laboratoire APC, Université Paris Diderot LabEx UnivEarthS 14 Janvier 2014 C. Cavet
Introduction aux algorithmes MapReduce. Mathieu Dumoulin (GRAAL), 14 Février 2014
Introduction aux algorithmes MapReduce Mathieu Dumoulin (GRAAL), 14 Février 2014 Plan Introduction de la problématique Tutoriel MapReduce Design d algorithmes MapReduce Tri, somme et calcul de moyenne
Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop
Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop Soutenance de projet ASR 27/01/2011 Julien Gerlier Siman Chen Encadrés par Bruno
Déploiement d une architecture Hadoop pour analyse de flux. franç[email protected]
Déploiement d une architecture Hadoop pour analyse de flux franç[email protected] 1 plan Introduction Hadoop Présentation Architecture d un cluster HDFS & MapReduce L architecture déployée Les
Big Data Concepts et mise en oeuvre de Hadoop
Introduction 1. Objectif du chapitre 9 2. Le Big Data 10 2.1 Introduction 10 2.2 Informatique connectée, objets "intelligents" et données collectées 11 2.3 Les unités de mesure dans le monde Big Data 12
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)
1/30 2/30 Anne-Cécile Caron Master MIAGE - SGBD 1er trimestre 2014-2015 I : Not Only SQL, ce n est pas du relationnel, et le contexte d utilisation n est donc pas celui des SGBDR. I Origine : recherche
Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop
Julien Gerlier Siman Chen Rapport de projet de fin d étude ASR 2010/2011 Prototypage et évaluation de performances d un service de traçabilité avec une architecture distribuée basée sur Hadoop Encadrants
Hadoop, Spark & Big Data 2.0. Exploiter une grappe de calcul pour des problème des données massives
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,
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)
1/23 2/23 Anne-Cécile Caron Master MIAGE - BDA 1er trimestre 2013-2014 I : Not Only SQL, ce n est pas du relationnel, et le contexte d utilisation n est donc pas celui des SGBDR. I Origine : recherche
Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_r.html. R.R. Université Lyon 2
Ricco Rakotomalala http://eric.univ-lyon2.fr/~ricco/cours/cours_programmation_r.html 1 Plan de présentation 1. L écosystème Hadoop 2. Principe de programmation MapReduce 3. Programmation des fonctions
LMI 2. Programmation Orientée Objet POO - Cours 9. Said Jabbour. [email protected] www.cril.univ-artois.fr/~jabbour
LMI 2 Programmation Orientée Objet POO - Cours 9 Said Jabbour [email protected] www.cril.univ-artois.fr/~jabbour CRIL UMR CNRS 8188 Faculté des Sciences - Univ. Artois Février 2011 Les collections
Fouille de données massives avec Hadoop
Fouille de données massives avec Hadoop Sebastiao Correia [email protected] Talend 2013 AAFD'14 29-30 avril 2014 1 Agenda Présentation de Talend Définition du Big Data Le framework Hadoop 3 thématiques
Les enjeux du Big Data Innovation et opportunités de l'internet industriel. Datasio 2013
Les enjeux du Big Data Innovation et opportunités de l'internet industriel François Royer [email protected] Accompagnement des entreprises dans leurs stratégies quantitatives Valorisation de patrimoine
Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004. Loc Jeudi 29/4/2004
Questionnaire d'examen final INF1101 Sigle du cours Nom : Signature : Prénom : Matricule : Sigle et titre du cours Groupe Trimestre INF1101 Algorithmes et structures de données Tous H2004 Professeur(s)
Programmation Par Objets
Programmation Par Objets Structures de données package java.util B. Carré Polytech Lille 1 Tableaux et structures de données Tableaux «Objets» taille fixe type des éléments : primitif (homogène) ou objets
Programmation Réseau. Sécurité Java. [email protected]. UFR Informatique 2012-2013. jeudi 4 avril 13
Programmation Réseau Sécurité Java [email protected] UFR Informatique 2012-2013 Java Sécurité? différentes sécurités disponibles et contrôlables intégrité contrôle d accès signature/authentification/cryptographie
Tables Rondes Le «Big Data»
Tables Rondes Le «Big Data» 2012-2013 1 Plan Introduc9on 1 - Présenta9on Ingensi 2 - Le Big Data c est quoi? 3 - L histoire 4 - Le monde du libre : Hadoop 5 - Le système HDFS 6 - Les algorithmes distribués
BIG DATA en Sciences et Industries de l Environnement
BIG DATA en Sciences et Industries de l Environnement François Royer www.datasio.com 21 mars 2012 FR Big Data Congress, Paris 2012 1/23 Transport terrestre Traçabilité Océanographie Transport aérien Télémétrie
4. Utilisation d un SGBD : le langage SQL. 5. Normalisation
Base de données S. Lèbre [email protected] Université de Strasbourg, département d informatique. Présentation du module Contenu général Notion de bases de données Fondements / Conception Utilisation :
R+Hadoop = Rhadoop* Des logiciels libres complémentaires, une implémentation, une réponse au nouveau paradigme du bigdata!
R+Hadoop = Rhadoop* * Des logiciels libres complémentaires, une implémentation, une réponse au nouveau paradigme du bigdata! 27 Janvier 2014 / Université Paul Sabatier / DTSI / David Tsang-Hin-Sun Big
M2 GL UE DOC «In memory analytics»
M2 GL UE DOC «In memory analytics» Alexandre Termier 2014/2015 Sources Travaux Amplab, U.C. Berkeley Slides Ion Stoica Présentations Databricks Slides Pat McDonough Articles de M. Zaharia et al. sur les
Chapitre 5 : Flot maximal dans un graphe
Graphes et RO TELECOM Nancy A Chapitre 5 : Flot maximal dans un graphe J.-F. Scheid 1 Plan du chapitre I. Définitions 1 Graphe Graphe valué 3 Représentation d un graphe (matrice d incidence, matrice d
HADOOP ET SON ÉCOSYSTÈME
HADOOP ET SON ÉCOSYSTÈME Mars 2013 2012 Affini-Tech - Diffusion restreinte 1 AFFINI-TECH Méthodes projets Outils de reporting & Data-visualisation Business & Analyses BigData Modélisation Hadoop Technos
TP, première séquence d exercices.
TP, première séquence d exercices. Benoît Valiron [email protected] 7 novembre 2010 Introduction Vous écrirez les réponses aux questions courtes sur une feuille à rendre à la fin de la
Synchro et Threads Java TM
Synchro et Threads Java TM NICOD JEAN-MARC Master 2 Informatique Université de Franche-Comté UFR des Sciences et Techniques septembre 2008 NICOD JEAN-MARC Synchro et Threads avec Java TM 1 / 32 Sommaire
INEX. Informatique en Nuage : Expérimentations et Vérification. Livrable n M2.1 ÉTUDE ET PARALLÉLISATION. Jérôme Richard
INEX Informatique en Nuage : Expérimentations et Vérification Livrable n M2.1 ÉTUDE ET PARALLÉLISATION D ALGORITHMES POUR L ANALYSE DE GRANDS GRAPHES DE RÉSEAUX SOCIAUX Jérôme Richard Univ. Orléans, INSA
Corrigé des exercices sur les références
Corrigé des exercices sur les références Exercice 3.1.1 dessin Pour cet exercice, vous allez dessiner des structures de données au moyen de petits schémas analogues à ceux du cours, comportant la pile
Recherche dans un tableau
Chapitre 3 Recherche dans un tableau 3.1 Introduction 3.1.1 Tranche On appelle tranche de tableau, la donnée d'un tableau t et de deux indices a et b. On note cette tranche t.(a..b). Exemple 3.1 : 3 6
Projet d informatique M1BI : Compression et décompression de texte. 1 Généralités sur la compression/décompression de texte
Projet d informatique M1BI : Compression et décompression de texte Le but de ce projet est de coder un programme réalisant de la compression et décompression de texte. On se proposera de coder deux algorithmes
Les technologies du Big Data
Les technologies du Big Data PRÉSENTÉ AU 40 E CONGRÈS DE L ASSOCIATION DES ÉCONOMISTES QUÉBÉCOIS PAR TOM LANDRY, CONSEILLER SENIOR LE 20 MAI 2015 WWW.CRIM.CA TECHNOLOGIES: DES DONNÉES JUSQU'À L UTILISATEUR
Projet de programmation (IK3) : TP n 1 Correction
Projet de programmation (IK3) : TP n 1 Correction Semaine du 20 septembre 2010 1 Entrées/sorties, types de bases et structures de contrôle Tests et types de bases Tests et types de bases (entiers) public
INTRODUCTION A JAVA. Fichier en langage machine Exécutable
INTRODUCTION A JAVA JAVA est un langage orienté-objet pur. Il ressemble beaucoup à C++ au niveau de la syntaxe. En revanche, ces deux langages sont très différents dans leur structure (organisation du
Exceptions. 1 Entrées/sorties. Objectif. Manipuler les exceptions ;
CNAM NFP121 TP 10 19/11/2013 (Séance 5) Objectif Manipuler les exceptions ; 1 Entrées/sorties Exercice 1 : Lire un entier à partir du clavier Ajouter une méthode readint(string message) dans la classe
Objets et Programmation. origine des langages orientés-objet
Objets et Programmation origine des langages orientés-objet modularité, encapsulation objets, classes, messages exemples en Java héritage, liaison dynamique G. Falquet, Th. Estier CUI Université de Genève
Threads. Threads. USTL http://www.lifl.fr/ routier 1
Threads USTL http://www.lifl.fr/ routier 1 Rappels - Définitions un Process est un programme qui tourne et dispose de ses propres ressources mémoire. OS multi-tâche plusieurs process en concurrence un
Our experience in using Apache Giraph for computing the diameter of large graphs. Paul Bertot - Flavian Jacquot
Our experience in using Apache Giraph for computing the diameter of large graphs Paul Bertot - Flavian Jacquot Plan 1. 2. 3. 4. 5. 6. Contexte Hadoop Giraph L étude Partitionnement ifub 2 1. Contexte -
Big Data et Graphes : Quelques pistes de recherche
Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université
Apache Camel. Entreprise Integration Patterns. Raphaël Delaporte BreizhJUG 07.11.2011
Apache Camel & Entreprise Integration Patterns Raphaël Delaporte BreizhJUG 07.11.2011 1 Speaker CTO Zenika Ouest Consultant et formateur Responsable comité technique Architecture d'entreprise Domaine ESB
Package Java.util Classe générique
Package Java.util Classe générique 1 Classe Vector La taille est dynamique: dès qu un tableau vectoriel est plein, sa taille est doublée, triplée, etc. automatiquement Les cases sont de type Object add(object
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile
TP n 2 Concepts de la programmation Objets Master 1 mention IL, semestre 2 Le type Abstrait Pile Dans ce TP, vous apprendrez à définir le type abstrait Pile, à le programmer en Java à l aide d une interface
Un ordonnanceur stupide
Un ordonnanceur simple Université Paris Sud L objet des exercices qui suivent est de créer un ordonanceur implantant l algorithme du tourniquet ( round-robin scheduler ). La technique utilisée pour élire
Big Data. Les problématiques liées au stockage des données et aux capacités de calcul
Big Data Les problématiques liées au stockage des données et aux capacités de calcul Les problématiques liées au Big Data La capacité de stockage - Traitement : Ponctuel ou permanent? - Cycle de vie des
Hadoop / Big Data. Benjamin Renaut <[email protected]> MBDS 2014-2015
Hadoop / Big Data Benjamin Renaut MBDS 2014-2015 6 map/reduce et Hadoop: exemples plus avancés Exemple: parcours de graphe 6-1 On cherche à déterminer la profondeur maximale
Java Licence Professionnelle CISII, 2009-10
Java Licence Professionnelle CISII, 2009-10 Cours 4 : Programmation structurée (c) http://www.loria.fr/~tabbone/cours.html 1 Principe - Les méthodes sont structurées en blocs par les structures de la programmation
Java et les bases de données: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java. Michel Bonjour http://cuiwww.unige.
: JDBC: Java DataBase Connectivity SQLJ: Embedded SQL in Java Michel Bonjour http://cuiwww.unige.ch/~bonjour Plan JDBC: API bas niveau pour l accès aux BD (SQL) - Introduction - JDBC et : Java, ODBC, SQL
Auto-évaluation Programmation en Java
Auto-évaluation Programmation en Java Document: f0883test.fm 22/01/2013 ABIS Training & Consulting P.O. Box 220 B-3000 Leuven Belgium TRAINING & CONSULTING INTRODUCTION AUTO-ÉVALUATION PROGRAMMATION EN
Présentation du module Base de données spatio-temporelles
Présentation du module Base de données spatio-temporelles S. Lèbre [email protected] Université de Strasbourg, département d informatique. Partie 1 : Notion de bases de données (12,5h ) Enjeux et principes
Anticiper et prédire les sinistres avec une approche Big Data
Anticiper et prédire les sinistres avec une approche Big Data Julien Cabot Directeur Big Data Analytics OCTO [email protected] @julien_cabot OCTO 2013 50, avenue des Champs-Elysées 75008 Paris - FRANCE Tél
ACTIVITÉ DE PROGRAMMATION
ACTIVITÉ DE PROGRAMMATION The purpose of the Implementation Process is to realize a specified system element. ISO/IEC 12207 Sébastien Adam Une introduction 2 Introduction Ø Contenu Utilité de l ordinateur,
Chapitre 10. Les interfaces Comparable et Comparator 1
Chapitre 10: Les interfaces Comparable et Comparator 1/5 Chapitre 10 Les interfaces Comparable et Comparator 1 1 Ce chapitre a été extrait du document "Objets, Algorithmes, Patterns" de [René Lalement],
Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS
Sauvegarde collaborative entre pairs 1 Sauvegarde collaborative entre pairs Ludovic Courtès LAAS-CNRS Sauvegarde collaborative entre pairs 2 Introduction Pourquoi pair à pair? Utilisation de ressources
# let rec concat l1 l2 = match l1 with [] -> l2 x::l 1 -> x::(concat l 1 l2);; val concat : a list -> a list -> a list = <fun>
94 Programmation en OCaml 5.4.8. Concaténation de deux listes Définissons maintenant la fonction concat qui met bout à bout deux listes. Ainsi, si l1 et l2 sont deux listes quelconques, concat l1 l2 constitue
Programmation Objet Java Correction
INSA - 4 AE 2007 2008 Durée : 1H00 Contrôle Programmation Objet Java Correction Consignes Tous les documents sont autorisés, mais ils seront peu utiles. Indiquez vos nom et prénom sur chaque feuille. Le
TP3 : Manipulation et implantation de systèmes de fichiers 1
École Normale Supérieure Systèmes et réseaux Année 2012-2013 TP3 : Manipulation et implantation de systèmes de fichiers 1 1 Répertoire de travail courant Le but de l exercice est d écrire une commande
Groupe de Discussion Big Data Aperçu des technologies et applications. Stéphane MOUTON [email protected]
Groupe de Discussion Big Data Aperçu des technologies et applications Stéphane MOUTON [email protected] Recherche appliquée et transfert technologique q Agréé «Centre Collectif de Recherche» par
Big Graph Data Forum Teratec 2013
Big Graph Data Forum Teratec 2013 MFG Labs 35 rue de Châteaudun 75009 Paris, France www.mfglabs.com twitter: @mfg_labs Julien Laugel MFG Labs [email protected] @roolio SOMMAIRE MFG Labs Contexte
BIG DATA. Veille technologique. Malek Hamouda Nina Lachia Léo Valette. Commanditaire : Thomas Milon. Encadré: Philippe Vismara
BIG DATA Veille technologique Malek Hamouda Nina Lachia Léo Valette Commanditaire : Thomas Milon Encadré: Philippe Vismara 1 2 Introduction Historique des bases de données : méthodes de stockage et d analyse
Remote Method Invocation (RMI)
Remote Method Invocation (RMI) TP Réseau Université Paul Sabatier Master Informatique 1 ère Année Année 2006/2007 Plan Objectifs et Inconvénients de RMI Fonctionnement Définitions Architecture et principe
Labs Hadoop Février 2013
SOA - BRMS - ESB - BPM CEP BAM - High Performance Compute & Data Grid - Cloud Computing - Big Data NoSQL - Analytics Labs Hadoop Février 2013 Mathias Kluba Managing Consultant Responsable offres NoSQL
Les structures de données. Rajae El Ouazzani
Les structures de données Rajae El Ouazzani Les arbres 2 1- Définition de l arborescence Une arborescence est une collection de nœuds reliés entre eux par des arcs. La collection peut être vide, cad l
Introduction à Java. Matthieu Herrb CNRS-LAAS. Mars 2014. http://homepages.laas.fr/matthieu/cours/java/java.pdf
Introduction à Java Matthieu Herrb CNRS-LAAS http://homepages.laas.fr/matthieu/cours/java/java.pdf Mars 2014 Plan 1 Concepts 2 Éléments du langage 3 Classes et objets 4 Packages 2/28 Histoire et motivations
4. Groupement d objets
Conception objet en Java avec BlueJ une approche interactive 4. Groupement d objets Collections et itérateurs David J. Barnes, Michael Kölling version française: Patrice Moreaux Rédigé avec 1.0 Principaux
Solutions du chapitre 4
Solutions du chapitre 4 Structures de contrôle: première partie 4.9 Identifiez et corrigez les erreurs (il peut y en avoir plus d une par segment de code) de chacune des proposition suivantes: a) if (
COURS SYRRES RÉSEAUX SOCIAUX INTRODUCTION. Jean-Loup Guillaume
COURS SYRRES RÉSEAUX SOCIAUX INTRODUCTION Jean-Loup Guillaume Le cours Enseignant : Jean-Loup Guillaume équipe Complex Network Page du cours : http://jlguillaume.free.fr/www/teaching-syrres.php Évaluation
données en connaissance et en actions?
1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions? SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes)
J2SE Threads, 1ère partie Principe Cycle de vie Création Synchronisation
J2SE Threads, 1ère partie Principe Cycle de vie Création Synchronisation Cycle Ingénierie 2e année SIGL Dernière mise à jour : 19/10/2006 Christophe Porteneuve Threads Principes Cycle de vie Création java.lang.thread
OpenPaaS Le réseau social d'entreprise
OpenPaaS Le réseau social d'entreprise Spécification des API datastore SP L2.3.1 Diffusion : Institut MinesTélécom, Télécom SudParis 1 / 12 1OpenPaaS DataBase API : ODBAPI...3 1.1Comparaison des concepts...3
Plan du cours. Historique du langage http://www.oracle.com/technetwork/java/index.html. Nouveautés de Java 7
Université Lumière Lyon 2 Faculté de Sciences Economiques et Gestion KHARKIV National University of Economic Introduction au Langage Java Master Informatique 1 ère année Julien Velcin http://mediamining.univ-lyon2.fr/velcin
Environnements de développement (intégrés)
Environnements de développement (intégrés) Tests unitaires, outils de couverture de code Patrick Labatut [email protected] http://www.di.ens.fr/~labatut/ Département d informatique École normale supérieure
DG-ADAJ: Une plateforme Desktop Grid
DG-ADAJ: Une plateforme pour Desktop Grid Olejnik Richard, Bernard Toursel Université des Sciences et Technologies de Lille Laboratoire d Informatique Fondamentale de Lille (LIFL UMR CNRS 8022) Bât M3
Initiation à la programmation en Python
I-Conventions Initiation à la programmation en Python Nom : Prénom : Une commande Python sera écrite en caractère gras. Exemples : print 'Bonjour' max=input("nombre maximum autorisé :") Le résultat de
Introduction au Data-Mining
Introduction au Data-Mining Gilles Gasso, Stéphane Canu INSA Rouen -Département ASI Laboratoire LITIS 8 septembre 205. Ce cours est librement inspiré du cours DM de Alain Rakotomamonjy Gilles Gasso, Stéphane
DÉPLOIEMENT DE QLIKVIEW POUR DES ANALYSES BIG DATA CHEZ KING.COM
DÉPLOIEMENT DE QLIKVIEW POUR DES ANALYSES BIG DATA CHEZ KING.COM Étude de cas technique QlikView : Big Data Juin 2012 qlikview.com Introduction La présente étude de cas technique QlikView se consacre au
