Gerência de Experimentos Científicos em Nuvens de Computadores: Oportunidades de Pesquisa em Banco de Dados

Tamanho: px
Começar a partir da página:

Download "Gerência de Experimentos Científicos em Nuvens de Computadores: Oportunidades de Pesquisa em Banco de Dados"

Transcrição

1 Gerência de Experimentos Científicos em Nuvens de Computadores: Oportunidades de Pesquisa em Banco de Dados Daniel de Oliveira Marta Mattoso

2 Quem nós somos Professora associada 4 no Programa de Engenharia de Sistemas e Computação da COPPE/UFRJ Bolsista de produtividade em pesquisa do CNPq nível 1C. Publicou mais de 200 artigos completos em revistas e congressos. Foi diretora de publicações da SBC no período de 2005 a Coordena diversos projetos de pesquisa com financiamento do CNPq, Capes, INRIA e FAPERJ Atua principalmente nas áreas de distribuição e paralelismo em bancos de dados, workflows científicos em ambientes de paralelismo e gerência de dados de proveniência. Profa. Marta Mattoso, D.Sc.

3 Quem nós somos Professor adjunto do Instituto de Computação da Universidade Federal Fluminense (UFF) desde Recebeu o grau de Doutor em Ciências pela UFRJ em Publicou mais de 50 artigos em periódicos indexados e em congressos nacionais e internacionais. Seus interesses de pesquisa incluem bancos de dados, computação em nuvem, gerência de workflows científicos, paralelismo de dados, bioinformática e mineração de dados. É membro da ACM, IEEE e SBC. Prof. Daniel de Oliveira, D.Sc.

4 Grupo de Pesquisas Marta Mattoso, D.Sc. COPPE/UFRJ Daniel de Oliveira, D.Sc. IC/UFF Eduardo Ogasawara, D.Sc. CEFET/RJ Pós-doutorandos Kary Ocaña, D.Sc. COPPE/UFRJ Alunos de D.Sc. Jonas Dias Flavio Costa

5 Colaborações Atuais INRIA Patrick Valduriez LNCC Fabio Porto Luiz Gadelha Jr.

6 Roteiro do Tutorial Motivação Workflows Científicos Nuvens de Computadores Proveniência de Dados Máquinas de Workflow para Nuvem Aplicação de Proveniência em e-science Demo

7 e-science A combinação de pesquisa em computação e modelagem matemática que proporciona a aceleração da pesquisa em outras áreas do conhecimento Fonte: www2.bioetanol.org.br/escibioenergy

8 Método Científico Definir problema Buscar trabalhos existentes Definir hipótese Tentar novamente Validar com experimento Analisar resultados Hipótese é verdadeira Hipótese é falsa Reportar resultados

9 Método Científico in silico Ten years ago, the problem was how to obtain data. Nos dias de hoje o gargalo se encontra em determinar quais estratégias computacionais serão utilizadas para que o cientista possa analisar esse grande volume de dados produzido e coletado Dados geralmente são heterogêneos e distribuídos Fonte: www2.bioetanol.org.br/escibioenergy

10 O quarto paradigma The speed at which any given scientific discipline advances will depend on how well its researchers collaborate with one another, and with technologists, in areas of e- Science such as databases, workflow management, visualization, and cloud computing technologies.

11 O quarto paradigma The speed at which any given scientific discipline advances will depend on how well its researchers collaborate with one another, and with technologists, in areas of e- Science such as databases, workflow management, visualization, and cloud computing technologies. O dado não pode mais ser gerenciado separadamente do processo que o gerou!

12 e-science Medicina Astronomia Biologia e-science Física Química Engenharias

13 e-science Medicina Astronomia Banco de Dados Biologia Engenharia de Software e-science Redes Segurança Física HPC Inteligência Artificial Algoritmos Química Engenharias

14 e-science Medicina Astronomia Banco de Dados Biologia Engenharia de Software e-science Redes Segurança Física HPC Inteligência Artificial Algoritmos Química Engenharias

15 e-science no Reino Unido E-Science é vital para a exploração do poderoso aparato científico da próxima geração Telescópios Sensores Satélites Cada um desses aparatos podem gerar vários terabytes de dados diariamente Os usuários podem estar dispersos geograficamente ao redor do globo A e-science deve construir a infraestrutura necessária para este exploração

16 e-science no Brasil São Paulo School of Advanced Science on e-science for Bioenergy Research Grandes Desafios da Computação no Brasil BreSci - Brazilian e-science workshop

17 e-science no Brasil São Paulo School of Advanced Science on e-science for Bioenergy Research Grandes Desafios da Computação no Brasil BreSci - Brazilian e-science workshop

18 e-science Ok, mas por que e-science é importante?

19 Experimento de Motivação DTN compreendem infecções parasitárias, virais e bacterianas que atacam especialmente as populações de baixa renda nas regiões em desenvolvimento da África, Ásia e América Latina 17 DTN em 149 países afetam 1 bilhão de pessoas (1/7 da população mundial) Doença de Chagas Leishmaniose Hanseníase Esquistossomose Infecções por trematódeos transmitidas por alimentos Helmintíases transmitida pelo solo Cisticercose Dengue Dracunculíase Equinococose Oncocercose Raiva Tracoma Úlcera de Buruli Tripanossomíase humana africana A OMS reporta progressos contra a malária como uma prioridade

20 Malária no Mundo

21 Malária no Brasil Fonte: Sistema de Informação de Vigilância Epidemiológica-Malária/Secretaria de Vigilância em Saúde/Ministério da Saúde Mapa de risco da malária por Município de Infecção. Brasil 2011.

22 Cisteíno Proteases em Plasmodium Plasmodium falciparum gera os casos mais graves de malária As drogas antimaláricas apresentam uma crescente resistência Evidências indicam que cisteíno proteases (CP) têm um papel essencial no tratamento médico da malária Projetos de descoberta de drogas alvos fármaco-terapêuticos promissores inibidores antimaláricos papel importante no ciclo de vida do parasita papaína e ubiquitina Plasmodium falciparum

23 Testes para Análise de Cisteíno Proteases Definir problema Buscar trabalhos existentes Cientistas desenvolvem códigos próprios Cientistas usam códigos de terceiros Desenvolvimento de pipelines específicos Definir hipótese Validar com experimento Analisar resultados Tentar novamente Hipótese é verdadeira Hipótese é falsa Reportar resultados

24 1º Passo - Genômica Comparativa Um alinhamento múltiplo de sequência (AMS) identifica regiões de similaridade que podem ser consequência de relações funcionais, estruturais ou evolutivas entre as sequências

25 2º Passo - Filogênia Faz uso extensivo de AMS para a construção de árvores filogenéticas usados para inferir relações evolutivas entre genes homólogos Trypanosoma cruzi Leishmania major Pch Ppa Han Tpa Pvi Dfa Bbo Tan Pyo Pbe Pkn Pfa Dci Ddi Mbr Pca Cro Pau Ahe Lam Pli Ldi Tma Tpy Bba Dvi Fve Tpi Ldo Tpar Ddic Apo Ngr Oda Aca Tgo Ete Csy Cri PyePpu Pso Gte Pin Pra Sfe Gth Rsa Cpar Egr Ram Ehu Tps Osi Ptr Hak Cme Cca Mja Elo Trypanosoma brucei Plasmodium falciparum Pte Tth Tbr Len Ehi Edi Tcr Cpa Cho Tva Lbr Lma Ocaña K.A.C.S., and Dávila A.M.R. Phylogenomics-Based Reconstruction of Protozoan Species Tree. Evolutionary Bioinformatics, vol. 7, pp , GlaLin

26 3º Passo - Evolução Molecular Fornece base para inferências evolutivas e biológicas, e evoluem devido ao crescimento explosivo de dados genômicos e novas abordagens computacionais e estatísticas

27 4º Passo - Modelagem Molecular Construção do modelo de resolução atômico (modelo 3D) da sequência da proteína (alvo) e uma estrutura 3D experimental de proteínas homólogas (molde) Uso de métodos de Genômica Estrutural e.g., Computer-Aided Drug Design (CADD)

28 Pipelines Farmacofilogenômica (A) Genômica Comparativa (B) Filogenia (C) Evolução Molecular (D) Modelagem Molecular Aplicações computacionalmente intensivas

29 Pipelines Farmacofilogenômica (A) Genômica Comparativa (B) Filogenia Como gerenciar todas essas (C) Evolução Molecular execuções? (D) Modelagem Molecular Aplicações computacionalmente intensivas

30 Análise de Cisteíno Proteases Modelada como Workflow Científico Kalign ClustalW MAFFT Muscle ProbCons BD Sequências (e.g. Refseq) MSA 1 Eleição do Modelo Evolutivo 2 Construção da Árvore Filogenética 3 ModelGenerator RAxML Concatenação MSA 4 Modelo Evolutivo Construção da Árvore (matriz) 5 Perl Script BLOSUM62, CPREV, JTT, WAG, RtREV RAxML Fonte: Ocaña K.A.C.S., Oliveira D., Ogasawara E., Dávila A.M.R., Lima A.A.B., and Mattoso M. SciPhy: A Cloud-Based Workflow for Phylogenetic Analysis of Drug Targets in Protozoan Genomes. Springer, pp , 2011.

31 Workflows Científicos Workflows Científicos Workflows científicos são abstrações que representam a cadeia de atividades dentro de um experimento científico Eles são gerenciados por Sistemas de Gerência de Workflows Científicos (SGWfC) Diversas variações do workflows dentro do mesmo experimento Essas variações incluem a alteração de dados de entrada e parâmetros Proveniência é uma questão fundamental

32 Sistemas de Gerência de Workflows Científicos Definem e executam os workflows Proveem execução eficiente Controlam falhas garantindo a integridade Acessam/Armazenam/Consultam dados usando SGBD Rastreiam a proveniência dos dados

33 Analogia com Banco de Dados SGBD SGWfC Dados Tabelas Dados Atividades Planos Metadados Arquivos Parâmetros Processos Escrita Processos Escrita Leitura Log Leitura Proveniência Tabelas Disco Log S.O Arquivos Disco Log Arquivos de Controle Arquivos de Controle

34 Abordagens Existentes para Execução de Workflows Científicos Modelo de execução com paralelismo nativo Ex.: Swift, Pegasus, Triana, SciCumulus Motor sequencial Ex.: Kepler, VisTrails, Taverna Motor sequencial e camada de paralelismo Ex.: VisTrails+Hadoop, Kepler+Hadoop

35 Execução de uma Análise de Cisteíno Execução demanda grande tempo de processamento Cientistas necessitam variar: Parâmetros Métodos Imagens Arquivos de Dados Configurações Protease Como executar essas análises?

36 Execução de uma Análise de Cisteíno Execução demanda grande tempo de processamento Cientistas necessitam variar: Parâmetros Métodos Imagens Arquivos de Dados Configurações Protease Como executar essas análises? Paralelismo!

