SlideShare a Scribd company logo
Alessandro Della Rocca
Marco Fazzone
Natasha Marmo
Università degli Studi di Salerno
Facoltà di SS.MM.FF.NN – Laurea Magistrale in Informatica
A.A. 2012/2013
Corso di Sistemi Operativi II – Prof. Giuseppe Cattaneo
 Il problema
 Soluzione Hadoop
 Analisi delle prestazioni
 Data una proteina, ricercare le n sequenze con lo
score maggiore di similarità, ottenute attraverso un
algoritmo di allineamento.
 Sequenze simili hanno un antenato comune.
 Costruzione di un albero filogenetico basato su
matrice di distanza.
 DB di riferimento per le analisi proteiche.
 Contiene di dati e le sequenze aminoacidiche di
tutte le proteine scoperte in natura.
 UNIRef 100: file da 8 gb contenente 17850592
sequenze (al 7 luglio 2013)

Recommended for you

Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...

Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi informatici basato sui log

ts-inginf
Vdcnn daniele meetup_27_june
Vdcnn daniele meetup_27_juneVdcnn daniele meetup_27_june
Vdcnn daniele meetup_27_june

VDCNN

#nlp#dli#deeplearningitalia
17milioni di
allineamenti
 Basato sulla programmazione
dinamica.
 Per una coppia di proteine di size m , n
riempie una matrice di dimensione
n*m , effettuando anche backtrack per
recuperare l’allineamento.
 Restituisce lo score di allineamento e le
sequenze allineate.
 Le sequenze proteiche possono essere
lunghe anche 800, 1000 aminoacidi.
 Basato sulla programmazione
dinamica.
 Edit Distance = minimo numero di
operazioni necessarie a trasformare
una stringa nell’altra.
 Operazioni di: inserzione,
cancellazione, sostituzione,
trasposizione.
 Calcolo della matrice di distanza per
le n sequenze proteiche considerate.
 Generazione di ‘rooted tree’
 Metodo di clustering gerarchico
 Cluster costruite su misure di
distanza tra le sequenze
 Considera un orologio molecolare
costante.
 Costruzione di una scala di distanza
tra le proteine per determinare la
storia evolutiva e le relazioni
genetiche.

Recommended for you

COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm RoutinesCOUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines

COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines

ts-inginf
Pycon
PyconPycon
Pycon
pycon3pyconpython
Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...
Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...
Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...

Risultati dei test di scalabilità di due applicazioni di bio-informatica (conteggio di kmer) sviluppate con Apache Spark e Apache Hadoop. I test sono stati eseguiti su un cloud del GARR. Slide della mia tesi magistrale in Informatica.

apache hadoopk-meriaas
Input Size #Sequenze Time
500 MB 1115662 49 min
1 GB 2231324 1 h. 43 min
4 GB 8925296 7h. 3 min
8 GB 17580592 12 h 45 min
 Problema fondamentalmente CPU-Intensive
 Uso intensivo della memoria RAM
 Dataset di grandi dimensioni.
 Dimensioni crescenti dell’input.
 Bisogno di scalabilità.
An Hadoop approach to build Phylogenetics Trees
An Hadoop approach to build Phylogenetics Trees

Recommended for you

Distributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoopDistributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoop

-Contesto tecnologico -Architetture Parallele -The GRID, definizione e motivazioni -Concetti estesi dei GRID, microgrid -Applicazioni e problemi dei GRID -Soluzioni GRID...Globus, Condor -Soluzioni MicroGRID: AXCP grid -Confronto fra GRID: AXCP, Globus, Condor, Legion, Comparison of microgrid, comparison of MediaGrid. -Applicazioni per microGRID -hadoop, mapreduce

parallel architecturemedia gridmicro grid
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks ThesisLearning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis

Learning of non-homogeneous Continuous Times Bayesian Networks Thesis

Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...
Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...
Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...

The Master's thesis concerns the process of building a classifier by means of Genetic Programming that is able to recognize syntax patterns occurring in sentences containing genes and proteins interactions.

information extractionnatural language processingts-inginf
 Input Split customizzato
 Strategia multithreading per sfruttare al
massimo la CPU
 Allineamenti gestiti attraverso oggetti
 Classe Mapper che esegue l’algoritmo di
