Post on 31-Mar-2023
RFLOW: UMA PROPOSTA DE ARQUITETURA PARA PROVENIÊNCIA EM
WORKFLOWS ESTATÍSTICOS
José Antônio Pires do Nascimento José Antônio Pires do Nascimento Sérgio M. Serra da CruzSérgio M. Serra da Cruz
joseantonio.pires@embrapa.br, serra@ufrrj.brPPG-MMC
Contextualização
• Este trabalho aborda os temas:– Sistema R (SW Estatístico)
– Workflow Estatístico (scripts do Sistema R)
– Modelagem de experimentos
– Sistemas Gerenciadores de Workflow Científico (SGWfC)
– Banco de Dados
– Metadados de Proveniência (prospectiva e retrospectiva)
•Há anos atrás, o problema era como obter os dados.
•Hoje, o gargalo são os grandes volume de dados produzidos e coletados pelos experimentos (Big Data).
•Dados heterogêneos, semi-estruradados, distribuídos de longo prazo e compartilhado por equipes dispersas no espaço e no tempo (nuvem, internet, sensores, etc.)
Fonte: www2.bioetanol.org.br/escibioenergy
Desafios
• Ferramentas facilitadoras para os cientistas (SGWfC)
• Rastreabilidade dos dados (Proveniência)
• Integração da Tecnologia da Informação com a Ciência. Daí surgiu o conceito de e-Ciência (HEY et al., 2009).
e-Ciência caracteriza-se pelo apoio ao cientista para o desenvolvimento de ciência em larga escala utilizando infra-estrutura computacional.
Como resolver isto?
O que é um Workflow científico?
→ Representa um estudo baseado em simulação, segue um conjunto de fases (Composição, Execução, Análise e Proveniência [Oinn et. al.,2007])
Exemplo de workflow científico que recebe dados científicos, analisa e gera uma saída
gráfica (experimento in sílico).
→ São abstrações que representam a cadeia de atividades dentro de um experimento científico.
→ São gerenciados por Sistemas de Gerência de Workflows Científicos (SGWfC)
Fundamentação Teórica
•Sistemas de Gerência de Workflows Científicos
• Definem e executam os workflows
• Auxiliam no controle de falhas garantindo a integridade
• Acessam/Armazenam/Consultam grandes volumes de dados usando SGBD
• Rastreiam a proveniência dos dados
Fundamentação Teórica
Inúmeros Sistemas de Gerência de Wf
Apple’s Mac OS X AutomatorAskalonBigbross BossaBea's WLIBioPipe BizTalk BPWS4J BreezeCarnotCon:cern
DAGMan DiscoveryNetDralasoftEnhydra SharkFilenetFujitsu's i-FlowGenFlowGridAnt Grid Job Handler GRMS (GridLab Resource Management System)
Open Business EngineOracle's integration platformOSWorkflowOpenWFEQ-Link
PegasusPipeline PilotPlatform Process Manager
P-GRADEPowerFolder
PtolemyIISavvionSeebeyondStaffwareSonic's orchestration server
Swift
GWFE GWESIBM's holosofx toolIT Innovation Enactment Engine ICENIInforsenseIntaliojBpmJIGSA JOpera
Kepler KarajanLombardiMathWSMicrosoft WWFNetWeaverOakgrove's reactorObjectWeb BonitaOFBizOMII-BPEL
ScyFLOW SDSC Matrix SHOP2
Taverna Triana TridentUltimusVersata
VisTrails WebMethod's processwftk XFlowYAWL Engine Yahoo PipesWebAndFlo WebIOSWildfireWerkflowwfmOpenWFEEWOODSSZbuilderE muito mais….
[myGrid, Goble 2007]
Problema da Pesquisa(contexto Embrapa Agrobiologia)
Grandes massas de dados geradas pelos pesquisadores e por experimentos realizados em todo o Brasil.
Forte utilização do Sistema R
Dificuldade na manutenção dos scripts (uso/compartilhamento)
Dificuldade de reprodutibilidade dos experimentos
Falta Proveniência (rastreabilidade) nos dados
Objetivo da Pesquisa de Mestrado
• Apresentar uma abordagem denominada RFlow, que permite o gerenciamento dos workflows estatísticos e mitiga parte das limitações dos sistemas estatísticos no que diz respeito a ausência de gerenciamento da proveniência.
• Facilitar a captura de proveniência e a gestão de experimentos científicos baseados em workflows estatísticos.
• Desenvolver um ambiente computacional e um banco de dados que auxilie os cientistas que manipulam grandes volumes de dados manipulados pelos workflows
Arquitetura RFlow Visão Geral
• Representação conceitual da arquitetura, com suas camadas e componentes.
12
Protótipo do Meta-Workflow (ExecScript)
Script R legado
Coletor de proveniência
Meta-workflow para Kepler
1
Camadas da arquitetura Rflow
* Proposta de organizar e implementar novas Proposta de organizar e implementar novas funcionalidadesfuncionalidades
A arquitetura é definida em três camadas principais, cada camada possui seus componentes (baseada no MVC):
(i) Core - contém os componentes básicos para o funcionamento da arquitetura (modelo).
(ii) Serviços de configuração – contém os componentes que são utilizados para viabilizar a configuração do Rflow (controle).
(iii) Serviços de Interface – oferecem ao cientista uma interface Web (visão).
2
Trabalhos Relacionados
• De modo geral, existem poucos estudos sobre proveniência em sistemas estatísticos
• Silles e Runnalls (2010) e Runnalls (2013) propõe a refatoração do código do sistema R para incorporar coleta de proveniência no motor de execução
→ Sistema CXXR é uma variante do R
→ Requer alterações nos scripts R legados
→ não disponível para o público
Trabalhos Futuros
• Amadurecimento da arquitetura RFlow
• Avaliação de mais scripts R
• Avaliar a proposta com outros SGWfC
• Continuar o desenvolvimento dos módulos, em especial aos plugins do Core
• Atualização do schema, tornando-a compatível com a especificação PROV recentemente homologada pelo W3C.
REFERÊNCIAS
Nascimento e Cruz (2013), RFlow: Uma Abordagem de Reutilização de Workflows Estatísticos Legados. In: VII e-Science workshop, 2013, Maceió - Alagoas. XXXIII Congresso da Sociedade Brasileira de Computação
Mattoso, M. et al., (2009), "Desafios no apoio à composição de experimentos científicos em larga escala". In: Seminário Integrado de Software e Hardware (XXXVI SEMISH), pp. 307-321.
Runnalls, A. (2013) “CXXR: an extensible R interpreter “In: Wiley Interdisciplinary Reviews: Computational Statistics. DOI: 10.1002/wics.1251.
Qin, Z., Xing, J., Zheng, X., (2008), Software architecture. Springer. 1st edition.
Ranabahu, A., Anderson, P. Sheth, A. P. (2011) “The Cloud Agnostic e-Science Analysis Platform”. IEEE Internet Computing v. 15.pp. 85-89.
Silles, C. A., Runnalls, A. (2010) “Provenance-Awareness in R”. LNCS 6378. Springer, pp. 64-72.
www2.bioetanol.org.br/escibioenergy