37 Em que ambiente executar? Clusters Grades Desktop

38 Em que ambiente executar? Clusters podem ser financeiramente custosos Grades demandam um esforço grande de configuração Desktops podem demandar um tempo exageradamente grande para a execução Tempo de execução versus Tempo de Análise dos Dados

39 Alternativa: Análise de Cisteíno Protease em Nuvens Dados de entrada para Realizar análises filogenéticas: Sequências de DNA e RNA de diversos organismos Alinhamento de sequências (MAFFT, ProbCons, ClustalW, Muscle e Kalign) e conversão Produz uma grande quantidade de dados (sequências alinhadas) Geração das árvores filogenéticas (RAxML) Utilizada para a geração do modelo evolutivo (ModelGenerator)

40 Alternativa: Análise de Cisteíno Laboratório Protease em Nuvens Dados de entrada para Realizar análises filogenéticas: Sequências de DNA e RNA de diversos organismos Alinhamento de sequências (MAFFT, Desktop ProbCons, ClustalW, Muscle e Kalign) e conversão Produz uma grande quantidade de dados (sequências alinhadas) Geração das árvores filogenéticas (RAxML) Tiled Wall Nuvem Utilizada para a geração do modelo evolutivo (ModelGenerator)

41 Execução de uma Análise de Cisteíno Protease em Nuvens Utilização da nuvem faz com que cientistas não tenham que comprar equipamentos Execução paralela reduz o tempo de processamento Mas...

42 Problemas na Execução de Workflows em Nuvens

43 Nova Visão: Análise de Cisteíno 3. Geração das árvores filogenéticas (RAxML) Protease em Nuvens Dados de entrada para Realizar análises filogenéticas: Sequências de DNA e RNA de diversos organismos Alinhamento de sequências (MAFFT, ProbCons, ClustalW, Muscle e Kalign) e conversão Qual árvore corresponde a uma determinada sequência de entrada? O programa MAFFT é melhor que o ProbCons? Qual e-value foi escolhido? Produz uma grande quantidade de dados Como recuperar uma execução (sequências que alinhadas)... falhou? Como monitorar uma execução a distância? Utilizada para a geração do modelo evolutivo (ModelGenerator)

44 Execução de uma Análise de de Execução paralela reduz o tempo de processamento Utilização da nuvem faz com que cientistas não tenham que comprar equipamentos Devemos registrar Decisões Parâmetros Métodos Usuários Imagens Arquivos de Dados Configurações Cisteíno Protease Como relacionar todos esses recursos?

45 Importância da Proveniência na Ciência Interpretar e reproduzir dados Verificar se um determinado experimento foi executado seguindo os procedimentos Identificar as entradas e saídas dos experimentos Garantir qualidade dos dados Rastrear quem executou um experimento e quem é responsável pelos resultados Provenance is as (or more) important as the results (Juliana Freire e Susan Davidson, SIGMOD 2008)

46 Desafios na Execução de Workflows em Nuvens Ambiente caixa-preta e em constante mudança Variação de desempenho das máquinas virtuais Mudanças constantes no ambiente Falhas constantes nas máquinas virtuais Diversos tipos de máquinas virtuais passíveis de utilização Qual tipo utilizar? Transferência de dados Como evitar sobrecarga na transferência? Como monitorar os workflows?

47 Questão...considerando os desafios na execução de workflows em nuvem é possível prover capacidade de alto desempenho e a gerência distribuída do workflow científico por meio da adoção de soluções que considerem as características únicas do ambiente, distribuam as atividades e monitorem a execução das mesmas em várias máquinas virtuais?

48 Hipótese Se for adotada uma infraestrutura adaptativa para o escalonamento, despacho, monitoramento e captura de proveniência distribuída das atividades paralelas de um workflow científico então podemos prover a capacidade de alto desempenho, monitoramento e controle que são necessárias aos cientistas.

49 Em que podemos nos inspirar na área de Banco de Dados?

50 Em que podemos nos inspirar na área de Banco de Dados? Representação da consulta por meio de álgebra relacional representação do workflows por meio de álgebra de workflows Otimização do plano de execução de consultas otimização de workflows científicos

51 Em que podemos nos inspirar na área de Banco de Dados? Escalonamento das atividades no ambiente de nuvem de acordo com uma álgebra de workflows Distribuição dos dados de proveniência Monitoramento

52 Roteiro do Tutorial Motivação Workflows Científicos Nuvens de Computadores Proveniência de Dados Máquinas de Workflow para Nuvem Aplicação de Proveniência em e-science Demo

53 Experimento Científico Uma das formas utilizadas pelos cientistas para apoiar a formulação de novas teorias Possui um ciclo de vida com três etapas: Composição Execução Análise

54 Nossa visão do ciclo de vida do experimento científico

55 Nossa visão do ciclo de vida do experimento científico O experimento pode ser composto pela execução de múltiplos workflows científicos

56 Workflow A automação de um processo de negócio, completo ou apenas parte dele, através do qual, documentos, informações ou tarefas são transmitidas de um participante a outro por ações, de acordo com regras procedimentais. (WFMC, 1995) Provê a abstração necessária para descrever uma série de processos estruturados e suas atividades, oferecem um contexto robusto de resolução de problemas e promovem o uso efetivo e otimizado dos recursos computacionais

57 Workflow Uma coleção de atividades organizadas para acompanhar algum experimento (processo de negócio). As atividades ou tarefas são os componentes de software independentes que implementam alguma funcionalidade e são executadas por um ou mais sistemas de softwares. Exemplos de atividades incluem executar um programa, transformar um arquivo ou atualizar um banco de dados.

58 Workflow Um workflow define a ordem de execução dessas atividades ou as condições em que essas atividades serão executadas e a sua eventual sincronização. Os dados de entrada e saída das atividades (variáveis) são definidos como o fluxo de dados do workflow.

59 SGWf e Máquina de Workflow Sistema de gerência de workflows SGWf (WfMS - Workflow Management Systems) Software que fornece toda a infraestrutura para definir, executar e monitorar workflows. Máquina de Workflow Na utilização deste tipo de software é importante para separar a definição do workflow, da máquina (i.e. engine) encarregada de executar o mesmo

60 Especificação do Workflow DAG Contém estruturas do tipo sequenciais, paralelas ou livres. Non-DAG Incluem estruturas de iteração Permitem que os workflow executem tarefas ou sub-workflows de forma repetida.

61 Especificação do Workflow DAG Contém estruturas do tipo sequenciais, paralelas ou livres. Non-DAG Incluem DAGestruturas de iteração Non-DAG Permitem que os workflow executem tarefas ou sub-workflows de forma repetida.

62 Diversidade de Sistemas de Askalon Chiron Kepler Pegasus SciCumulus Swift Taverna VisTrails Gerência de Workflows

63 Diversidade de Sistemas de Askalon Chiron Kepler Pegasus Gerência de Workflows SciCumulus Swift Taverna VisTrails

64 SGWf...um caldeirão de tecnologias Muitos Modelos Computação control flow, data flow, pipelines baseados em scripts Interação interativos, batch Representação de Wf DAG, non-dag Adaptabilidade dinâmicos, estáticos Muitos Ambientes Componentes grid, cluster, nuvem, etc Natureza- open-source, comerciais Escala long running,data streaming, etc Muitas tecnologias. centralizado, distribuído, local, Web

65 Roteiro do Tutorial Motivação Workflows Científicos Nuvens de Computadores Proveniência de Dados Máquinas de Workflow para Nuvem Aplicação de Proveniência em e-science Demo

66 Computação em Nuvem Uma das opções para prover um ambiente de alto desempenho para cientistas é executar seus experimentos em nuvens de computadores Se baseia na ideia de prover recursos (software e hardware) utilizando o ambiente Web para uma gama (virtualmente infinita) de usuários Elasticidade de Recursos Virtualização de Recursos Personalização Disponibilidade

67 Quem já usa Computação em Nuvem? FAPEMIG lança edital para cloud computing 30 de Dezembro de 2011

68 Quem já usa Computação em Nuvem? 68

69 Computação em Nuvem: Definição Diversas definições: não há consenso! Mais de 20 definições em Vaquero (2009) Segundo Ian Foster:...um paradigma de computação em larga escala que possui foco em proporcionar economia de escala, em que um conjunto abstrato, virtualizado, dinamicamente escalável de poder de processamento, armazenamento, plataformas e serviços são disponibilizados sob demanda para clientes externos através da Internet. Vaquero, L. M., Rodero-Merino, L., Caceres, J., and Lindner, M. (2009). A break in the clouds: towards a cloud definition. SIGCOMM Comput. Commun. Rev., 39(1):50 55

70 Paradigmas de Computação/Negócios Computação em Nuvem Hardware - Virtualização Computação em Nuvem - Grades - Computação Utilitária - SOA - Web Web Services Tecnologias de Internet - Computação Autonômica Traduzido de: Voorsluys, W; Broberg, J; Buyya, R; Introduction to Cloud Computing. IN: Cloud Computing. Wiley Gerenciamento de Sistemas

71 Públicas Privadas Híbridas Comunitárias Tipos de Nuvem

72 Públicas Privadas Híbridas Comunitárias Tipos de Nuvem

73 Públicas Privadas Comunitárias Híbridas Tipos de Nuvem

74 Públicas Privadas Comunitárias Híbridas Tipos de Nuvem

75 IaaS PaaS SaaS Taxonomia da Nuvem Fonte: Lamia Youseff, Maria Butrico and Dilma Da Silva Toward a Unified Ontology of Cloud Computing., Grid Computing Environments Workshop, GCE '08

76 Provedor IaaS Infrastructure as a Service Oferece infraestrutura de hardware Normalmente por meio de virtualização Funciona como um aluguel de recursos: Equipamentos de Rede Memória CPU Armazenamento Infraestrutura deve ser escalável Aumentar ou diminuir recursos de acordo com a necessidade do cliente VM Hypervisor Infraestrutura Física

77 IaaS Custo Financeiro

78 IaaS: Exemplos

79 Amazon EC2

80 Amazon EC2

81 Amazon EC2

82 Amazon EC2

83 Amazon EC2

84 Provedor PaaS Platform as a Service Modelo onde se fornece recursos para a construção de aplicações e serviços para a Internet Os recursos incluem: Ferramentas de desenvolvimento Teste Hospedagem Banco de Dados Segurança Controle de versões Ferramentas de Desenvolvimento VM Hypervisor Infraestrutura Física

85 PaaS: Exemplos

86 Provedor SaaS Software as a Service Modelo no qual uma aplicação é armazenada em um servidor Usuários a acessam via Internet Não há a necessidade de dar suporte à aplicação Aplicações Ferramentas de Desenvolvimento VM Hypervisor Infraestrutura Física

87 SaaS: Exemplos

88 Casos de Sucesso Amazon EC2 e S3 (100 instâncias) Conversão de 11 milhões de artigos (4TB) Nasdaq Processamento de vídeos do Big Brother Brasil Evita sobrecarga nos servidores locais

