Anais WSCAD 2005 Submissão e Monitoração Utilizando ... · Laboratório de Pesquisa em Sistemas...

5
Anais WSCAD 2005 Submissão e Monitoração Utilizando Dispositivos Móveis para a Abordagem de Gerenciamento de Workflow em Ambientes de Grades V. C. M. Borges e M. A. R. Dantas Universidade Federal de Santa Catarina Departamento de Informática e Estatística Laboratório de Pesquisa em Sistemas Distribuídos {vcunha,[email protected] Resumo Grades computacionais são ambientes geograficamente distribuídos voltados ao compartilhamento em larga escala de recursos e serviços que podem fornecer alto desempe- nho na execução de aplicações. Neste contexto, nossa pro- posta é a utilização de dispositivos móveis para a submis- são e monitoração de tarefas, visando um gerenciamento de workjiow nos ambientes grades. Em outras palavras, neste artigo apresentamos um protótipo como trabalho de pes- quisa cujo objetivo é adicionar a um middleware de grade facilidades de gerenciamento de workjiow e antologias em- pregando dispositivos móveis. Atualmente inúmeras pesqui- sas são realizadas para melhorar as propostas existentes na área de midd/ewares de grade computacional. Entretanto uma carência de aplicativos tem sido observada em dispo- sitivos móveis com o objetivo de submissão e monitoração de tarefas. Com protótipo ora proposto esperamos que os usuários de dispositivos móveis possam submeter e monito- rar a execução de suas tar efas de forma organizada e coor- denada utilizando a abordagem workjiow. 1. Introdução Grades computacionais consistem de ambientes geogra- ficamente distribuídos, heterogêneos e dinâmicos voltados ao compartilhamento em larga escala de recursos e servi- ços que podem fornecer alto desempenho na execução de aplicações em vários domínios científicos (exemplos são a bioinformática, a química computacional, a astronomia e a climatologia) e também comerciais [8]. Devido sua mobilidade alta, dispositivos móveis estão ganhando popularidade e seu número está crescendo rapi- damente. Um ambiente de resolução de problemas base- ado em grids pode disponibilizar aos usuários de disposi- tivos móveis uma forma mais robusta para resolverem pro- 213 blemas que demandem uma grande quantidade de recursos [20, 15]. O Globus Toolkit é um pacote de software para imple- mentar ambientes de grade computacional, permitindo enti- dades compartilhar poder computacional, bancos de dados, e outras ferramentas através de limites geográficos, corpo- rativos e institucionais sem sacrificar autonomia local [2]. Atualmente inúmeras pesquisas [19, 13, 16, 11 , 24, 25] são realizadas para melhorar as propostas existentes na área de middleware de grade computacional, utilizando Globus To- olkit. Essas pesquisas têm adicionado novas ferramentas e pro- tocolos para o compartilhamento, monitoramento, desco- brimento, segurança e gerenciamento de recursos, como também ambientes para resolução de problemas. Entretanto uma carência de aplicativos tem sido observada em dispo- sitivos móveis com objetivo de submeter e monitorar a exe- cução de tarefas no ambiente grade através de interface pa- dronizada. Alguns pesquisadores [11, 24, 25], desenvolvedores de sistema e usuário de aplicação notam a necessidade de uma forma para expressar, combinar, organizar a estrutura de ta- refas multi-unidades dentro do contexto grade computacio- nal [ 16]. Para estes propósitos, o conceito de workjiow sur- giu em grade computacional descrevendo padrões de fluxo de dados e controle entre recursos grade, incluindo atores (humanos e máquinas) participando em interações [li]. O objetivo da presente pesquisa tem como característica diferencial adicionar facilidades de gerenciamento de work- jiow e ontologias para os dispositivos móveis, permitindo a um usuário submeter e monitorar remotamente a execução de tarefas no ambiente de grade computacional através de um portal voltado para dispositivos móveis. Foi desenvolvido um protótipo que disponibiliza uma forma organizada e coordenada para a execução das tarefas no ambiente de grade através da abordagem wor/...flow e em- pregando ontologia para descrever semanticamente o work- jiow a partir do portal. Este artigo é organizado da seguinte

Transcript of Anais WSCAD 2005 Submissão e Monitoração Utilizando ... · Laboratório de Pesquisa em Sistemas...

Anais WSCAD 2005

Submissão e Monitoração Utilizando Dispositivos Móveis para a Abordagem de Gerenciamento de Workflow em Ambientes de Grades

V. C. M. Borges e M. A. R. Dantas Universidade Federal de Santa Catarina

Departamento de Informática e Estatística Laboratório de Pesquisa em Sistemas Distribuídos

{vcunha,[email protected]

Resumo

Grades computacionais são ambientes geograficamente distribuídos voltados ao compartilhamento em larga escala de recursos e serviços que podem fornecer alto desempe­nho na execução de aplicações. Neste contexto, nossa pro­posta é a utilização de dispositivos móveis para a submis­são e monitoração de tarefas, visando um gerenciamento de workjiow nos ambientes grades. Em outras palavras, neste artigo apresentamos um protótipo como trabalho de pes­quisa cujo objetivo é adicionar a um middleware de grade facilidades de gerenciamento de workjiow e antologias em­pregando dispositivos móveis. Atualmente inúmeras pesqui­sas são realizadas para melhorar as propostas existentes na área de midd/ewares de grade computacional. Entretanto uma carência de aplicativos tem sido observada em dispo­sitivos móveis com o objetivo de submissão e monitoração de tarefas. Com protótipo ora proposto esperamos que os usuários de dispositivos móveis possam submeter e monito­rar a execução de suas tarefas de forma organizada e coor­denada utilizando a abordagem workjiow.

1. Introdução

Grades computacionais consistem de ambientes geogra­ficamente distribuídos, heterogêneos e dinâmicos voltados ao compartilhamento em larga escala de recursos e servi­ços que podem fornecer alto desempenho na execução de aplicações em vários domínios científicos (exemplos são a bioinformática, a química computacional, a astronomia e a climatologia) e também comerciais [8].

Devido sua mobilidade alta, dispositivos móveis estão ganhando popularidade e seu número está crescendo rapi­damente. Um ambiente de resolução de problemas base­ado em grids pode disponibilizar aos usuários de disposi­tivos móveis uma forma mais robusta para resolverem pro-

213

blemas que demandem uma grande quantidade de recursos [20, 15].

O Globus Toolkit é um pacote de software para imple­mentar ambientes de grade computacional, permitindo enti­dades compartilhar poder computacional, bancos de dados, e outras ferramentas através de limites geográficos, corpo­rativos e institucionais sem sacrificar autonomia local [2]. Atualmente inúmeras pesquisas [19, 13, 16, 11 , 24, 25] são realizadas para melhorar as propostas existentes na área de middleware de grade computacional, utilizando Globus To­olkit.

Essas pesquisas têm adicionado novas ferramentas e pro­tocolos para o compartilhamento, monitoramento, desco­brimento, segurança e gerenciamento de recursos, como também ambientes para resolução de problemas. Entretanto uma carência de aplicativos tem sido observada em dispo­sitivos móveis com objetivo de submeter e monitorar a exe­cução de tarefas no ambiente grade através de interface pa­dronizada.

Alguns pesquisadores [11, 24, 25], desenvolvedores de sistema e usuário de aplicação notam a necessidade de uma forma para expressar, combinar, organizar a estrutura de ta­refas multi-unidades dentro do contexto grade computacio­nal [ 16]. Para estes propósitos, o conceito de workjiow sur­giu em grade computacional descrevendo padrões de fluxo de dados e controle entre recursos grade, incluindo atores (humanos e máquinas) participando em interações [li].

O objetivo da presente pesquisa tem como característica diferencial adicionar facilidades de gerenciamento de work­jiow e ontologias para os dispositivos móveis, permitindo a um usuário submeter e monitorar remotamente a execução de tarefas no ambiente de grade computacional através de um portal voltado para dispositivos móveis.

Foi desenvolvido um protótipo que disponibiliza uma forma organizada e coordenada para a execução das tarefas no ambiente de grade através da abordagem wor/...flow e em­pregando ontologia para descrever semanticamente o work­jiow a partir do portal. Este artigo é organizado da seguinte

Anais WSCAD 2005

forma: seção 2 cita trabalhos relacionados com a proposta, seção 3 descreve detalhes do protótipo e seção 4 apresenta­se a conclusão da proposta.

2. Trabalhos Relacionados

A facilidade de uso da computação móvel para submis­são e controle de tarefas em ambientes de grade computaci­onal permite prover para os usuários de dispositivos móveis o acesso ao processamento existente nos ambientes grade. Em [12] existe uma proposta de um protótipo, cuja arqui­tetura distribuída tem como característica ser baseada em agentes para análise de dados físicos de alta velocidade em dispositivos móveis. Um portal denominado JCiarens foi desenvolvido com a finalidade de permitir o acesso aos da­dos que estão sendo gerados pela grade computacional e analisá-los em dispositivos móveis

Um problema existente na utilização de grades compu­tacionais, tanto para usuários de dispositivos móveis como também para usuários de máquinas desktops, é a organiza­ção da execução de alguma tarefa no ambiente grade, visto que esta tarefa pode conter diversas interações entre progra­mas e banco de dados armazenados em diferentes lugares. Tudo isso fazendo parte de uma mesma tarefa que deter­mina desta forma um fluxo de trabalho, onde a tarefa é exe­cutada em etapas chamadas também de atividades.

Para ajudar na organização e coordenação de todas estas atividades envolvidas em uma execução de uma tarefa foi empregado o conceito de workjlow no ambiente de grade computacional [13, 11, 24, 25, 4). Segundo [1), workjlow pode ser definido como uma automação de um processo ne­gociável, como um todo ou parte, durante o qual documen­tos, informações ou tarefas são passadas de um participante para um outro para determinada ação, de acordo com um conjunto de regras de procedimento estabelecidas.

A abordagem wor/..jlow é largamente utilizada em geren­ciamento de processos, ela está também crescendo para ser um importante método de relacionamento entre cooperação, composição e conversação de serviços em ambientes gra­des [13, 11, 24, 25). Um sistema de gerenciamento work­fiow define, cria e gerencia a execução de workjiows através do uso de softwares, executando em um ou mais mecanis­mos workfiow, na qual são capazes de interpretar a defini­ção de processos, interagirem com os participantes do work­fiow e invocar o uso de aplicações e ferramentas [22).

Muitas linguagens, ferramentas e padrões são propos­tos paro especificar workjiow, tais como BPEL4WS, GSFL, Condor DAGman, XPDL, BPML, PNML e UNICORE e XLANG [ 11]. A maioria das linguagens prioriza a descri­ção do relacionamento e interação entre serviços. Sendo as­sim, [22) propõe um método para construir um sistema de gerenciamento distribuído baseado em serviços em ambi­ente grade. Este sistema de gerenciamento workflow base-

ado em serviço abstrai e envolve os serviços grade em alto nível, compondo estes serviços dentro de uma federação.

A interoperabilidade, reuso e compartilhamento de co­nhecimento é importante em ambientes de grades compu­tacionais, onde diferentes pessoas necessitam acessar, pro­ver e trocar dados. Para obtenção dessas características, on­tologias são usadas para desenvolvimento de modelagens que expressem o conhecimento possuído pelo domínio, for­mando uma camada de comunicação única e comum a to­dos os usuários. Segundo [10, 7, 9], ontologia é definida como uma especificação formal e explícita de uma concei­tuação compartilhada.

214

O emprego de uma ontologia descrevendo os recursos (máquinas, bancos de dados e programas) utilizados em cada atividade que compõem um determinado workfiow e qual problema específico o mesmo pode resolver, fornece conhecimento ao usuário para que ele escolha um workfiow que pode melhor resolver seu problema. Semelhante como mostrado em [23), onde é discutida a semântica de pro­cesso e necessária descrição de caso para o gerenciamento de workfiow em ambientes grade usado para aplicações ci­entificas e a estrutura de ontologias básicas suportando a execução de tarefas.

Em [4) é proposta uma arquitetura de programas que permitem pesquisadores biomédicos encontrarem e criarem módulos de programas de bioinformática para resolver pro­blemas relativos à área sem a necessidade de conhecer de­talhes de desenvolvimento dos programas e banco de dados contidos no grade. Empregam-se abordagens como: ontolo­gias para descrever a semântica de origem de dados, com­ponentes de softwares específicos ao domínio e gerencia­mento de workjiow para especificar em modo abstrato apli­cações complexas e distribuídas.

Em [ 14) é proposta uma ontologia com um modelo de vocabulário, utilizada para oferecer representação escalável e fácil navegação de informação de contexto, agindo em in­terface de usuário, especialmente interface de usuário das Series 60 de telefone móvel. Esta ontologia é utilizada na ferramenta Context Studio, que é uma ferramenta de per­sonalização de aplicação semi-automatizada para adapta­ção baseada em contexto. O Context Studio é desenvolvido especialmente para usuários que possuem telas pequenas, como usuários de dispositivos móveis.

3. Protótipo

Nesta seção apresentamos os seguintes componentes do protótipo: Portal e Gerenciador Workftow. São descritas as funcionalidades de cada serviço oferecido por ambos com­ponentes e algumas tecnologias que serão utilizadas para construção de cada componente do protótipo.

Anais WSCAD 2005

3.1. Portal

Este componente pennite os usuários de dispositivos mó­veis acessarem a ontologia de descrição de workjlows, atra­vés de um portal. A utilização de portal juntamente com ontologia fornece um modelo padronizado e amigável de acesso às informações sobre os vários workjlows definidos para execução no ambiente grade [5]. O usuário de dis­positivo móvel navegará na ontologia e selecionará o mais adequado workjlow que melhor resolve seu problema. Em seguida o pedido de submissão do workflow escolhido é encaminhado ao componente Gerenciador Workjlow, assim como mostrado na figura 1.

Logo em seguida uma instância de monitoramento cha­mada Monitor é criada para acompanhar a execução do workjlow, esta instância de monitoramento recebe um Iden­tificador do workjlow que está sendo executado, com este identificador ele acessará as informações dinâmicas da exe­cução do workjlow requisitado pelo usuário, estas informa­ções estão armazenadas em um repositório no componente Gerenciador Workflow.

3.2. Gerenciador Workftow

O componente Gerenciador Workflow é baseado em ser­viços, semelhante ao apresentado em [22], dentre os quais são abordados: o serviço Controlador, o serviço de Instância e o serviço Mecanismo. Cada workjlow adrnininstrado por este componente tem seu próprio serviço Mecanismo, ser­viço Instância e um Identificador único. A comunicação en­tre este componente e o middleware grade Globus será feita utilizando a tecnologia Java Commodity Grid Kit [21].

Em seguida são descritos os serviços disponibilizados por este componente, como ilustrado na figura 1:

• Controlador: recebe o pedido de submissão, retoma o Identificador do workjlow que está sendo executado para o Monitor, cria a cada pedido de submissão re­cebido os serviços Mecanismo e Instância referente ao workjlow submetido. Depois que o worl..jiow tenninar sua execução, o Controlador vai destruir os serviços Mecanismo e Instância respectivos ao workjlow que teve sua execução finalizada;

• Mecanismo: submete e controla a execução de todas as atividades que fazem parte do workjlow no ambi­ente grade. A submissão dependerá da disponibilidade dos nodos pertencente ao grade e restrições de execu­ção, por exemplo, dados não podem ser movidos de um local para outro. Este serviço interage com o com­ponente do g lobus chamado Globus Resource Alloca­tion Manager (GRAM) [2].

• Instância: responsável por coletar as informações de execução de cada atividade que faz parte do workjlow

215

e armazená-las no repositório de metadados, exemplos destas informações são: o status da atividade atual e a atividade que se encontra a execução do workjlow. Este serviço interage com o componente do globus cha­mado Monitoring and Discovery Service (MDS) [2].

Modelo

lêS, ~

I

Figura 1. Modelo do Protótipo

O workjlow será modelado com base em redes de Pe­tri, que permite a definição de workjlow arbitrários com so­mente poucos elementos gráficos, apenas pela conexão de componentes de softwares e dados. O tipo de rede de Petri utilizado corresponderá a redes de Petri com tokens indivi­duais (redes de Petri colorida) [11] . Termos como conflito e deadlock são propriedades bem definidas das redes de Petri que podem ajudar quando for analisar e aperfeiçoar o work­jlow de uma tarefa grade.

As redes de Petri não serão utilizadas somente para mo­delar, mas também para controlar o workjlow. Uma lingua­gem de descrição baseada em XML de redes de Petri cha­mada PNML (Petri Net Markup Language) será utilizada para declaração de estados, transições e arcos que cons­troem a rede de Petri da tarefa grade [ 11].

Para desenvolver a ontologia utilizaremos a Linguagem OWL [6], devido a dois fatores: por ser um padrão de lin­guagem para criação de ontologias, reconhecido pela W3C e por apresentar todas as características de outras lingua­gens, tais como: RDF e DAML+OIL. Para edição da onto­logia será utilizado o editor Protegé-2000 [18], onde são descritos os conceitos pertencentes à ontologia, juntamento com seus atributos. Os fatores que levaram a sua escolha são: por ser um software livre e disponível em diversas pla-

Anais WSCAD 2005

taformas (exemplos são Windows, Linux, Mac OS, AIX, Solaris e HP UX).

No desenvolvimento do portnl para dispositivos móveis será utilizado J2ME Wireless Toolkit [3], por fornecer cer­tas facilidades (exemplos são os emuladores, a documenta­ção e exemplos de código fonte disponibilizados na web) e portabilidade [ 17]. O portnl oferecerá uma interface amigá­vel ao usuário para acompanhar a execução workflow e se­melhante como mostrado na figura 2.

Figura 2. Interface de monitoramento work­flow em dispositivos móveis

4. Conclusão

Neste artigo apresentamos um protótipo que tem como contribuição diferencial o provimento de meios para que usuários de dispositivos móveis possam usufruir o poder computacional oferecido por grades computacionais. Em adição, esta contribuição permite que usuários acompanhem remotamente a execução de tarefas de forma organizada, combinada, coordenada e distribuída pelos recursos e ser­viços grade através de abordagens empregadas como work­jlow, ontologia e portal.

O protótipo descrito neste artigo evidencia a usabilidade de grade computacional de modo que o usuário não pre­cise ter conhecimento de detalhes muito específicos do mid­dleware G/obus. Como trabalho futuro de pesquisa, o pro­tótipo descrito vai ser disponibilizado como um serviço no middleware G/obus.

Referências

[I] Workflow management coalition. WJMC-TC00-1003, Reje­rence model and API specification, 1996.

216

[2] GLOBUS A/Jiance. G/obus Toolkit 4.0. Disponível em: http://www.globus.org. 2005.

[3] Sun Java Wireless Too/kit (Java 2 P/atfomr, Micro Edition (J2ME) Wireless Toolkit) . Disponível em: http://java.sun.com/products/sjwtoolkit/, 2005.

[4] M. Cannataro, C. Comito, A. Guzzo, and P. Veltri. lntegra­ting ontology and workflow in proteus, a grid-based problem solving environment for bioinformatics. lntemationa/ Con­jerence on bifomration Technology: Coding and Compllting (ITCC'04), 2(2):5-7, Abril2004.

[5] T. Colvero and M. A. R. Dantas. Portais de Grids Compu­tacionais Utilizando Ontologia para Descoberta de Sen•iços e Recursos Computacionais. Universidade Federal de Santa Catarina, Florianópolis-Santa Catarina, 2005.

[6] O. Corcho, M. Fernández-Lópes, and A. Gómez-Péres. OmoWeb - Tecnical Roadmap v 1.0. Disponível em: http://ontoweb.org/About/Deliverables/, 2003.

[7] D. Fensel. Ontologies: Silver bullet for knowledge mana­gement and eletronic commerce. Springer - Verlag, Ber/in, 2000.

[8] I. Foster and C. Kesselman. The Grid: Blueprint for a NeiV Computing bifrastructure. Morgan Kaufmann Publishers Inc., San Francisco, USA, 1999.

[9] T. Gava and C. Menezes. Especificação de software baseada em antologias. J/1 Escola de biformática. pages 167-205, 2003.

[10] T. R. Gruber. Toward principies for the design of ontolo­gies used for knowledge sharing. Imernacional Workshop on Fomra/ Ontology, (I), 1993.

[li] A. Hoheisel. User tools and languages for graph-based grid workftows. Workshop GGF-10 Grid Workj/OIV, Berlin­Gemwny, Março 2004.

[12] A. lkram, A. Ali, A. Anjum, C. Steenberg, H. Newman, J . Bunn. M. Thomas, and T. Azim. Grid enabled distributed analysis using handheld devices. Research Group, NDGC, 2005.

[13] C. Jung, M. Einhoff, S. Noll, and N. Schiffner. Gridjob buil­der - a workftow editor for computing grids. illlemational Conjerence on bifomration Teclmology: Coding and Com­puting (ITCC'04), 2(2):95- 99, Abril2004.

[14] P. Korpipaa, J. Hiik.k.ila, J. Kela, S. Ronkainer, and I. Kansalti. Utilising context ontology in mobile device application per­sonalisation. ACM lntemational C01rjerence Proceeding Se­ries. 3rd illfemational c01rjerence 0 11 Mobile and ubiquitous multimedia. pages 133-140, 2004.

[15] S. Kurkovsky, A. R. Bhagyavati, and M. Yang. Modeling a grid-based problem solving environment for mobile devices. lmemational Conjerence 011 biformation Technology: Co­ding and Computing (ITCC'04). 2(2):135- 136, Abril 2004.

[16] A. Mayer, S. McGough, N. Furmento, W. Lee, M. Gulamali, S. Newhouse, and J. Darlington. Workflow expression com­parison of spatial and temporal approaches. Workshop GGF-10 Grid Workf/ow, Ber/in-Gemrany, Março 2004.

[17] J. W. Muchow. Core J2ME Tecnologia and MIDP. MA­KRON BOOKS, 2004.

Anais WSCAD 2005

[18] N. Noy, R. Fergerson, and M. Musen. Owl web ontology language overview: combining interoperability and flexibi­lity. 12th International Conference on Knowledge Enginee­ring and Knowledge Managemem-Europe Know/edge Aqui­sition Workshop (EKAW), Outubro 2000.

[19) A. Pernas and M. A. R. Dantas. Ontologias aplicadas a des­crição de recursos em ambientes grid. INFOCOMP Joumal o f Complller Science, 3(2):26-31, Novembro 2004.

[20) T. Pham, L. Huang, and C. Dulan. Challenge: Integrating mobile wireless devices into the computational grid. 8th 1n­temational Conference 011 Mobile Compllting mui Networ­king (MOBICOM'02), pages 271-278, Setembro 2002.

[21) G. von Laszewski, I. Foster, J . Gawor, and P. Lane. A Java Commodity Grid Kit. Concurrency and Complllation: Prac­tice and Experience. pages 643-662. 2001.

[22) M. Yang, H. Liang, and B. Xu. S-wfms: A service-based workflow management system in grid environment. 19th 111-ternationa/ Conjere11ce 011 Advanced Infornwtion NetiVor­king and Applications (A/NA '05), 1( 1):293-297, Março 2005.

[23] H. Yu, X. Bai, G. Wang, Y. Ji. and D. C. Marinescum. Me­tainformation and workflow management for solving com­plex problems in grid environments. 18th lnt. Parai/e/ and Disrribwed Proc. Symp. (IPDPS 2004), 93(3):613-630, Março 2004.

[24] J. Yu and R. Buyya. A novel architecture for realizing grid workftow using tuple spaces. 5th IEEEIACM Imemario­na/ Workshop 011 Grid Computing (GRID '04 ), 0(0): 119-128, Novembro 2004.

[25] J. Yu and R. Buyya. A taxonomy of workflow management systems for grid computing. Technica/ Report. GRIDS-TR-2005-1, Grid Compwing and Disrributed Systems Laboro­fOI)~ University of Melbourne, Austra/ia, Março 2005.

217