La prima grande disruption di Lokad, dopo l’inizio del progetto nel 2008, è stata l’emergere del cloud computing. Il cloud computing era un nuovo paradigma che aveva sconvolto l’industria. Da un giorno all’altro, l’HP (high-performance computing) era morto e Lokad doveva abbracciare il suo successore. Il cloud computing rappresentava la prima deviazione radicale di Lokad da ciò che ancora può essere considerato il software ‘mainstream’ per le aziende1. Sebbene la maggior parte dei fornitori di software per le aziende faccia SaaS al giorno d’oggi, quasi nessuno ha adottato un design nativo del cloud1. L’adozione del cloud computing è stata guidata dal lavoro pionieristico di Matthieu Durut, il secondo dipendente di Lokad (il primo dipendente di Lokad era un altro dottorato).

Come il lavoro di Benoit Petra, questo manoscritto non era mai stato pubblicato in precedenza sul sito web di Lokad. Sono lieto di correggere oggi questo errore.

Autore: Matthieu Durut

Data: settembre 2012

Abstract degli algoritmi di classificazione Figura degli algoritmi di classificazione

Abstract:

Gli argomenti affrontati in questa tesi sono ispirati dai problemi di ricerca affrontati dall’azienda Lokad. Questi problemi sono legati alla sfida di progettare tecniche di parallelizzazione efficienti degli algoritmi di clustering su una piattaforma di Cloud Computing. Il Capitolo 2 fornisce un’introduzione alle tecnologie di Cloud Computing, in particolare a quelle dedicate ai calcoli intensivi. Il Capitolo 3 dettaglia in modo più specifico l’offerta di Cloud Computing di Microsoft: Windows Azure. Il capitolo successivo dettaglia gli aspetti tecnici dello sviluppo di applicazioni cloud e fornisce alcuni modelli di progettazione cloud. Il Capitolo 5 è dedicato alla parallelizzazione di un noto algoritmo di clustering: il Batch K-Means. Fornisce approfondimenti sulle sfide di un’implementazione cloud del Batch K-Means distribuito, in particolare l’impatto dei costi di comunicazione sull’efficienza dell’implementazione. I Capitoli 6 e 7 sono dedicati alla parallelizzazione di un altro algoritmo di clustering, la Vector Quantization (VQ). Il Capitolo 6 fornisce un’analisi di diversi schemi di parallelizzazione di VQ e presenta i vari miglioramenti di velocità di convergenza forniti da essi. Il Capitolo 7 fornisce un’implementazione cloud di questi schemi. Sottolinea che è la natura online della tecnica VQ che consente un’implementazione cloud asincrona, che riduce drasticamente i costi di comunicazione introdotti nel Capitolo 5.

Commissione:

Commissione degli algoritmi di classificazione

Scarica la tesi (PDF)


  1. Un test per valutare se un fornitore ha un design nativo del cloud è chiedere al fornitore se, come cliente, è possibile passare da zero a 10 terabyte in poche ore senza il permesso del fornitore. La maggior parte dei fornitori di software per le aziende non opera con risorse condivise; quindi, è necessaria una negoziazione preventiva per ottenere una quantità adeguata di risorse dedicate. ↩︎ ↩︎