89 Casos na área científica Análise Filogenômica OLIVEIRA, D., Ocaña, K. A. C. S., Ogasawara, E., Dias, J., Goncalves, J., Mattoso, M., (2012), "Cloud-based Phylogenomic Inference of Evolutionary Relationships: A Performance Study". 2nd International Workshop on Cloud Computing and Scientific Applications (CCSA), Ottawa. Estudos Evolutivos Ocaña, K. A. C. S., OLIVEIRA, D. de, Horta, F., Dias, J., Ogasawara, E., Mattoso, M., (2012), "Exploring Molecular Evolution Reconstruction Using a Parallel Cloud-based Scientific Workflow". Brazilian Symposium on Bioinformatics (BSB 2012), Campo Grande, MT. Genômica Comparativa OCANA, K. ; OLIVEIRA, D. ; DIAS, J. ; OGASAWARA, E. ; MATTOSO, M. L. Q.. Optimizing Phylogenetic Analysis Using SciHmm Cloud-based Scientific Workflow. 7 th IEEE e Science conference. IEEE Computer Society, 2011.

90 Roteiro do Tutorial Motivação Workflows Científicos Nuvens de Computadores Proveniência de Dados Máquinas de Workflow para Nuvem Aplicação de Proveniência em e-science Demo

91 O que é proveniência? De acordo com o dicionário Aurélio: s.f. Primeira manifestação; começo, princípio. Procedência; ponto de partida de uma nação, de uma família; naturalidade. Nascimento, proveniência; ascendência. Origem.

92 O que é proveniência? De acordo com o dicionário Aurélio: s.f. Primeira manifestação; começo, princípio. Procedência; ponto de partida de uma nação, de uma família; naturalidade. Nascimento, proveniência; ascendência. Origem.

93 O que é proveniência? De acordo com o dicionário Aurélio: s.f. Primeira manifestação; começo, princípio. Procedência; ponto de partida de uma nação, de uma família; naturalidade. Nascimento, proveniência; ascendência. Origem.

94 Onde a proveniência pode ser aplicada? Publicaçoes Contabilidade Banking Saúde

95 Proveniência nas artes Pesquisa a autoria de obras de arte em acervos de museus ou coleções particulares Dados de proveniência podem incluir restaurações realizadas nas obras Ajudam especialistas a verificar autenticidade de obras Adaptação dos slides de Freire e Davidson SIGMOD 2008

96 Proveniência nas artes Pesquisa a autoria de obras de arte em acervos de museus ou coleções particulares Dados de proveniência podem incluir restaurações realizadas nas obras Ajudam especialistas a verificar autenticidade de obras Adaptação dos slides de Freire e Davidson SIGMOD 2008

97 Proveniência na indústria Garante a procedência do alimento É possível saber em que fazenda, granja etc o alimento foi produzido ou colhido Adaptação dos slides de Freire e Davidson SIGMOD 2008

98 Proveniência na medicina fonte: A epistemologia narrativa e o exercício clínico do diagnóstico, Maria Helena Cabral de Almeida Cardoso, Kenneth Rochel de Camargo Jr., Juan Clinton Llerena Jr., Ciência & Saúde Coletiva Garante o rastreio das mudanças do paciente Cirurgias realizadas, procedimentos realizados, medicamentos prescritos Adaptação dos slides de Freire e Davidson SIGMOD 2008

99 Proveniência na Ciência Reprodução e interpretação de um resultado Compreensão do raciocínio empregado no experimento Verificação se o experimento segui procedimentos específicos Rastreio de responsabilidades Quem fez o que e quando?

100 Proveniência na Ciência Reprodução e interpretação de um resultado Compreensão do raciocínio empregado no experimento Verificação se o experimento segui procedimentos específicos Rastreio de responsabilidades Quem fez o que e quando?

101 Proveniência na Ciência

102 Por que a curadoria de dados científicos é importante em e-science? Faz parte do processo de pesquisa Agrega valores Intrínsecos e Extrínsecos à pesquisa Aumenta o potencial de criar novos conhecimentos a partir de dados préexistentes Preserva o contexto da descoberta científica

103 Qualidade dos dados A proveniência dos dados permite avaliar a qualidade deles para uma aplicação Erros introduzidos por defeitos nos dados tendem a se tornar mais graves quando propagados O nível de detalhe da proveniência determina com que grau a qualidade dos dados pode ser estimada

104 Proveniência em experimentos in silico iii ehwp25ex8.tcoffeestockholm iii ehwp25ex9.tcoffeestockholm Análise de longo prazo Reprodução Qualidade Responsabilidade

105 Formas da proveniência Derivação Representação de um caminho, workflow, roteiro, ou consulta. Associação entre itens (grafos) Geralmente é uma explicação (2W1H =when, who, how) Centrada no processo Anotação Anexado aos items ou coleções de dados ( estruturado ou semi ou texto livre ) Geralmente é uma explicação ( 5W1H = why, when, where, who, what, how) Centrada no dado mass = 200 mass = 200 event = 8 mass = 200 decay = WW mass = 200 plot = 1 mass = 200 decay = bb mass = 200 decay = ZZ mass = 200 decay = WW plot = 1 mass = 200 decay = WW stability = 3 mass = 200 decay = WW stability = 1 mass = 200 decay = WW event = 8 mass = 200 decay = WW stability = 1 LowPt = 20 HighPt = mass = 200 decay = WW stability = 1 event = 8 mass = 200 decay = WW stability = 1 plot = 1 Fonte: Knowledge and Provenance (Goble, 2003)

106 Proveniência em Tempo Real Uso da proveniência em tempo real possibilita análises mais precisas e uma resposta mais rapida durante a execução do experimento As derivações que ocorrem durante a execução do workflow devem estar disponíveis assim que os dados forem produzidos Dados específicos de domínio também são necessários

107 Tipos de proveniência?

108 Taxonomia de Proveniência

109 Taxonomia de Proveniência Classificar a proveniência em termos de o que, quem, onde, como e por quê e ainda que dado pode ser capturado durante as fases do ciclo de vida do experimento

110 Taxonomia de Proveniência Classificar como os dados de proveniência podem ser capturados nos sistemas de proveniência. Composição & Execução Cruz, S.M.S. ; CAMPOS, M. L. M. ; MATTOSO, M. L. Q.. Towards a Taxonomy of Provenance in Scientific Workflow Management Systems. In: IEEE SWF, 2009, Los Angeles.

111 Taxonomia de Proveniência Formas de registro e armazenamento dos dados de proveniência. Execução Cruz, S.M.S. ; CAMPOS, M. L. M. ; MATTOSO, M. L. Q.. Towards a Taxonomy of Provenance in Scientific Workflow Management Systems. In: IEEE SWF, 2009, Los Angeles.

112 Taxonomia de Proveniência Descreve as formas de acesso aos dados e repositórios de proveniência. Análise Cruz, S.M.S. ; CAMPOS, M. L. M. ; MATTOSO, M. L. Q.. Towards a Taxonomy of Provenance in Scientific Workflow Management Systems. In: IEEE SWF, 2009, Los Angeles.

113 Taxonomia de Proveniência Representação da proveniência em termos de assunto e granulosidade. Cruz, S.M.S. ; CAMPOS, M. L. M. ; MATTOSO, M. L. Q.. Towards a Taxonomy of Provenance in Scientific Workflow Management Systems. In: IEEE SWF, 2009, Los Angeles. Ortogonal à todas as fases

114 Representação de proveniência com o PROV Padrão W3C para representação de proveniência Baseado em 3 elementos principais: Entidade (Entity) Agente (Agent) Atividade (Activity) aims the inter-operable interchange of provenance information in heterogeneous environments such as the Web

115 O modelo de dados do PROV Fonte: Sítio W3C PROV

116 Exemplo de utilização do PROV Fonte: Sítio W3C PROV

117 Exemplo de utilização do PROV Fonte: Sítio W3C PROV

118 Relacionamento used Fonte: Sítio W3C PROV

119 Relacionamento wasgeneratedby Fonte: Sítio W3C PROV

120 Relacionamento wasinvalidatedby Fonte: Sítio W3C PROV

121 Relacionamento wasinformedby Fonte: Sítio W3C PROV

122 Relacionamento wasstartedby Fonte: Sítio W3C PROV

123 Relacionamento wasendedby Fonte: Sítio W3C PROV

124 Relacionamento wasderivedfrom Fonte: Sítio W3C PROV

125 Relacionamento actedonbehalfof Fonte: Sítio W3C PROV

126 Relacionamento wasattributedto Fonte: Sítio W3C PROV

127 Relacionamento wasassociatedwith Fonte: Sítio W3C PROV

128 Arquitetura genérica para captura de proveniência SGWfC eventos Aplicações Cliente Máquina Serviço de captura de proveniência Análise Consulta Interface Serviço de Gerência de Proveniência Serviço de Consulta Exploração Repositório ou Sistema de Proveniência Anotação Metadados Tradução Indexação Repositório

129 Mecanismos de Captura Atrelados a máquina de execução de workflows Taverna Kepler VisTrails SciCumulus Desacoplados da máquina de workflows PASS PASOA Karma Centralizados Distribuído Distribuídos

130 Proveniência no Taverna List-structured KEGG gene ids: [ [ mmu:26416 ], [ mmu: ] ] geneids pathway s geneids pathway s [ path:mmu04010 MAPK signaling, path:mmu04370 VEGF signaling ] [ [ path:mmu04210 Apoptosis, path:mmu04010 MAPK signaling,...], [ path:mmu04010 MAPK signaling, path:mmu04620 receptor,...] ]

131 Proveniência no Taverna List-structured KEGG gene ids: [ [ mmu:26416 ], [ mmu: ] ] geneids pathway s geneids pathway s [ path:mmu04010 MAPK signaling, path:mmu04370 VEGF signaling ] [ [ path:mmu04210 Apoptosis, path:mmu04010 MAPK signaling,...], [ path:mmu04010 MAPK signaling, path:mmu04620 Toll-like receptor,...] ]

132 Proveniência no VisTrails Árvore de Versões Workflows

133 Proveniência no VisTrails Árvore de Versões Workflows Dados

134 Proveniência no VisTrails Árvore de Versões Workflows Usuário marta danielcmo danielcmo kary kary

135 Proveniência no Kepler

136 Proveniência no Chiron/SciCumulus 02/10/2013 Defesa de Tese - Daniel C. M. de Oliveira 138

137 Proveniência no Chiron/SciCumulus Específico para nuvens Este tipo de informação pode ser usado para fins além da reprodução e validação

138 Proveniência no Chiron/SciCumulus

139 Consultas de Proveniência no SciCumulus Recuperar, por ordem crescente de identificador dos workflows as atividades relacionadas a cada workflow e as cloud activities associadas a cada atividade SELECT w.tag, w.description a.tag, t.workspace from hworkflow w, hactivity a, hactivation t where w.wkfid = a.wkfid and a.actid = t.actid order by w.wkfid