allineamento Needleman Wunsch
sull’input assegnato.
 Classe Reducer che seleziona gli
allineamenti migliori globali tra tutti quelli
calcolati localmente dai map task.
 Il Reducer calcola la matrice di distanza e
l’albero filogenetico
 Lo splitter dell’input è stato settato in modo
che ogni input task sia composto da 20000
sequenze.
 Il parametro è stato settato considerando che
valori maggiori conducevano a situazioni di
esaurimento della memoria Java Heap Space.
 Ogni map task calcola lo score di
allineamento tra la sequenza query e tutte le
sequenze che compongono la porzione di
input ad esso assegnata.
 Ogni map task, restituisce dieci oggetti
Allineamento che costituiscono i dieci
allineamenti migliori in base allo score,
relativamente sempre a quella porzione di
input.
An Hadoop approach to build Phylogenetics Trees

Recommended for you

Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”

Tesi di Laurea Triennale in Ingegneria elettronica e informatica. Università degli studi di Trieste

ts-inginfgan
An MPI approach to build philogenetics trees
An MPI approach to build philogenetics treesAn MPI approach to build philogenetics trees
An MPI approach to build philogenetics trees

Build phylogenetics trees using MPI. Project developed at University of Salerno for the course of Parallel and Concurrent Programming.

mpibioinformatics
Mobile price classification
Mobile price classificationMobile price classification
Mobile price classification

The project is a simple classification problem with a data frame composed by a set of Smartphones products and their characteristics. With the use of statistical tools we defined a number of methods to correctly classify the level of the variable Price_range.

dataanalyticsanalysis
 Seleziona quelli con lo score più alto a livello
globale.
 Calcola la matrice di distanza tra questi
allineamenti, tramite l’algoritmo di
Damerau-Levenshtein.
 Calcola l’albero filogenetico utilizzando
l’algoritmo UPGMA .
An Hadoop approach to build Phylogenetics Trees

More Related Content

Similar to An Hadoop approach to build Phylogenetics Trees

Telegraph Cq Italian
Telegraph Cq ItalianTelegraph Cq Italian
Telegraph Cq Italian
Alberto Minetti
 
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
MichaelFuser
 
Vdcnn daniele meetup_27_june
Vdcnn daniele meetup_27_juneVdcnn daniele meetup_27_june
Vdcnn daniele meetup_27_june
Deep Learning Italia
 
COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm RoutinesCOUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
DavidePanarella
 
Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...
Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...
Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...
Giuseppe Luciano
 
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoopDistributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
Paolo Nesi
 
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks ThesisLearning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
Guido Colangiuli
 
Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...
Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...
Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...
Marco Virgo
 
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
StefanoChen1
 
An MPI approach to build philogenetics trees
An MPI approach to build philogenetics treesAn MPI approach to build philogenetics trees
An MPI approach to build philogenetics trees
Alessandro Della Rocca
 
Mobile price classification
Mobile price classificationMobile price classification
Mobile price classification
MircoBarbero
 

Similar to An Hadoop approach to build Phylogenetics Trees (15)

Telegraph Cq Italian
Telegraph Cq ItalianTelegraph Cq Italian
Telegraph Cq Italian
 
AV_tesi_v5
AV_tesi_v5AV_tesi_v5
AV_tesi_v5
 
Calcolo Parallelo
Calcolo ParalleloCalcolo Parallelo
Calcolo Parallelo
 
Sensore di Massa
Sensore di MassaSensore di Massa
Sensore di Massa
 
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
Progetto e sviluppo di un sistema di rilevamento di anomalie su sistemi infor...
 
Vdcnn daniele meetup_27_june
Vdcnn daniele meetup_27_juneVdcnn daniele meetup_27_june
Vdcnn daniele meetup_27_june
 
COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm RoutinesCOUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
COUGAR: Clustering Of Unknown malware using Genetic Algorithm Routines
 
