1 tesi di laurea Anno Accademico 2005/2006 relatore Ch.mo prof. Domenico Cotroneo correlatore Ing. Generoso Paolillo candidato Emanuele Di Pascale Matr. 534/789
2 Il Contesto Le moderne applicazioni scientifiche richiedono imponenti risorse rse elaborative e di I/O Evoluzione da sistemi monolitici (Mainframe( Mainframe) ) a soluzioni distribuite (Cluster) Necessità di sviluppare uno strato software in grado di nascondere l ambiente l distribuito e che permetta di sfruttare al massimo le potenzialità del cluster Nascono i Parallel File System: : i dati vengono scritti e letti in parallelo da più client su più Storage Server (striping).
3 Elevato Throughput di I/O (Prestazioni) Scalabilità Affidabilità e Tolleranza ai Guasti Semplicità di Utilizzo e di Manutenzione Requisiti spesso in contrasto fra loro! Parallel File Systems Caratteristiche Ideali L evoluzione dei PFS da semplici scratch spaces a veri e propri File System persistenti ha esteso il campo di ricerca dalle sole prestazioni alla sicurezza dei dati (Data Avaliability e Data Reliability)
4 Soluzioni Presenti in Letteratura 1/2 Tecniche di Rilevazione dei Guasti HeartBeat: Ciascun componente invia periodicamente delle pulsazioni ad un server centrale; la mancata ricezione di una o più pulsazioni indica che il nodo in questione ha qualche problema. (Esempi: GPFS) Timeout: Le operazioni di I/O seguono specifici protocolli che prevedono l utilizzo l di timer. Se ad un messaggio di richiesta non corrisponde una conferma entro un dato intervallo di tempo si assume che si sia verificato un guasto. (Esempi: CSAR-2, Lustre)
5 Soluzioni Presenti in Letteratura 2/2 Tecniche RAID Distribuite RAID 1: 1 I dati vengono replicati su più Server di I/O Dispendioso in termini di Spazio Utilizzato Facile da implementare e da gestire Non incide significativamente sulle prestazioni del sistema Esempi: Lustre, CEFT-PVFS RAID 5: 5 Le informazioni di parità vengono distribuite su più Server di I/O Più efficiente in termini di spazio Presenta problemi per la gestione di operazioni concorrenti di I/O Comporta un overhead per la computazione della parità Esempi: Zebra, Panasas
6 Problematica Le tecniche RAID non sono ottimali per sistemi distribuiti e paralleli: Sono in grado di tollerare al più il fallimento di un singolo nodo per ciascun gruppo di parità Garantiscono una scarsa flessibilità in quanto non permettono di essere facilmente configurate dall utente per ottenere il grado di affidabilità desiderato Il recupero dei dati in seguito ad un guasto richiede l identificazione l del nodo malfunzionante
7 Vantaggi Soluzione Proposta: Gli Erasure Code È in generale possibile tollerare il fallimento di un numero di nodi superiore rispetto alle soluzioni RAID È posibile definire il livello di robustezza del sistema (ed il relativo costo in termini di spazio di memorizzazione aggiuntivo) in base alle esigenze dell utente In caso di fallimenti non è necessario identificare i nodi guasti; fintanto che rimangono in funzione un certo numero di server è possibile ricostruire i dati corretti da un qualunque loro sottoinsieme Svantaggi Si introducono operazioni di codifica e decodifica dei dati, spesso costose dal punto di vista computazionale I codici LDPC (più efficienti rispetto a quelli di Reed-Solomon Solomon) richiedono la lettura di un numero maggiore di blocchi per la ricostruzione dei dati originari
8 Possibili Strategie di Impiego Lazy Redundancy: Si applicano i codici LDPC solo alla memorizzazione dei checkpoint; Fa leva su primitive dell interfaccia MPI; È efficiente ma poco flessibile; Non garantisce l affidabilitl affidabilità dei dati modificati in seguito all ultimo checkpoint. Soluzione Ibrida: Si utilizza il RAID1 per la scrittura di piccoli dati, i codici LDPC per operazioni aggregate di notevoli dimensioni; Garantisce una maggiore affidabilità dell approccio Lazy; Comporta una perdita in termini di prestazioni e di spazio utilizzato.
9 Conclusioni e Sviluppi Futuri Non esistono in letteratura studi completi sulle soluzioni qui proposte: Analisi del comportamento dei codici LDPC in situazioni reali con un numero finito di nodi Impatto di tali codici sulle operazioni di I/O in ambienti ad elevate prestazioni Per una valutazione più significativa di queste strategie sarà necessario procedere alla loro implementazione su un sistema reale e all esecuzione di benchmark specifici. E già disponibile un testbed su cui fare sperimentazione (cluster( con PVFS2 nei Laboratori del CINI)