140 Consultas de Proveniência no SciCumulus Recuperar, por ordem crescente de execuções dos workflows, as datas de início e término, tags dos workflows, bem como o nome de todas as atividades associadas e que não contenham nenhuma cloud activity que executou com erro. SELECT w.tag, a.tag, t.exitstatus, t.processor, t.workspace, t.status, t.endtime, t.starttime, extract ('epoch' from (t.endtime-t.starttime)) ',' as duration from hworkflow w, hactivity a, hactivation t where w.wkfid = a.wkfid and a.actid = t.actid and not exists (select * from hactivation a2 where a2.actid = a.actid and a2.exitstatus <> 0) order by w.wkfid

141 Karma Mecanismo de Captura: cada serviço envia dados de proveniência a um serviço central Modelo de Dados: Retrospectiva grafo representado em XML Prospectiva BPEL Minimiza sobrecarga de captura Desacoplado da máquina de workflow

142 PASS Mecanismo de Captura: cada serviço envia dados de proveniência a um serviço central

143 Proveniência em tempo real Por que dados de proveniência em tempo real são importantes? Proveniência Especialmente em ambientes de nuvem

144 PROV-Wf Extensão do PROV para representação de proveniência em workflows científicos Relaciona elementos do modelo estendido com os elementos do PROV por meio de estereótipos da UML Proposto no workshop BigProv do EDBT/ICDT 2013

145 PROV-Wf

146 PROV-Wf

147 Mapeamento no PROV-Wf VisTrails SciCumulus PROV-Wf VisTrail.ID Workflow.ExecTag Execute Workflow.ID VisTrail.Name Workflow.Tag Workflow. Name Module.Name Activity.Tag WActivity. Name Module.ID Activation.ID Execute Activity.ID Parameter.Alias Field.Name Field.Name Parameter.Type Field.Type Field.Type Parameter.Val Value.Val Value.Val

148 Uso do PROV-Wf SELECT f1.name, v1.value, f2.name, v2.value FROM workflow w, activity a, executeactivity ea, relationschema rs, relation r, field f1, field f2, Value v1, Value v2 WHERE a.wkf_id = w.id AND ea.act_id = a.id AND r.rel_id = rs.id AND r.ea_id = ea.id AND f1.rel_id = rs.id AND f2.rel_id = rs.id AND v1.uf_id = f1.id AND v2.uf_id = f2.id AND rs.name = Relation MSA AND f1.name = BIO_SEQ AND f2.name = TAXON AND a.name = %PARAM_ACT_NAME% AND w.tag = %PARAM_WF_NAME%

149 Roteiro do Tutorial Motivação Workflows Científicos Nuvens de Computadores Proveniência de Dados Máquinas de Workflow para Nuvem Aplicação de Proveniência em e-science Demo

150 Máquinas baseadas em Hadoop Framework para execução de aplicações em grandes clusters (virtuais ou não) Fornece funcionalidades tanto de confiabilidade e movimentação de dados. Implementa o paradigma computacional chamado map / reduce Cada aplicação é dividida em muitos pequenos fragmentos, cada um dos quais podem ser executadas ou reexecutado em qualquer nó no cluster.

151 Hadoop Desacoplado do conceito de workflow Escalonamento não leva em consideração a estrutura do workflow Não captura proveniência de forma nativa Complementos para captura são necessários

152 Arquitetura do Hadoop

153 Nephele Arcabouço para processamento paralelo em nuvens Aloca e desaloca máquinas virtuais dependendo do comportamento do Job Não possui proveniência associada Paralelização explícita Tarefas são designadas como parallelizable

154 Nephele

155 Pegasus Financiado pela NSF/OCI em colaboração com o grupo do escalonador CONDOR de UW Madison Distribui atividades em paralelo em ambientes distribuídos Captura os dados de proveniência Escalabilidade Big Data (kb to TB) Quantidade de tarefas ( tarefas)

156 Pegasus Re-executa tarefas que falharam automaticamente Pode executar nos mais diversos ambientes Laptop campus cluster grid nuvem

157 Pegasus Fonte: pegasus.isi.edu/presentations/

158 SciCumulus Uma máquina para execução de workflows para nuvem que tem como objetivo conectar o SGWfC com o ambiente de nuvem para oferecer apoio à execução de workflows científicos Middleware Hydra Motor de execução Chiron OLIVEIRA, D.; OGASAWARA, E.; BAIAO, F.; MATTOSO, M. L. Q.. SciCumulus: A Lightweight Cloud Middleware to Explore Many Task Computing Paradigm in Scientific Workflows. In: The 3rd IEEE CLOUD 2010, Miami. Proc. of the 3rd IEEE CLOUD, p

159 Arquitetura

160 especificação do workflow validação, verificação e publicação dos resultados descoberta composição transferência de dados para a nuvem análise Dados de Proveniência configuração Configuração do cluster virtual download de dados da nuvem execução redimensionamento 162 monitoramento da execução na nuvem execução distribuída e paralela do workflow

161 Modelo Algébrico O SciCumulus segue o modelo algébrico proposto por Ogasawara et al. (2011) Atividades consomem relações Cada relação é composta de tuplas e atributos (parâmetros das atividades) Execuções de atividades consomem tuplas Os operadores da álgebra Invocam programas: Map (1:1) SplitMap (1:n) Reduce (n:1) Filter (1:0-1) OGASAWARA, E. ; DIAS, J. ; OLIVEIRA, D. ; PORTO, F. ; VALDURIEZ, P. ; MATTOSO, M. L. Q.. An Algebraic Approach for Data-Centric Scientific Workflows. Proceedings of the VLDB Endownment, v. 4, p , 2011.

162 Relações como o modelo de dados para consumo e produção Relações são definidas como um conjunto de tuplas de tipos primitivos (inteiro, string, etc) ou tipos complexos (e.g. ponteiros para arquivos) Exemplo: R(R) RID CaseStudy sdat ddat 1 U-125 U-125S.DAT U-125D.DAT 1 U-127 U-127S.DAT U-127D.DAT 2 U-129 U-129S.DAT U-129D.DAT R = (RID: Integer, CaseStudy: String; SDat: FileRef, DDat: FileRef)

163 Split Map (SplitMap) T SplitMap(Y, a, R) R RID RdZip 1 Project1.zip 2 Project2.zip T SlipMap(extractRD, RdZip, R) T RID Study sdat ddat 1 U-125 U-125S.DAT U-125D.DAT 1 U-127 U-127S.DAT U-127D.DAT 2 U-129 U-129S.DAT U-129D.DAT

164 Reduce Activity (Reduce) T Reduce(Y, g A, R) R RID Study SsSai DdSai MEnv 1 U-125 U-125Ss.SAI U-125Dd.SAI U-125.ENV 1 U-127 U-127Ss.SAI U-127Dd.SAI U-127.ENV 2 U-129 U-129Ss.SAI U-129Dd.SAI U-129.ENV T Reduce(CompressRD, { RID }, R) T RID RdResultZip 1 ProjectResult1.zip 2 ProjectResult2.zip

165 SRQuery Activity T SRQuery(qry, R) R RID Study SsSai Curvature 1 U-125 U-125Ss.SAI U-126 U-126Ss.SAI U-127 U-127Ss.SAI 1.2 T SRQuery(π RID, Study, SsSai, Curvature (σ Curvature>1 (R)), R) T RID Study SsSai Curvature 1 U-125 U-125Ss.SAI U-127 U-127Ss.SAI 1.2

166 Execução baseada em relações Relação de entrada R ID Doc 1 gene13.hmmin 2 gene27.hmmin n genen.hmmin Operador T Map( M, R ) Instrumentação #./exp file gene13.hmmin Relação de Saída T ID Doc eval 1 gene13.hmout 5 2 gene27.hmout 6 n genen.hmout v eval Nuvem Resultados Invocação do Programa Extrator de Dados

167 Estratégias de Execução First Tuple First (FTF) First Activity First (FAF) x 1 x 2 x 3 Y 3 x 7 x 8 Y 1 Y 2 Y 4 x 4 x 5 x 6 x 9 FTF: {<x 1, x 4 >, <x 2, x 5 >, <x 3, x 6 >} FAF: {<x 1 >,<x 2 >,<x 3 >, <x 4 >,<x 5 >,<x 6 >}

168 Workflow como uma expressão da álgebra Workflow Expressões algébricas (1) ExtractRD T 1 SplitMap(ExtractRD, R 1 ) T 2 Map(PSRiser, T 1 ) (2) PSRiser T 3 Map(SRiser, T 2 ) T 4 Map(PDRiser, T 3 ) (3) (4) (5) SRiser PDRiser DRiser (7) Canalysis Tanalysis (6) (8) Merge (9) CompressRD T 5 Map(DRiser, T 4 ) T 6 Filter(Tanalysis, T 5 ) T 7 Filter(Canalysis, T 5 ) T 8 SRQuery(T 6 T 7, {T 6, T 7 }) T 9 Reduce(CompressRD, T 8 )

169 Detalhes de Implementação Java Versão 6 Update 15 HSQLDB Drivers JDBC MPJ arcabouço de paralelismo em Java PostgreSQL versão Código disponibilizado em:

170 Representação dos Workflows <?xml version="1.0" standalone="no"?> <SciCumulus> <database name="scicumulus_adaptive" server="mp4-4.dyndns.info" port="5432" username="scicumulus" password="************" /> <SciCumulusWorkflow tag="filogenia" description="this is a test using anflex." exectag="experimento Kary/200 organismos - Adaptive" expdir="/root/exp"> <SciCumulusActivity tag="mafft" description="mafft" type="map" templatedir="/root/exp/template_mafft" activation="experiment.cmd"> <Relation reltype="input" name="a" filename="parameter.txt" /> <Field name="name" type="string" /> <Field name="fasta_file" type="string" /> <Relation reltype="output" name="c" filename="output_mafft.txt" /> <Field name="name" type="string" NAME;FASTA_FILE /> <Field name="num_seq" type="string" G1;ORTHOMCL2033 /> G2;ORTHOMCL1895 <Field name="fasta_file" type="string" /> <File filename="experiment.cmd" instrumented="true" /> </SciCumulusActivity> </SciCumulusWorkflow> </SciCumulus> G3;ORTHOMCL2034 G4;ORTHOMCL1896 G5;ORTHOMCL2035 G6;ORTHOMCL1897 G7;ORTHOMCL2036 G8;ORTHOMCL1898 G9;ORTHOMCL2037 G10;ORTHOMCL1899

171 Representação dos Workflows

172 Componente extrator de dados Como extrair dados de diferentes formatos (e.g. binário, Fasta, HDF5, etc.)? Componente extrator (baseado na álgebra) Invoca um programa externo (definido pelo usuário) que analisa os arquivos produzidos e extrai os metadados de interesse Encapsula regras de extração que são dependents de domínio Relações possuem dados da execução com dados do domínio 174

