Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G MapReduce Subsection 1 MapReduce Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G MapReduce La programmazione distribuita è molto pesante Soluzione: MapReduce MapReduce viene incontro alle sfide della programmazione distribuita. Le 3 regole Archivia i dati con ridondanza su nodi multipli per garantire la persistenza e la loro disponibilità Effettua il calcolo in prossimità dei dati per minimizzare il costo di trasferimento dei dati Usa un modello semplice di programmazione per nascondere la complessità dell’architettura Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G MapReduce Conteggio Parole words(doc.txt)| sort| uniq -c Map Scandire un termine alla volta Estrarre da ogni record un valore dalla chiave Raggruppare per chiavi Ordinare e Distribuire Ridurre Aggregare, sommare, filtrare o trasformare Scrivere il risultato su file Il principio è sempre lo stesso, Map e Reduce cambiano a seconda del problema Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G MapReduce Map Reduce Dichiarare il numero dei Map e di Reduce, una chiave per un solo Reduce Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G MapReduce Map Reduce map(key, value): //key: document id; value: il testo del documento for each word w in value: emit(w, 1) reduce(key, values): // key:una parola w; value: un intero come contatore result = 0 for each count v in values: result += v emit(w, result) Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G MapReduce Map Reduce In breve Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G MapReduce Scheduling & Data flow Cosa non deve fare il programmatore, ma che fa il sistema Partizione dei dati Scheduling dei task per l’esecuzione del programma tra le varie macchine Ordinare per chiave i dati Assegnare i dati (intermedi) ai nodi. Gestire i guasti dei nodi. Gestire la comunicazione delle macchine Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Section 4 La tecnica di clustering LSH Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Applicazioni della similarità Molti problemi di data mining possono essere espressi come ricerca di insiemi "simili": Pagine duplicate o quasi duplicate. Pagine simili, ad esempio, per la classificazione secondo argomenti. Suggerimento di termini simili (sinonimi o contrari o acronimi). Suggerimento di argomenti a utenti di Twitter con profili simili (sistemi di raccomandazione). Caso duale: individuare comunità di profili con interessi comuni. Risoluzione entità. Gianni Amati su Facebook e Giambattista Amati su Twitter sono le stesse persone? Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Documenti)Reti,Clustering Modello generativo della rete e delle comunità Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G L’architettura per LSH Altamente parallelizzabile e distribuibile! Il documento Insiemi di parole di lunghezza k che occorrono nel documento Signatures: vettori ridotti di interi che rappresentano gli insiemi, e riflettono la loro similarità Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Le coppie di signature su cui verificare la similarità Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Partizione in bande Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Partizione in bande Colonne 1 e 6 sono simili Colonne 4 e 5 sono simili Colonne 1 e 5 non sono simili Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Probabilità S-shaped Probabilità p(t, b, r ), soglia di similarità di Jaccard t, numero di bande b, ampiezza r . Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Probabilità S-shaped Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Introdurre l’effetto banda La tecnica delle "bande" per le matrici di signature si possono estendere con un metodo più generale. Obiettivo: generare una curva di probabilità a S con rapidità a piacere (diminuendo il più possibile i falsi positivi e i falsi negativi) AND di hash come per le righe di una banda OR di hash come per le bande Applicare a cascata una sequenza di AND e OR Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Implementazione a 4 job, si impenna la curva a S Errori quasi nulli per una soglia compresa tra 45% - 0.55% Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G LSH con Map Reduce map(key, value): //key: intero identificativo d del documento; //value: il vettore di interi (la Signature di d) per ogni banda i e porzione z della Signature: emit(h(z,i) , d) il sistema raggruppa in liste di collisione! reduce(key, values): // key:l’hash di una porzione di signature e la banda; //values: la lista C = [d] dei documenti d con la stessa porzione z sulla stessa banda i emit(1, C = [d]) Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Implementazione LSH Dimensione e Tempi 1 Utilizziamo diverse funzioni hash indipendenti (circa 1,200) per creare una signature per ogni documento/profilo/termine. 2 Le signature vengono immagazzinate in un’altra matrice (matrice di Signature). Calcolo della Jaccard per il Clustering massivo di 1,900,000 twe File output Impl tempi (h) Invertito 72,000 PB Stand. 2,005,556 Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Section 5 Le tecniche di Affiliation Graph Model (BIG CLAM, Coda) Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Affiliazione)Rete Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G CODA Scopre comunità (clustering massivo) Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G CODA Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Section 6 Visualizzazione Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Visualizzazione delle Reti I software esistenti sono molto lenti I software esistenti gestiscono pochi nodi e pochi archi. Noi siamo arrivati a 500,000 nodi e migrando a una tecnologia SVG a 1ML. Sono difficili da personalizzare Overload visivo e cognitivo Nodi e archi devono essere linkable e searchable(visual search engine) Dato un arco visualizzare la comunicazione tra i due nodi Dato un nodo fornire le informazioni strutturate e testuali sul nodo Data un’interrogazione visualizzare i nodi e gli archi rilevanti Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Visualizzazione comunità di Twitter Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Visualizzazione comunità di Twitter Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Visualizzazione comunità di Twitter Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Visualizzazione comunità di Twitter Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Visualizzazione comunità di Twitter Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Visualizzazione comunità di Twitter Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Visualizzazione comunità di Twitter Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Il Prossimo futuro Previsione di Gartner (4 febbraio 2016) Entro il 2018, la maggior parte delle aziende e degli analisti delle organizzazioni avranno accesso a strumenti self-service per preparare i dati per l’analisi come componenti delle moderne piattaforme di BI. Entro il 2018, la maggior parte delle offerte stand-alone di elaborazione self-service dei dati saranno incluse/integrate in piattaforme analitiche end-to-end. Entro il 2018, la scoperta della conoscenza dai dati sarà basata su Hadoop, search e visualizzazione e convergeranno a un’unica forma piattaforma di nuova generazione che comprenderà la preparazione self-service dei dati e la generazione di linguaggio naturale. Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Section 7 Piattaforma Batch (Simone Angelini) Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Section 8 Piattaforma Streaming (Marco Bianchi) Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni Il progetto SNOOPI Piattaforme di Big Data Distributed File System (DFS) La tecnica di clustering LSH Le tecniche di Affiliation G Section 9 Progetto ISCOM-FUB: SNOOPI (Giuseppe Marcone) Giambattista Amati Big Data: Tecnologie, metodologie per l’analisi di dati massivi Fondazione Ugo Bordoni