Resumo: A simulação de experimentos científicos apoiada por computador tem gerado uma quantidade de dados cada vez maior, o que demanda do uso de clusters de computadores que oferecem poder de processamento próximo ao dos mainframes com menor custo. No entanto, clusters devem ser compartilhados entre os cientistas, pois esses nem sempre estão presentes em laboratórios de pesquisa. Cientistas enfrentam algumas barreiras para o uso de clusters, como, falta de conhecimento para sua utilização e a distância geográfica entre os laboratórios e clusters. Workflows científicos e serviços web se apresentam como soluções viáveis para apoiar os cientistas no planejamento e execução de experimentos em clusters. As atividades de um workflow científico podem envolver serviços web e atividades humanas. Este trabalho de mestrado propõe o desenvolvimento de um ambiente de apoio à realização de experimentos científicos para um cluster de computadores, o ClusterFlow. O ambiente visa apoiar pesquisadores na definição, execução, compartilhamento e reuso de workflows científicos que são exportados para a linguagem WS-BPEL. As principais contribuições apresentadas neste trabalho são: (i) oferecer o projeto documentado de um ambiente de apoio à realização de experimentos científicos para um cluster de computadores baseado em serviços; (ii) propor um mecanismo que apóie o gerenciamento de atividades humanas em workflows científicos; e, (iii) oferecer um mecanismo de compartilhamento e reuso desses workflows. O projeto do ambiente é avaliado com base no desenvolvimento de um protótipo e um exemplo de aplicação.
Abstract: Computer-supported simulation of scientific experiments has been generating an increasing amount of data. This demands the use of computer clusters as they have high processing power whereas lower costs than mainframes. However, clusters need to be shared among scientists as they are not present in every research laboratory. Nevertheless, scientists still face barriers to use clusters such as lack of knowledge to use them and the geographic distance between research laboratories and clusters. Scientific workflows and web services has been studied as feasible solutions to support the planning and execution of experiments in clusters. The activities of scientific workflows may involve web services and human activities. This work presents an environment, named ClusterFlow, to support the definition and execution of experiments in a cluster of computers. ClusterFlow aims at supporting scientists in the definition, execution, sharing and reuse of scientific workflows exported to the WS-BPEL language. The main contributions of this work are: (i) to present a documented design of an environment to support scientific experiments in clusters based on web services; (ii) to propose a support mechanism for the management of human tasks in scientific workflows; and, (iii) to offer a mechanism for sharing and reuse scientific workflows. The design of ClusterFlow was based on a prototype development and an example of application. |