173 Extração de dados de domínio <SciCumulus> <database name="scicumulus" server="mp4-5b.dyndns.info" port="5432"/> <SciCumulusWorkflow tag="scievol" description="mer" exectag="scievol" expdir="/scievol/"> <SciCumulusActivity tag="msa" activation="./experiment.cmd" extractor="./extract_msa.cmd" > <Relation reltype="input" name="rel_in_1" filename="input_step_1.txt"/> <Relation reltype="output" name="rel_out_1" filename="output_step_1.txt"/> <File filename="experiment.cmd" instrumented="true"/> </SciCumulusActivity> </SciCumulusWorkflow> </SciCumulus> k file 1 gene13.hmmin k file e-value score fasta_id fasta_description taxonomy is_valid k file 1 gene13.hmmout./experiment.cmd Tp 1 Tp 2 a b./extract_msa.cmd 1 gene13.hmmout 3e phosphogluconate dehydrogenase Monosiga brevicollis True Tp 3 c./extract_msa.cmd Provenance Repository

174 Extração de Dados de Domínio Query: i e4sg6xc1v [M=483] E-value score Sequence Description Nome do arquivo e hypothetical protein [Monosiga brevicollis] 3.5e phosphogluconate dehydrogenase [Dictyostelium discoideum] 1.5e phosphogluconate dehydrogenase [Naegleria gruberi] 2.5e phosphogluconate dehydrogenase [Paulinella chromatophora] 2.6e phosphogluconate dehydrogenase [Thalassiosira pseudonana] 5.9e G6PDH/6PGDH fusion protein [Phaeodactylum tricornutum] 8.3e phosphogluconate dehydrogenase [Plasmodium knowlesi] 2.2e phosphogluconate dehydrogenase, put. [Plasmodium falciparum] 1.4e phosphogluconate dehydrogenase [Plasmodium berghei] 4.2e phosphogluconate dehydrogenase [Theileria annulata] 1.8e phosphogluconate dehydrogenase G6PDH [Theileria parva] 1.2e predicted protein [Thalassiosira pseudonana] 3.5e hypothetical protein [Plasmodium chabaudi] 8.4e phosphogluconate dehydrogenase [Trypanosoma cruzi] Valor produzido por ferramentas do workflow Obtido em serviços Web de terceiros (NCBI)

175 Consulta utilizando dados de domínio Quais sequencias dadas como entrada não fazem parte de um gene específico? SELECT S.NCBI_Ref_Sequence FROM Task T, Hits H, MSA_CONVERTED M2, MSA M1, SEQUENCE_GROUP SG, SEQUENCE S, ORGANISM O, SPECIE SP, GENUS G WHERE T.taskid = H.taskid AND H.msacid = M2.msacid AND M2.msaid = M1.msaid AND M1.sgid = SG.sgid AND SG.sqid = S.sqid AND S.orgid = O.orgid AND O.spid = SP.spid and SP.genid = G.genid AND T.exitStatus = 0 /* No error */ AND G.genus = PLASMODIUM

176 Roteiro do Tutorial Motivação Workflows Científicos Nuvens de Computadores Proveniência de Dados Máquina de Execução SciCumulus Aplicação de Proveniência em e-science na Nuvem Demo

177 especificação do workflow validação, verificação e publicação dos resultados descoberta composição transferência de dados para a nuvem análise Dados de Proveniência configuração Configuração do cluster virtual download de dados da nuvem execução redimensionamento 179 monitoramento da execução na nuvem execução distribuída e paralela do workflow

178 validação, verificação e publicação dos resultados descoberta composição especificação do workflow Apoio nas diversas fases! transferência de dados para a nuvem análise Dados de Proveniência configuração Configuração do cluster virtual download de dados da nuvem execução redimensionamento 180 monitoramento da execução na nuvem execução distribuída e paralela do workflow

179 O uso da proveniência Monitoramento Recuperação de Falhas Escalonamento de Atividades Otimização Dimensionamento

180 Dimensionamento do Ambiente Recursos são instanciados sob demanda Vários tipos de máquinas virtuais passíveis de uso Capacidade de armazenamento CPU Memória Largura de banda Variação de provedor para provedor

181 Dimensionamento do Ambiente Recursos são instanciados sob demanda Vários tipos Qual de tipo máquinas utilizar? virtuais passíveis de uso Quantas máquinas instanciar? Capacidade de armazenamento CPU Memória Largura de banda Força bruta? Variação de provedor para provedor

182 Dimensionamento do Ambiente

183 Dimensionamento do Ambiente

184 Dimensionamento do Ambiente Dimensionamento leva em consideração características do workflow Histórico de execução é utilizado Proveniência retrospectiva Características do ambiente Redução do tempo de execução e dos custos Evita o super e o sub dimensionamento!

185 Quais dados são importantes?

186 SciCumulus-ECM Baseado em algoritmos genéticos Alimenta o algoritmo com os dados históricos de proveniência Com uma base de proveniência de tamanho médio (aprox. 100 execuções de workflows) o algoritmo apresenta uma convergência rápida Utilização do arcabouço JGAP

187 Número de núcleos virtuais utilizados Análise da Execução Adaptativa Otimizando a Quantidade de Máquinas Virtuais 400 arquivos multi-fasta % de diferença de tempo de execução Cenário com foco no tempo de execução 2 0 Tempo de Execução (seg) Adaptativo sem SciCumulus-ECM Adaptativo com SciCumulus-ECM Orçamento limite de US$ 75,00 189

188 Processo de otimização de workflows Expressões algébricas iniciais Geração do espaço de busca Regras de transformação Expressões algébricas equivalentes Avaliação de estratégia de busca Modelo de custo sim Procurar mais? não expressão algébrica ótima

189 Transformações algébricas (i - workflow - perspectiva de relações) Map Filter R S T (ii - workflow otimizado) Filter Map R T S Garantia do esquema das atividades Similar a otimização de consultas na álgebra relacional Antecipação do Filtro Antecipação da seleção

190 Escalonamento Adaptativo O ambiente de nuvem possui instabilidades Falhas nas VMs Aplicação de atualizações Reinicializações Heterogeneidade das VMs O escalonamento deve levar essas características em consideração

191 Escalonamento Adaptativo ƒ(a i, VM j ) = 1 (Tempo de Execução + Tempo de Transferência) + 2 Custo de Confiabilidade + 3 ( Vh [Tempo de Execução + Tempo de Transferência] + Vt Quantidade de Dados Transferidos) A a i escolhida é aquela que satisfaz f(a i, VM j ) = min VM j VM {ƒ(a i, VM j )}

192 Escalonamento Adaptativo ƒ(a i, VM j ) = 1 (Tempo de Execução + Tempo de Transferência) + 2 Custo de Confiabilidade + 3 ( Vh [Tempo de Execução + Tempo de Transferência] + Vt Quantidade de Dados Transferidos) A a i escolhida é aquela que satisfaz f(a i, VM j ) = min VM j VM {ƒ(a i, VM j )}

193 Execução Adaptativa sem variação na quantidade de VMs Pico de melhora de 37,9% 1 = 0,9 2 = 0,05 3 = 0,05 17,73 horas 15,24 horas 1,5 horas

194 0 1303,2 2606,4 3909,6 5212, ,2 9122, , , , , , , , , , , , , , , Número de núcleos virtuais utilizados Execução Adaptativa variação na quantidade de VMs Tempo de Execução (seg) Adaptativo sem Proveniência Adaptativo com Proveniência Ideal

195 Monitoramento Execuções podem durar semanas ou meses Monitoramento in situ é inviável Utilização de redes sociais e computação móvel

196 SciLightning Serviço de monitoramento de execução de workflows científicos em paralelo 3 componentes principais: SciLightning Monitor SciLightning Social SciLightning Mobile Todo o monitoramento é baseado nos dados de proveniência gerados pelo SciCumulus PINTAS, J. ; OLIVEIRA, D. ; OCANA, K. ; DIAS, J. ; MATTOSO, M. L. Q.. Monitoramento em Tempo Real de Workflows Científicos Executados em Paralelo em Ambientes Distribuídos. In: VI e-science Workshop (em conjunto com CSBC 2012), 2012, Curitiba. Anais do VI e-science Workshop (em conjunto com CSBC 2012). Porto Alegre : Sociedade Brasileira de Computação, 2012.

197 SGWfC Repositório de Proveniência <<Definição>> <<Proveniência>> [Coordenador] <<Notificação>> <<Notificação>> [Usuário] <<Evento>> <<Regras>> Cartucho Social Monitor Regras Mobile <<Proveniência> <<Notificação>> Google Cloud Messaging for Android <<Notificação>> [Usuário]

198 SciLightning Recebimento de aviso assíncrono Detalhamento da notificação

199 Recuperação de Falhas Falha de VMs é um problema constante O provedor garante a reposição de uma VM, mas não de seu contexto O cientista não deve re-executar atividades que já foram executadas anteriormente Proveniência fornece esse tipo de informação de contexto da execução

200 SciMultaneous Serviço de re-execução de atividades Explora características da nuvem como elasticidade por meio de duas heurísticas H1: Redundância de atividades H2: Monitoramento contínuo COSTA, F. ; OLIVEIRA, D. ; OCANA, K. ; OGASAWARA, E. ; MATTOSO, M. L. Q.. Enabling Re-Executions of Parallel Scientific Workflows Using Runtime Provenance Data. In: 4th International Provenance and Annotation Workshop, 2012, Santa Barbara, CA. Proceedings of the 4th International Provenance and Annotation Workshop. Heildelberg : Springer Verlag, 2012.

201 Consulta de Proveniência Recuperar, por ordem crescente de execuções dos workflows, as datas de início e término, tags dos workflows, bem como o nome de todas as atividades associadas e que contenham alguma execução com erro. SELECT w.tag, a.tag, t.exitstatus, t.processor, t.workspace, t.status, t.endtime, t.starttime, extract ('epoch' from (t.endtime-t.starttime)) ',' as duration from hworkflow w, hactivity a, hactivation t where w.wkfid = a.wkfid and a.actid = t.actid and not exists (select * from hactivation a2 where a2.actid = a.actid and a2.exitstatus <> 0) order by w.wkfid

202 SciMultaneous

203 Visualização A visualização dos dados dos experimentos é uma tarefa fundamental de análise Grande volume de dados Necessidade de associar metadados a imagens e vídeos produzidos Necessidade de utilização de ambientes de visualização como tiled walls displays

204 PROV-Vis

205 PROV-Vis Dados de Proveniência

206 Roteiro do Tutorial Motivação Workflows Científicos Nuvens de Computadores Proveniência de Dados Máquina de Execução SciCumulus Aplicação de Proveniência em e-science Demo

207 Demo SciCumulus Utilização do ambiente Amazon EC2 Necessário que o usuário possua uma conta Imagem pública: ami-6e1a8907 Linux CentOS 5.5 SciCumulus java -jar scicumulus-core.jar 0 /root/expsciphy/machines.conf niodev MPI 2 /root/expsciphy/scicumulus.xml

