Armazenamento distribuído de dados e checkpointing de aplicações paralelas em grades oportunistas
Resumo
Grades computacionais oportunistas utilizam recursos ociosos de máquinas compartilhadas para executar aplicações que necessitam de um alto poder computacional e/ou trabalham com grandes quantidades de dados. Neste trabalho, projetamos, implementamos e avaliamos uma infra-estrutura de software que permite a execução destas aplicações em grades oportunistas. Esta infra-estrutura é constituída por: (1) um mecanismo de tolerância a falhas baseado em checkpointing que permite a execução de aplicações paralelas mesmo com a presença de falhas em nós de execução e (2) um middleware, denominado OppStore, que permite a criação de uma infra-estrutura de armazenamento distribuído de dados de baixo custo e que utiliza o espaço livre em disco de máquinas compartilhadas da grade. Avaliamos nossa abordagem através de simulações e experimentos em redes de grande área.
Referências
SBC 2008 23 Chiba, S. (1995). A metaobject protocol for C++. In OOPSLA ’95: Proceedings of the 10th ACM Conference on Object-Oriented Programming Systems, Languages, and Applications, pages 285–299.
de Camargo, R. Y., Cerqueira, R., and Kon, F. (2006a). Strategies for checkpoint storage on opportunistic grids. IEEE Distributed Systems Online, 18(6).
de Camargo, R. Y., Goldchleger, A., Carneiro, M., and Kon, F. (2006b). The Grid architectural pattern: Leveraging distributed processing capabilities. In Pattern Languages of Program Design 5, pages 337–356. Addison-Wesley Publishing Company.
de Camargo, R. Y., Goldchleger, A., Kon, F., and Goldman, A. (2006c). Checkpointing BSP parallel applications on the InteGrade Grid middleware. Concurrency and Computation: Practice and Experience, 18(6):567–579.
de Camargo, R. Y. and Kon, F. (2006). Distributed data storage for opportunistic grids. In MDS ’06: Proceedings of the 3rd ACM/IFIP/USENIX International Middleware Doctoral Symposium, Melbourne, Australia.
de Camargo, R. Y. and Kon, F. (2007). Design and implementation of a middleware for data storage in opportunistic grids. In CCGrid ’07: Proc. of the 7th IEEE/ACM Int. Symposium on Cluster Computing and the Grid, Rio de Janeiro, Brazil.
de Camargo, R. Y., Kon, F., and Goldman, A. (2005). Portable checkpointing and communication for BSP applications on dynamic heterogeneous Grid environments. In SBACPAD’05: The 17th International Symposium on Computer Architecture and High Performance Computing, pages 226–233, Rio de Janeiro, Brazil.
Elnozahy, M., Alvisi, L., Wang, Y.-M., and Johnson, D. B. (2002). A survey of rollbackrecovery protocols in message-passing systems. ACM Comp. Surveys, 34(3):375–408.
Goldchleger, A., Kon, F., Goldman, A., Finger, M., and Bezerra, G. C. (2004). InteGrade: Object-oriented grid middleware leveraging idle computing power of desktop machines. Concurrency and Computation: Practice and Experience, 16:449–459.
Rabin, M. O. (1989). Efficient dispersal of information for security, load balancing, and fault tolerance. Journal of the ACM, 36(2):335–348.
Rowstron, A. I. T. and Druschel, P. (2001). Pastry: Scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In Middleware 2001: IFIP/ACM Int. Conf. on Distributed Systems Platforms, pages 329–350, Heidelberg, Germany.
Stoica, I., Morris, R., Karger, D., Kaashoek, M. F., and Balakrishnan, H. (2001). Chord: A scalable peer-to-peer lookup service for internet applications. In SIGCOMM ’01: The 2001 Conf. on Applications, Technologies, Architectures, and Protocols for Computer Communications, pages 149–160.
Thain, D., Tannenbaum, T., and Livny, M. (2002). Condor and the grid. In Berman, F., Fox, G., and Hey, T., editors, Grid Computing: Making the Global Infrastructure a Reality. John Wiley & Sons Inc.
Weatherspoon, H. and Kubiatowicz, J. (2002). Erasure coding vs. replication: A quantitative comparison. In IPTPS ’01: Revised Papers from the First International Workshop on Peer-to-Peer Systems, pages 328–338, London, UK. Springer-Verlag.
