Use este identificador para citar ou linkar para este item: http://hdl.handle.net/1843/RVMR-6HKGXG
Tipo: Dissertação de Mestrado
Título: Desempenho e disponibilidade em sistemas distribuídos em larga escala
Autor(es): Bruno Rocha Coutinho
Primeiro Orientador: Wagner Meira Junior
Primeiro membro da banca : Dorgival Olavo Guedes Neto
Segundo membro da banca: Renato Antonio Celso Ferreira
Terceiro membro da banca: Lúcia Maria de Assumpção Drummond
Resumo: A Ciência da Computação tem evoluído e alcançado diversas áreas do conhecimento tais como a biologia, a geografia, a astronomia, entre outras. Os Sistemas de Fluxo de Trabalho Científico foram criados com o objetivo de ajudar os pesquisadores dessas áreas nos seus processos de análise de dados. Esses sistemas permitem aos cientistas criar e organizar tarefas relativas aos seus experimentos; executar essas tarefas eficientemente e transparentemente em um ambiente distribuído; assim como monitorar toda a execução.Os desafios para o projeto e a implementação desses sistemas são muitos, principalmente devido às características das aplicações que geram os fluxos de trabalho científicos. Elas são consideradas aplicações intensivas em dados e processamento as quais criam uma enorme quantidade de dados durante a execução e executam por longos períodos. Desta forma, alguns dos desafios para projetar os sistemas de fluxo de trabalho científico são: armazenar, pesquisar e gerenciar grandes bases de dados distribuídas, gerenciar os dados de entrada e de saída, escalonar e monitorar a execução desses fluxos de trabalho em ambientes distribuídos, assim como tratar a ocorrência de falhas tanto de software quanto de hardware que podem acontecer durante a execução.Este trabalho investiga o uso de mecanismos que, de forma transparente, aumentem a disponibilidade de sistemas de fluxo de trabalho científico, de tal forma que o trabalho a ser refeito após uma falha no sistema seja mínimo. Esses mecanismos utilizam como base características próprias desses sistemas para a construção de um sistema de armazenamento dos dados necessários para a recuperação das aplicações após uma falha. Esse sistema provê um armazenamento assíncrono dos dados de tal forma que não há necessidade do travamento da execução das aplicações para que ele aconteça. Os resultados experimentais mostram que o sistema é capaz escalar a grandes bases de dados, e que a nossa abordagem introduz muito pouco overhead na execução das aplicações.
Abstract: Scientific workflow systems provide scientists with a suite of tools and infrastructure to build data analysis applications from reusable components and execute them. The challenges to implementing workflow middleware support for scientific applications are many. Analysis oftentimes requires processing of large volumes of data through a series of simple and complex operations.To support data processing efficiently, a workflow middleware system should leverage distributed computing power and storage space (both disk and memory space) and implement optimizations for large data retrieval and scheduling of I/O and computation components. Another challenging issue is to enable fault tolerance in the middleware fabric. An analysis workflow with complex operations on large data can take long time to execute. The probability of a failure during execution should be considered. Efficient mechanisms are needed to support recovery from a failure without having to redo much of the computation already done.In this thesis, we propose and evaluate a fault tolerance framework for applications that process data using a pipelined network of user-defined operations in a distributed environment. We provide functionality and protocols to efficiently manage input, intermediate, and output data and associated metadata and to recover from certain types of faults that may occur in the system. In our approach, intermediate results and messages exchanged among application components are maintained in a distributed data management infrastructure along with additional metadata. The infrastructure consists of a persistent storage manager that stores check-pointed information in a distributed database and a distributed cache that reduces the overhead of check-pointing. We have developed a protocol among the various components of the system to manage check-points and related information efficiently. The experimental results show that our approach provides an asynchronous data storage mechanism that minimizes overhead to the execution of the workflow.
Assunto: Software Confiabilidade
Computação
Tolerancia a falha (Computação)
Idioma: Português
Editor: Universidade Federal de Minas Gerais
Sigla da Instituição: UFMG
Tipo de Acesso: Acesso Aberto
URI: http://hdl.handle.net/1843/RVMR-6HKGXG
Data do documento: 17-Out-2005
Aparece nas coleções:Dissertações de Mestrado

Arquivos associados a este item:
Arquivo Descrição TamanhoFormato 
brunorochacoutinho.pdf1.06 MBAdobe PDFVisualizar/Abrir


Os itens no repositório estão protegidos por copyright, com todos os direitos reservados, salvo quando é indicado o contrário.