208 Download

209 Configuração do Workflow

210 Configuração do Workflow Definição do Workflow

211 Configuração do Workflow Definição dos templates das atividades

212 Configuração do Workflow

213 Representação dos Workflows <?xml version="1.0" standalone="no"?> <SciCumulus> <database name="scicumulus_adaptive" server="mp4-4.dyndns.info" port="5432" username="scicumulus" password="************" /> <SciCumulusWorkflow tag="filogenia" description="this is a test using anflex." exectag="experimento Kary/200 organismos - Adaptive" expdir="/root/exp"> <SciCumulusActivity tag="mafft" description="mafft" type="map" templatedir="/root/exp/template_mafft" activation="experiment.cmd"> <Relation reltype="input" name="a" filename="parameter.txt" /> <Field name="name" type="string" /> <Field name="fasta_file" type="string" /> <Relation reltype="output" name="c" filename="output_mafft.txt" /> <Field name="name" type="string" NAME;FASTA_FILE /> <Field name="num_seq" type="string" G1;ORTHOMCL2033 /> G2;ORTHOMCL1895 <Field name="fasta_file" type="string" /> <File filename="experiment.cmd" instrumented="true" /> </SciCumulusActivity> </SciCumulusWorkflow> </SciCumulus> G3;ORTHOMCL2034 G4;ORTHOMCL1896 G5;ORTHOMCL2035 G6;ORTHOMCL1897 G7;ORTHOMCL2036 G8;ORTHOMCL1898 G9;ORTHOMCL2037 G10;ORTHOMCL1899

214 Configuração do Workflow

215 Configuração do Workflow

216 Configuração do Workflow

217 Quer saber mais sobre banco de Não perca! dados e nuvens? Análise em Big Data e um Estudo de Caso utilizando Ambientes de Computação em Nuvem Ticiana L. C. da Silva, Flávio R. C. Sousa, José Antônio F. de Macêdo e Javam C. Machado Quinta-feira 03 de outubro 09:00 Sala Imperial

218 Agradecimentos

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS SISTEMAS DISTRIBUÍDOS Cluster, Grid e computação em nuvem Slide 8 Nielsen C. Damasceno Introdução Inicialmente, os ambientes distribuídos eram formados através de um cluster. Com o avanço das tecnologias

Leia mais

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores

Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Faculdade Integrada do Ceará FIC Graduação em Redes de Computadores Disciplina - Sistemas Distribuídos Prof. Andrey Halysson Lima Barbosa Aula 12 Computação em Nuvem Sumário Introdução Arquitetura Provedores

Leia mais

SciCumulus 2.0: Um Sistema de Gerência de Workflows Científicos para Nuvens Orientado a Fluxo de Dados *

SciCumulus 2.0: Um Sistema de Gerência de Workflows Científicos para Nuvens Orientado a Fluxo de Dados * paper:6 SciCumulus 2.0: Um Sistema de Gerência de Workflows Científicos para Nuvens Orientado a Fluxo de Dados * Vítor Silva 1, Daniel de Oliveira 2 e Marta Mattoso 1 1 COPPE Universidade Federal do Rio

Leia mais

DAS6607 - Inteligência Artificial Aplicada à Controle de Processos e Automação Industrial

DAS6607 - Inteligência Artificial Aplicada à Controle de Processos e Automação Industrial DAS6607 - Inteligência Artificial Aplicada à Controle de Processos e Automação Industrial Aluno: André Faria Ruaro Professores: Jomi F. Hubner e Ricardo J. Rabelo 29/11/2013 1. Introdução e Motivação 2.

Leia mais

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2

Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro V. 2009-2 Aula 1 Conceitos da Computação em Nuvem A computação em nuvem ou cloud computing

Leia mais

XXXVIII Reunião Anual da SBNeC

XXXVIII Reunião Anual da SBNeC XXXVIII Reunião Anual da SBNeC Introdução ao Armazenamento de Dados de Experimentos em Neurociência Parte 3: Uso de questionários digitais (continuação) + Ferramentas para Gerenciamento de Arquivos Amanda

Leia mais

SimiFlow: Uma Arquitetura para Agrupamento de Workflows por Similaridade

SimiFlow: Uma Arquitetura para Agrupamento de Workflows por Similaridade SimiFlow: Uma Arquitetura para Agrupamento de Workflows por Similaridade Vítor Silva, Fernando Chirigati, Kely Maia, Eduardo Ogasawara, Daniel de Oliveira, Vanessa Braganholo, Leonardo Murta, Marta Mattoso

Leia mais

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer

A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer A computação na nuvem é um novo modelo de computação que permite ao usuário final acessar uma grande quantidade de aplicações e serviços em qualquer lugar e independente da plataforma, bastando para isso

Leia mais

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados. BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br INTRODUÇÃO Hoje é

Leia mais

Segurança da Informação

Segurança da Informação INF 108 Segurança da Informação Computação em Nuvem Prof. João Henrique Kleinschmidt Introdução Centralização do processamento Surgimento da Teleinformática Década de 60 Execução de programas localmente

Leia mais

Panorama de Aplicações de Alto Desempenho em Nuvem

Panorama de Aplicações de Alto Desempenho em Nuvem EXTRAÇÃO DE DADOS NO CONTEXTO DE UMA REDE SOCIAL DE CONSUMO Panorama de Aplicações de Alto Desempenho em Nuvem Jonathan Patrick Rosso, Claudio Schepke jonathan.p.rosso@gmail.com, claudioschepke@unipampa.edu.br

Leia mais

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados: MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação

Leia mais

SISTEMA GERENCIADOR DE BANCO DE DADOS

SISTEMA GERENCIADOR DE BANCO DE DADOS BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br SISTEMA GERENCIADOR

Leia mais

Linhas de Experimentos: Reutilização e Gerência de Configuração em Workflows científicos

Linhas de Experimentos: Reutilização e Gerência de Configuração em Workflows científicos Linhas de Experimentos: Reutilização e Gerência de Configuração em Workflows científicos Eduardo Ogasawara Leonardo Murta Cláudia Werner Marta Mattoso 1 Sumário Introdução Análise de SGWfC pela perspectiva

Leia mais

Fernando Seabra Chirigati. Universidade Federal do Rio de Janeiro EEL879 - Redes de Computadores II Professores Luís Henrique Costa e Otto Duarte

Fernando Seabra Chirigati. Universidade Federal do Rio de Janeiro EEL879 - Redes de Computadores II Professores Luís Henrique Costa e Otto Duarte Fernando Seabra Chirigati Universidade Federal do Rio de Janeiro EEL879 - Redes de Computadores II Professores Luís Henrique Costa e Otto Duarte Introdução Grid x Nuvem Componentes Arquitetura Vantagens

Leia mais

Disciplina de Banco de Dados Introdução

Disciplina de Banco de Dados Introdução Disciplina de Banco de Dados Introdução Prof. Elisa Maria Pivetta CAFW - UFSM Banco de Dados: Conceitos A empresa JJ. Gomes tem uma lista com mais ou menos 4.000 nomes de clientes bem como seus dados pessoais.

Leia mais

CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM

CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM CONCEITOS E APLICAÇÕES DA COMPUTAÇÃO EM NUVEM Rogério Schueroff Vandresen¹, Willian Barbosa Magalhães¹ ¹Universidade Paranaense(UNIPAR) Paranavaí-PR-Brasil rogeriovandresen@gmail.com, wmagalhaes@unipar.br

Leia mais

Uma Proposta de Framework de Comparação de Provedores de Computação em Nuvem

Uma Proposta de Framework de Comparação de Provedores de Computação em Nuvem Uma Proposta de Framework de Comparação de Provedores de Computação em Nuvem Igor G. Haugg Bolsista PIBITI/CNPq Orientador: Dr. Rafael Z. Frantz Área de Pesquisa Integração de Aplicações Empresariais Computação

Leia mais

Infraestrutura: devo usar a nuvem? Prof. Artur Clayton Jovanelli

Infraestrutura: devo usar a nuvem? Prof. Artur Clayton Jovanelli Infraestrutura: devo usar a nuvem? Prof. Artur Clayton Jovanelli Conceitos principais Nuvem Local Dados (informações) Profissional Pessoal Procedimento padrão (modelo) Produzir Armazenar Como era... Como

Leia mais

Monitoramento em Tempo Real de Workflows Científicos Executados em Paralelo em Ambientes Distribuídos *

Monitoramento em Tempo Real de Workflows Científicos Executados em Paralelo em Ambientes Distribuídos * Monitoramento em Tempo Real de Workflows Científicos Executados em Paralelo em Ambientes Distribuídos * Julliano Pintas, Daniel de Oliveira, Kary Ocaña, Jonas Dias, Marta Mattoso Programa de Engenharia

Leia mais

PEER DATA MANAGEMENT SYSTEM

PEER DATA MANAGEMENT SYSTEM PEER DATA MANAGEMENT SYSTEM INTRODUÇÃO, INFRA-ESTRUTURA E MAPEAMENTO DE ESQUEMAS AGENDA Data Management System Peer Data Management System P2P Infra-estrutura Funcionamento do PDMS Mapeamento de Esquemas

Leia mais

VisTrails. Fernando Seabra Chirigati Aluno de Engenharia de Computação e Informação COPPE/UFRJ Email: fernando_seabra@cos.ufrj.br

VisTrails. Fernando Seabra Chirigati Aluno de Engenharia de Computação e Informação COPPE/UFRJ Email: fernando_seabra@cos.ufrj.br VisTrails Fernando Seabra Chirigati Aluno de Engenharia de Computação e Informação COPPE/UFRJ Email: fernando_seabra@cos.ufrj.br Características SGWf - Sistema de Gerenciamento de Workflows; Desenvolvido

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

Gerenciamento e Interoperabilidade de Redes

Gerenciamento e Interoperabilidade de Redes EN-3610 Gerenciamento e Interoperabilidade de Redes Computação em Nuvem Introdução Centralização do processamento Surgimento da Teleinformática Década de 60 Execução de programas localmente Computadores

Leia mais

Introdução a Computação nas Nuvens

Introdução a Computação nas Nuvens Introdução a Computação nas Nuvens Professor: Rômulo César Dias de Andrade. E-mail: romulocesar@faculdadeguararapes.edu.br romulodandrade@gmail.com www.romulocesar.com.br PROFESSOR... Mini CV: NOME: RÔMULO

Leia mais

Avaliação de dependabilidade em infraestruturas Eucalyptus geograficamente distribuídas

Avaliação de dependabilidade em infraestruturas Eucalyptus geograficamente distribuídas Avaliação de dependabilidade em infraestruturas Eucalyptus geograficamente distribuídas Jonathan Brilhante(jlgapb@cin.ufpe), Bruno Silva(bs@cin.ufpe) e Paulo Maciel(prmm@cin.ufpe) Agenda 1. 2. 3. 4. 5.

Leia mais

Profa. Gislaine Stachissini. Unidade III GOVERNANÇA DE TI