Pycon
PyconPycon
Pycon
 
Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...
Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...
Soluzioni distribuite per l’analisi di dati biomedici in ambiente Virtual Dat...
 
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoopDistributed and Parallel Architecture, from grid to MapReduce, hadoop
Distributed and Parallel Architecture, from grid to MapReduce, hadoop
 
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks ThesisLearning of non-homogeneous Continuous Times Bayesian Networks Thesis
Learning of non-homogeneous Continuous Times Bayesian Networks Thesis
 
Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...
Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...
Classificazione di frasi in linguaggio naturale per il riconoscimento di inte...
 
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
Extended Summary of “Exploring the Evolution of GANs through Quality Diversity”
 
An MPI approach to build philogenetics trees
An MPI approach to build philogenetics treesAn MPI approach to build philogenetics trees
An MPI approach to build philogenetics trees
 
Mobile price classification
Mobile price classificationMobile price classification
Mobile price classification
 

An Hadoop approach to build Phylogenetics Trees

  • 1. Alessandro Della Rocca Marco Fazzone Natasha Marmo Università degli Studi di Salerno Facoltà di SS.MM.FF.NN – Laurea Magistrale in Informatica A.A. 2012/2013 Corso di Sistemi Operativi II – Prof. Giuseppe Cattaneo
  • 2.  Il problema  Soluzione Hadoop  Analisi delle prestazioni
  • 3.  Data una proteina, ricercare le n sequenze con lo score maggiore di similarità, ottenute attraverso un algoritmo di allineamento.  Sequenze simili hanno un antenato comune.  Costruzione di un albero filogenetico basato su matrice di distanza.
  • 4.  DB di riferimento per le analisi proteiche.  Contiene di dati e le sequenze aminoacidiche di tutte le proteine scoperte in natura.  UNIRef 100: file da 8 gb contenente 17850592 sequenze (al 7 luglio 2013)
  • 6.  Basato sulla programmazione dinamica.  Per una coppia di proteine di size m , n riempie una matrice di dimensione n*m , effettuando anche backtrack per recuperare l’allineamento.  Restituisce lo score di allineamento e le sequenze allineate.  Le sequenze proteiche possono essere lunghe anche 800, 1000 aminoacidi.
  • 7.  Basato sulla programmazione dinamica.  Edit Distance = minimo numero di operazioni necessarie a trasformare una stringa nell’altra.  Operazioni di: inserzione, cancellazione, sostituzione, trasposizione.  Calcolo della matrice di distanza per le n sequenze proteiche considerate.
  • 8.  Generazione di ‘rooted tree’  Metodo di clustering gerarchico  Cluster costruite su misure di distanza tra le sequenze  Considera un orologio molecolare costante.  Costruzione di una scala di distanza tra le proteine per determinare la storia evolutiva e le relazioni genetiche.
  • 9. Input Size #Sequenze Time 500 MB 1115662 49 min 1 GB 2231324 1 h. 43 min 4 GB 8925296 7h. 3 min 8 GB 17580592 12 h 45 min
  • 10.  Problema fondamentalmente CPU-Intensive  Uso intensivo della memoria RAM  Dataset di grandi dimensioni.  Dimensioni crescenti dell’input.  Bisogno di scalabilità.
  • 13.  Input Split customizzato  Strategia multithreading per sfruttare al massimo la CPU  Allineamenti gestiti attraverso oggetti  Classe Mapper che esegue l’algoritmo di allineamento Needleman Wunsch sull’input assegnato.  Classe Reducer che seleziona gli allineamenti migliori globali tra tutti quelli calcolati localmente dai map task.  Il Reducer calcola la matrice di distanza e l’albero filogenetico
  • 14.  Lo splitter dell’input è stato settato in modo che ogni input task sia composto da 20000 sequenze.  Il parametro è stato settato considerando che valori maggiori conducevano a situazioni di esaurimento della memoria Java Heap Space.
  • 15.  Ogni map task calcola lo score di allineamento tra la sequenza query e tutte le sequenze che compongono la porzione di input ad esso assegnata.  Ogni map task, restituisce dieci oggetti Allineamento che costituiscono i dieci allineamenti migliori in base allo score, relativamente sempre a quella porzione di input.
  • 17.  Seleziona quelli con lo score più alto a livello globale.  Calcola la matrice di distanza tra questi allineamenti, tramite l’algoritmo di Damerau-Levenshtein.  Calcola l’albero filogenetico utilizzando l’algoritmo UPGMA .