Profa. Gislaine Stachissini. Unidade III GOVERNANÇA DE TI Profa. Gislaine Stachissini Unidade III GOVERNANÇA DE TI Information Technology Infrastructure Library ITIL Criado pelo governo do Reino Unido, tem como objetivo a criação de um guia com as melhores práticas

Leia mais

Gerenciamento de configuração. Gerenciamento de Configuração. Gerenciamento de configuração. Gerenciamento de configuração. Famílias de sistemas

Gerenciamento de configuração. Gerenciamento de Configuração. Gerenciamento de configuração. Gerenciamento de configuração. Famílias de sistemas Gerenciamento de Gerenciamento de Configuração Novas versões de sistemas de software são criadas quando eles: Mudam para máquinas/os diferentes; Oferecem funcionalidade diferente; São configurados para

Leia mais

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1.

ARCO - Associação Recreativa dos Correios. Sistema para Gerenciamento de Associações Recreativas Plano de Desenvolvimento de Software Versão <1. ARCO - Associação Recreativa dos Correios Sistema para Gerenciamento de Associações Recreativas Versão Histórico da Revisão Data Versão Descrição Autor Página

Leia mais

Esclarecimento: Não, a operação de matching ocorre no lado cliente da solução, de forma distribuída.

Esclarecimento: Não, a operação de matching ocorre no lado cliente da solução, de forma distribuída. 1 Dúvida: - Em relação ao item 1.2 da Seção 2 - Requisitos funcionais, entendemos que a solução proposta poderá funcionar em uma arquitetura Web e que na parte cliente estará apenas o componente de captura

Leia mais

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart.

Glossário Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Apresenta a definição dos termos, siglas e abreviações utilizadas no contexto do projeto Citsmart. Versão 1.6 15/08/2013 Visão Resumida Data Criação 15/08/2013 Versão Documento 1.6 Projeto Responsáveis

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Gerência de processos Controle e descrição de processos Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno Sumário Representação e controle de processos pelo SO Estrutura

Leia mais

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

Leia mais

23/05/12. Computação em Nuvem. Computação em nuvem: gerenciamento de dados. Computação em Nuvem - Características principais

23/05/12. Computação em Nuvem. Computação em nuvem: gerenciamento de dados. Computação em Nuvem - Características principais Computação em Nuvem Computação em nuvem: gerenciamento de dados Computação em nuvem (Cloud Computing) é uma tendência recente de tecnologia cujo objetivo é proporcionar serviços de Tecnologia da Informação

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Heurísticas para Controle de Execução de Atividades de Workflows Científicos na Nuvem 1

Heurísticas para Controle de Execução de Atividades de Workflows Científicos na Nuvem 1 Heurísticas para Controle de Execução de Atividades de Workflows Científicos na Nuvem 1 Flavio da Silva Costa Orientadora: Marta Mattoso Colaborador: Daniel de Oliveira Nível: Mestrado Programa de Engenharia

Leia mais

Arquitetura de Banco de Dados

Arquitetura de Banco de Dados Arquitetura de Banco de Dados Daniela Barreiro Claro MAT A60 DCC/IM/UFBA Arquitetura de Banco de dados Final de 1972, ANSI/X3/SPARC estabeleceram o relatório final do STUDY GROUP Objetivos do Study Group

Leia mais

Automação de Locais Distantes

Automação de Locais Distantes Automação de Locais Distantes Adaptação do texto Improving Automation at Remote Sites da GE Fanuc/ Water por Peter Sowmy e Márcia Campos, Gerentes de Contas da. Nova tecnologia reduz custos no tratamento

Leia mais

Por Antonio Couto. Autor: Antonio Couto Enterprise Architect

Por Antonio Couto. Autor: Antonio Couto Enterprise Architect Cloud Computing e HP Converged Infrastructure Para fazer uso de uma private cloud, é necessário crescer em maturidade na direção de uma infraestrutura convergente. Por Antonio Couto O que é Cloud Computing?

Leia mais

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUÍDOS Arquiteturas www.pearson.com.br capítulo 2 slide 1 2.1 Estilos Arquitetônicos Formado em termos de componentes, do modo como esses componentes estão conectados uns aos outros, dos dados trocados entre

Leia mais

Semântica para Sharepoint. Busca semântica utilizando ontologias

Semântica para Sharepoint. Busca semântica utilizando ontologias Semântica para Sharepoint Busca semântica utilizando ontologias Índice 1 Introdução... 2 2 Arquitetura... 3 3 Componentes do Produto... 4 3.1 OntoBroker... 4 3.2 OntoStudio... 4 3.3 SemanticCore para SharePoint...

Leia mais

O uso do gestor de conteúdos plone no suporte a processos de software

O uso do gestor de conteúdos plone no suporte a processos de software O uso do gestor de conteúdos plone no suporte a processos de software Fernando Silva Parreiras Objetivo Demonstrar a aplicação de ferramentas de gestão de conteúdo, especificamente o plone, no apoio a

Leia mais

APLICATIVO MOBILE CATÁLOGO DE PÁSSAROS - PLATAFORMA ANDROID/MYSQL/WEBSERVICE

APLICATIVO MOBILE CATÁLOGO DE PÁSSAROS - PLATAFORMA ANDROID/MYSQL/WEBSERVICE APLICATIVO MOBILE CATÁLOGO DE PÁSSAROS - PLATAFORMA ANDROID/MYSQL/WEBSERVICE MARCOS LEÃO 1, DAVID PRATA 2 1 Aluno do Curso de Ciência da Computação; Campus de Palmas; e-mail: leão@uft.edu.br PIBIC/UFT

Leia mais

Tipos de Sistemas Distribuídos (Cluster e Grid)

Tipos de Sistemas Distribuídos (Cluster e Grid) Tipos de Sistemas Distribuídos (Cluster e Grid) Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

Leia mais

Cloud Computing. Edy Hayashida E-mail: edy.hayashida@uol.com.br

Cloud Computing. Edy Hayashida E-mail: edy.hayashida@uol.com.br Cloud Computing Edy Hayashida E-mail: edy.hayashida@uol.com.br Facebook 750 milhões de usuários 42% de todos os usuários do Facebook estão localizado na América, 27% na Ásia e 25% na Europa 4% na África

Leia mais

UMA PROPOSTA PARA COMPARAÇÃO DE PROVEDORES DE COMPUTAÇÃO EM NUVEM DESDE UMA PERSPECTIVA DE INTEGRAÇÃO DE APLICAÇÕES 1

UMA PROPOSTA PARA COMPARAÇÃO DE PROVEDORES DE COMPUTAÇÃO EM NUVEM DESDE UMA PERSPECTIVA DE INTEGRAÇÃO DE APLICAÇÕES 1 UMA PROPOSTA PARA COMPARAÇÃO DE PROVEDORES DE COMPUTAÇÃO EM NUVEM DESDE UMA PERSPECTIVA DE INTEGRAÇÃO DE APLICAÇÕES 1 Igor G. Haugg 2, Rafael Z. Frantz 3, Fabricia Roos-Frantz 4, Sandro Sawicki 5. 1 Pesquisa

Leia mais

7.Conclusão e Trabalhos Futuros

7.Conclusão e Trabalhos Futuros 7.Conclusão e Trabalhos Futuros 158 7.Conclusão e Trabalhos Futuros 7.1 Conclusões Finais Neste trabalho, foram apresentados novos métodos para aceleração, otimização e gerenciamento do processo de renderização

Leia mais

O que é Cloud Computing?

O que é Cloud Computing? O que é Cloud Computing? Referência The Economics Of The Cloud, Microsoft, Nov. 2010 Virtualização, Brasport, Manoel Veras, Fev. 2011. 2 Arquitetura de TI A arquitetura de TI é um mapa ou plano de alto

Leia mais

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR 6LPXODomR GH6LVWHPDV )HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR #5,6. Simulador voltado para análise de risco financeiro 3RQWRV IRUWHV Fácil de usar. Funciona integrado a ferramentas já bastante conhecidas,

Leia mais

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite andreza.lba@gmail.com Projeto de Sistemas Distribuídos Prof. Andrêza Leite andreza.lba@gmail.com Agenda Introdução Exemplos de Sistemas Distribuídos Compartilhamento de Recursos e a Web Principais Desafios para a Implementação

Leia mais

Estratégia da VMware: O modelo corporativo definido por software e o desafio de simplificar a TI. Anderson Ferreira Bruno Amaral 22 Ago 2014

Estratégia da VMware: O modelo corporativo definido por software e o desafio de simplificar a TI. Anderson Ferreira Bruno Amaral 22 Ago 2014 Estratégia da VMware: O modelo corporativo definido por software e o desafio de simplificar a TI Anderson Ferreira Bruno Amaral 22 Ago 2014 Desafios de TI Arquitetura da VMware Estratégia da VMware Sucesso

Leia mais

João Víctor Rocon Maia Engenharia de Computação - UFES

João Víctor Rocon Maia Engenharia de Computação - UFES João Víctor Rocon Maia Engenharia de Computação - UFES Agenda Quem usa? Conceito Ilustração Vantagens Tipologia Topologia Como fazer? O que é preciso? Infraestrutura Sistema Operacional Software Eucalyptus

Leia mais

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como: Plano de Teste (resumo do documento) I Introdução Identificador do Plano de Teste Esse campo deve especificar um identificador único para reconhecimento do Plano de Teste. Pode ser inclusive um código

Leia mais

GIS Cloud na Prática. Fabiano Cucolo 26/08/2015

GIS Cloud na Prática. Fabiano Cucolo 26/08/2015 GIS Cloud na Prática Fabiano Cucolo 26/08/2015 Um pouco sobre o palestrante Fabiano Cucolo fabiano@soloverdi.com.br 11-98266-0244 (WhatsApp) Consultor de Geotecnologias Soloverdi Engenharia www.soloverdi.com.br.

Leia mais

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)?

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)? Roteiro BCC321 - Banco de Dados I Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Conceitos Básicos Banco

Leia mais

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Modelos de Dados, Esquemas e Instâncias 2 Modelos de Dados, Esquemas e Instâncias Modelo de dados: Conjunto de conceitos

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Projeto de Arquitetura Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 11 Slide 1 Objetivos Apresentar projeto de arquitetura e discutir sua importância Explicar as decisões de projeto

Leia mais

Agenda CLOUD COMPUTING I

Agenda CLOUD COMPUTING I Agenda O que é Cloud Computing? Atributos do Cloud Computing Marcos do Cloud Computing Tipos do Cloud Computing Camadas do Cloud computing Cloud Computing Tendências O Cloud Computing do Futuro Pros &

Leia mais

Núvem Pública, Privada ou Híbrida, qual adotar?

Núvem Pública, Privada ou Híbrida, qual adotar? Instituto de Educação Tecnológica Pós-graduação Gestão e Tecnologia da Informação - Turma 25 03/04/2015 Núvem Pública, Privada ou Híbrida, qual adotar? Paulo Fernando Martins Kreppel Analista de Sistemas

Leia mais

Fundamentos de Banco de Dados

Fundamentos de Banco de Dados Fundamentos de Banco de Dados SISTEMAS BASEADOS NO PROCESSAMENTO DE ARQUIVOS Sistema A Funcionário Pagamento Cargo Sistema B Funcionário Projeto SISTEMAS GERENCIADORES DE BANCO DE DADOS (SGBD) Sistema

Leia mais

O que é Grid Computing

O que é Grid Computing Grid Computing Agenda O que é Grid Computing Grid vs Cluster Benefícios Tipos de Grid Aplicações Ferramentas e padrões Exemplos no mundo Exemplos no Brasil Grid no mundo dos negócios Futuro O que é Grid

Leia mais

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas

Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri. Banco de Dados Processamento e Otimização de Consultas Processamento e Otimização de Consultas Banco de Dados Motivação Consulta pode ter sua resposta computada por uma variedade de métodos (geralmente) Usuário (programador) sugere uma estratégia para achar

Leia mais

Prof. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013

Prof. Luiz Fernando Bittencourt MC714. Sistemas Distribuídos 2 semestre, 2013 MC714 Sistemas Distribuídos 2 semestre, 2013 Virtualização - motivação Consolidação de servidores. Consolidação de aplicações. Sandboxing. Múltiplos ambientes de execução. Hardware virtual. Executar múltiplos

Leia mais

CloudNet: dynamic pooling of cloud resources by live WAN migration of virtual machines

CloudNet: dynamic pooling of cloud resources by live WAN migration of virtual machines CloudNet: dynamic pooling of cloud resources by live WAN migration of virtual machines Timothy Wood, Prashant Shenoy, K.K. Ramakrishnan, Jacobus Van der Merwe VEE '11 Proceedings of the 7th ACM SIGPLAN/SIGOPS

Leia mais

Minicurso Computação em Nuvem Prática: Openstack

Minicurso Computação em Nuvem Prática: Openstack Grupo de Pesquisa em Software e Hardware Livre André Rover de Campos Membro Colméia andreroverc@gmail.com Joinville Minicurso Computação em Nuvem Prática: Openstack Roteiro Definições Virtualização Data

Leia mais

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Perola André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Prevayler é a implementação em Java do conceito de Prevalência. É um framework que prega uma JVM invulnerável

Leia mais

Planejamento Estratégico de TI. Felipe Pontes felipe.pontes@gmail.com

Planejamento Estratégico de TI. Felipe Pontes felipe.pontes@gmail.com Planejamento Estratégico de TI Felipe Pontes felipe.pontes@gmail.com VPN Virtual Private Network Permite acesso aos recursos computacionais da empresa via Internet de forma segura Conexão criptografada

Leia mais

As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes:

As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes: SGBD Características do Emprego de Bancos de Dados As principais características da abordagem de um banco de dados versus a abordagem de processamento de arquivos são as seguintes: Natureza autodescritiva

Leia mais

FundamentosemInformática

FundamentosemInformática FundamentosemInformática 04 Software Conteúdo Conceito de Software Classificação de Softwares Conceito de Sistema Operacional(S.O.) FunçõesBásicasdeumS.O. um Arquivos Atributos Diretórios 1 -Conceitos

Leia mais

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP

Banco de Dados. Introdução. João Eduardo Ferreira Osvaldo Kotaro Takai. jef@ime.usp.br DCC-IME-USP Banco de Dados Introdução João Eduardo Ferreira Osvaldo Kotaro Takai jef@ime.usp.br DCC-IME-USP Importância dos Bancos de Dados A competitividade das empresas depende de dados precisos e atualizados. Conforme

Leia mais

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software

Análise e Projeto de Sistemas. Engenharia de Software. Análise e Projeto de Sistemas. Contextualização. Perspectiva Histórica. A Evolução do Software Análise e Projeto de Sistemas Análise e Projeto de Sistemas Contextualização ENGENHARIA DE SOFTWARE ANÁLISE E PROJETO DE SISTEMAS ENGENHARIA DA INFORMAÇÃO Perspectiva Histórica Engenharia de Software 1940:

Leia mais

Introdução à Computação

Introdução à Computação Aspectos Importantes - Desenvolvimento de Software Motivação A economia de todos países dependem do uso de software. Cada vez mais, o controle dos processos tem sido feito por software. Atualmente, os

Leia mais

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO Intranets FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO As intranets são redes internas às organizações que usam as tecnologias utilizadas na rede mundial

Leia mais

4 Um Exemplo de Implementação

4 Um Exemplo de Implementação 4 Um Exemplo de Implementação Neste capítulo será discutida uma implementação baseada na arquitetura proposta. Para tanto, será explicado como a arquitetura proposta se casa com as necessidades da aplicação

Leia mais

15/09/2015. Gestão e Governança de TI. Modelo de Governança em TI. A entrega de valor. A entrega de valor. A entrega de valor. A entrega de valor

15/09/2015. Gestão e Governança de TI. Modelo de Governança em TI. A entrega de valor. A entrega de valor. A entrega de valor. A entrega de valor Gestão e Governança de TI Modelo de Governança em TI Prof. Marcel Santos Silva PMI (2013), a gestão de portfólio é: uma coleção de projetos e/ou programas e outros trabalhos que são agrupados para facilitar

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Introdução Projeto de Arquitetura (Cap 11 - Sommerville) UNIVERSIDADE FEDERAL DE ALAGOAS Curso de Ciência da Computação Engenharia de Software I Prof. Rômulo Nunes de Oliveira Até agora, estudamos: Os

Leia mais

Projeto Pedagógico do Bacharelado em Ciência da Computação. Comissão de Curso e NDE do BCC

Projeto Pedagógico do Bacharelado em Ciência da Computação. Comissão de Curso e NDE do BCC Projeto Pedagógico do Bacharelado em Ciência da Computação Comissão de Curso e NDE do BCC Fevereiro de 2015 Situação Legal do Curso Criação: Resolução CONSU no. 43, de 04/07/2007. Autorização: Portaria

Leia mais

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Juarez Bachmann Orientador: Alexander Roberto Valdameri Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento

Leia mais

Tecnologia de Soluções Biométricas Neokoros AFIS Corporate / SDK: Visão Geral

Tecnologia de Soluções Biométricas Neokoros AFIS Corporate / SDK: Visão Geral Tecnologia de Soluções Biométricas Neokoros AFIS Corporate / SDK: Visão Geral www.neokoros.com Neokoros IT Ltd. Biometric Technology. All Rights Reserved: 2010 2014 Índice 1 - Introdução... 3 2 - AFIS

Leia mais

Uso de taxonomias na gestão de conteúdo de portais corporativos.

Uso de taxonomias na gestão de conteúdo de portais corporativos. Gestão de Conteúdo web através de ontologias: conceitos e aplicações Fernando Silva Parreiras Contextualização O que? Uso de taxonomias na gestão de conteúdo de portais corporativos. Quem? Gerentes, consultores

Leia mais

Aula 01 Introdução ao Gerenciamento de Redes

Aula 01 Introdução ao Gerenciamento de Redes Aula 01 Introdução ao Gerenciamento de Redes Leonardo Lemes Fagundes leonardo@exatas.unisinos.br São Leopoldo, 15 de outubro de 2004 Roteiro Apresentação da disciplina Objetivos Conteúdo programático Metodologia

Leia mais

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING http://www.uniriotec.br/~tanaka/tin0036 tanaka@uniriotec.br Bancos de Dados Distribuídos Conceitos e Arquitetura Vantagens das Arquiteturas C/S (em relação

Leia mais

Inovação Social Com Big Data. Marcelo Sales CTO HDS América Latina

Inovação Social Com Big Data. Marcelo Sales CTO HDS América Latina Inovação Social Com Big Data Marcelo Sales CTO HDS América Latina POR QUE ESTAMOS FALANDO DE BIG DATA? BIG QUIZ Qual é o número de hits quando se pesquisa no Google pelo termo BIG DATA? BIG QUIZ RESPOSTA

Leia mais

Forneça a próxima onda de inovações empresariais com o Open Network Environment

Forneça a próxima onda de inovações empresariais com o Open Network Environment Visão geral da solução Forneça a próxima onda de inovações empresariais com o Open Network Environment Visão geral À medida que tecnologias como nuvem, mobilidade, mídias sociais e vídeo assumem papéis

Leia mais

Arquiteturas Paralelas e Distribuídas

Arquiteturas Paralelas e Distribuídas Arquiteturas Paralelas e Distribuídas TSI-6AN Apresentado por: Cleber Schroeder Fonseca 1 CLOUD COMPUTING 2 Cloud Computing A expressão cloud computing (computação nas nuvens) começou a ganhar força em

Leia mais

Universidade de Brasília. Departamento de Ciência da Informação e Documentação. Prof a.:lillian Alvares

Universidade de Brasília. Departamento de Ciência da Informação e Documentação. Prof a.:lillian Alvares Universidade de Brasília Departamento de Ciência da Informação e Documentação Prof a.:lillian Alvares Fóruns óu s/ Listas de discussão Espaços para discutir, homogeneizar e compartilhar informações, idéias

Leia mais

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes

Engenharia de Software: Introdução. Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes Engenharia de Software: Introdução Mestrado em Ciência da Computação 2008 Profa. Itana Gimenes Programa 1. O processo de engenharia de software 2. UML 3. O Processo Unificado 1. Captura de requisitos 2.

Leia mais

Gerenciamento de Incidentes

Gerenciamento de Incidentes Gerenciamento de Incidentes Os usuários do negócio ou os usuários finais solicitam os serviços de Tecnologia da Informação para melhorar a eficiência dos seus próprios processos de negócio, de forma que

Leia mais

Definição de Padrões. Padrões Arquiteturais. Padrões Arquiteturais. Arquiteturas de Referência. Da arquitetura a implementação. Elementos de um Padrão

Definição de Padrões. Padrões Arquiteturais. Padrões Arquiteturais. Arquiteturas de Referência. Da arquitetura a implementação. Elementos de um Padrão DCC / ICEx / UFMG Definição de Padrões Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Um padrão é uma descrição do problema e a essência da sua solução Documenta boas soluções para problemas recorrentes

Leia mais

Algoritmos Genéticos

Algoritmos Genéticos UNIVERSIDADE PRESBITERIANA MACKENZIE Laboratório de Computação Natural LCoN I ESCOLA DE COMPUTAÇÃO NATURAL Algoritmos Genéticos Rafael Xavier e Willyan Abilhoa Outubro/2012 www.computacaonatural.com.br

Leia mais

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info

Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com. http://www.tiagodemelo.info Bancos de dados distribuídos Prof. Tiago Eugenio de Melo tiagodemelo@gmail.com Última atualização: 20.03.2013 Conceitos Banco de dados distribuídos pode ser entendido como uma coleção de múltiplos bds

Leia mais

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração

Leia mais

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura

Leia mais