VMOLA DRUG DISCOVERY EM CLUSTERS VIRTUALIZADOS

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

Download "VMOLA DRUG DISCOVERY EM CLUSTERS VIRTUALIZADOS"

Transcrição

1 VMOLA DRUG DISCOVERY EM CLUSTERS VIRTUALIZADOS Aníldio Celmiro Barbosa Toca nº João Nuno Alves de Sousa nº14258 Trabalho realizado sob a orientação de Professor José Rufino (ESTiG) Professor Rui Abreu (ESA) Engenharia Informática 2011/2012

2 ii

3 VMola Drug Discovery em Clusters Virtualizados Relatório da UC de Projecto Licenciatura em Engenharia Informática Escola Superior de Tecnologia e de Gestão Aníldio Barbosa, João Sousa 2011/2012 iii

4 A Escola Superior de Tecnologia e Gestão não se responsabiliza pelas opiniões expressas neste relatório. iv

5 Certifico que li este relatório e que na minha opinião, é adequado no seu conteúdo e forma como demonstrador do trabalho desenvolvido no âmbito da UC de Projecto. José Carlos Rufino Amaro - Orientador Certifico que li este relatório e que na minha opinião, é adequado no seu conteúdo e forma como demonstrador do trabalho desenvolvido no âmbito da UC de Projecto. Rui M. V. Abreu - Co-Orientador Certifico que li este relatório e que na minha opinião, é adequado no seu conteúdo e forma como demonstrador do trabalho desenvolvido no âmbito da UC de Projecto. Arguente Aceite para avaliação da UC de Projecto v

6 vi

7 Agradecimentos Em primeiro lugar gostaríamos de agradecer ao Professor José Rufino, pelo apoio e ajuda que nos deu ao longo do nosso percurso académico, especialmente no desenvolvimento deste projecto. Em segundo gostaríamos de agradecer a co-orientação do Professor Rui Abreu, pois contribuiu para o nosso enquadramento na área da bioinformática, transmitindo-nos conhecimentos teóricos acerca este tema. Gostaríamos também de agradecer ao nosso companheiro e amigo Hugo Froufe que através dos seus conhecimentos, companheirismo e persistência contribuiu continuamente para o desenvolvimento deste projecto ao longo deste ano lectivo. Por último, gostaríamos também de agradecer às nossas famílias e amigos pelo apoio, amizade, companheirismo e compreensão que foram essenciais para estes anos académicos por nós passados. vii

8 viii

9 Resumo O presente documento descreve o trabalho realizado na unidade curricular de Projecto, do curso de licenciatura em Engenharia Informática do Instituto Politécnico de Bragança. O documento descreve as etapas percorridas para o desenvolvimento de um cluster virtual e a implementação de uma aplicação capaz de gerir todo o processo necessário para a realização de docking proteínas-ligandos e armazenar os resultados numa base de dados. O cluster é constituído por um conjunto de computadores com o sistema operativo CentOS 6, sendo que existe um considerado principal, FrontEnd, que executa todas as tarefas de gestão, desde a inserção de um novo equipamento até a submissão de tarefas. Os restantes computadores funcionaram apenas como equipamentos que executarão as tarefas, denominados de Nó. Quanto a aplicação, foram desenvolvidas varias interfaces gráficas em python com o objectivo de integrar um conjunto de bibliotecas utilizadas para fazer docking, como é o caso do Openbabel, AutoDock Vina e AutoDock4. A interface gráfica foi dividida em quatro menus. No primeiro menu permite submeter tarefas para a realização de docking. No segundo menu podem ser consultados todos os resultados existentes na base de dados. O terceiro e quarto menu permitem adicionar respectivamente as proteínas e ligandos para serem utilizados posteriormente para a realização de docking. Palavras-chave: Cluster, Máquinas Virtuais, Estudo de novos fármacos, Base de Dados ix

10 x

11 Abstract This paper describes the work done in the course of the Projecto, the undergraduate program in Computer Engineering, Instituto Politécnico de Bragança. The document describes the steps taken for developing and implementing a virtual cluster of an application able to manage the entire process necessary for the realization of protein-ligand "docking" and store the results in a database. The cluster consists on a set of computers with the operating system CentOS 6, where exists a deemed principal, FrontEnd, which performs all management tasks from the inclusion of new equipment into submission task. The remaining computers worked only as devices that perform tasks, called Nó. As for implementation, were developed several GUIs in Python with the aim of integrating a set of libraries used to "docking", as is the case OpenBabel, AutoDock Vina and AutoDock4. The graphical interface is divided into four menus. In the first menu allows you to submit tasks to perform "docking". In the second menu can be viewed all results existing in the database. The third and fourth respectively menu allow you to add the protein and ligand to be used later to perform "docking". Keywords: Cluster, Virtual Machines, Drug Discovery, Database xi

12 xii

13 Conteúdo 1 Introdução Contexto e Motivação Objectivos do Projecto Contribuições do Projecto Estrutura do Documento Enquadramento Docking proteína-ligando Screening Virtual Bases de Dados Computação Paralela Virtualização de Sistemas VirtualBox versus VMware Tecnologias e Ferramentas Bioinformática MGLTools AutoDock Vina OpenBabel Bases de Dados xiii

14 3.2.1 MySQL PHPMyAdmin Desenvolvimento em Python Linguagem Python Komodo Edit WingWare Python IDE wxpython MySQLdb Virtualização VMware Workstation / Fusion / Player Clusters HPC Distribuição Linux ROCKS Aplicação vmola Base de Dados Normalização Modelo Entidade-Relação (E-R) Interface Gráfica Submissão de Tarefas Apresentação dos Resultados Adição de Proteínas Adição de Ligandos Conversão SMI para MOL Preparação dos Ligandos Cluster vmola Cluster xiv

15 5.1.1 O que é um Cluster? FrontEnd Nós Distribuição Conclusões e Trabalho Futuro Referências Bibliográficas A. Processo de Inserção de um Novo Nó... 1 A.1 Criação da Máquina Virtual... 1 A.2 Criação da Máquina Virtual... 5 B. Preparação da VM frontend.mola2.local de base... 8 C. Dicionário de Dados A.3 Tabela Ligandos A.4 Tabela Proteínas A.5 Tabela Resultados xv

16 Lista de Tabelas Tabela 1 - Normalização dos Dados Tabela 2 - Dicionário de dados tabela ligando Tabela 3 - Dicionário de dados tabela Proteína Tabela 4 - Dicionário de dados tabela Resultados Lista de Figuras Fig. 1 - Modelo E-R da Base de Dados Fig. 2 - Menu inicial Fig. 3 - Erro de Ligação Fig. 4 - Navegadores Fig. 5 - Navegador Job Submition Fig. 6 - Visualização dos Ligandos Fig. 7 - Menu de Apresentação dos Resultados Fig. 8 - Apresentação dos Resultados Fig. 9 - Menu ADD Protein Fig Selecção da proteína Fig Execução do AutoDockTools xvi

17 Fig Menu ADD Ligand Fig. 13 Abertura de ficheiros SMI Fig Gravar ficheiros SMI Fig Selecção da directoria dos Ligandos Fig. 16 Cluster Fig Vista Virtual do FrontEnd Fig Vista Virtual do Nó Fig Menu criação de uma VM VMware Player Fig Modo de instalação do SO Fig Tipo do SO Fig Nome e localização da VM Fig Tamanho e modo de criação do disco Fig Placa de rede Fig Resumo das características da VM xvii

18 Lista de Abreviaturas VM Virtual Machine (Máquina virtual) E-R Entidade Relação SO Sistema Operativo BD Base de Dados xviii

19 Capítulo 1 1 Introdução 1.1 Contexto e Motivação O trabalho apresentado neste relatório desenvolveu-se no âmbito da unidade curricular de Projecto, do 3º ano da Licenciatura de Engenharia Informática, do Instituto Politécnico de Bragança. Sendo a Bioinformática uma área ausente do leque curricular do nosso curso, mas que nos suscita bastante curiosidade, decidimos abrir horizontes e abraçar este projecto. Para além do carácter multidisciplinar do mesmo, outro factor que impulsionou a nossa escolha foi a perspectiva de produzir ferramentas com aplicabilidade real e relevância científica. 1.2 Objectivos do Projecto Em termos gerais, o objectivo inicial do nosso projecto era a extensão da plataforma MOLA1 [1] de screening virtual em, clusters HPC não-dedicados, para clusters HPC dedicados e com gestão de trabalhos em lote (batch). Para além da adaptação a um novo ambiente de execução, pretendia-se também melhorar o interface de utilização, bem como o nível de integração com ferramentas de docking externas. 1

20 1.3 Contribuições do Projecto O resultado final do projecto foi uma nova aplicação de screening virtual, (completamente independente da aplicação anterior), e um cluster HPC virtual para a sua execução. Em conjunto, constituem o que designamos por plataforma VMola. Resumidamente, a aplicação VMola possui as seguintes características: Gratuita e de Código Aberto; Baseada maioritariamente em Python; Interface GUI de fácil utilização; Tira partido de computação paralela em clusters com gestão de trabalhos em lotes (batch), para melhorar o desempenho do docking proteínas-ligandos; Tira partido de uma base de dados que permite a pesquisa e utilização de ligandos, proteínas e resultados previamente obtidos. A aplicação VMola é uma ferramenta que serve a área da Bioinformática, no que concerne ao estudo de novos fármacos (mais especificamente, no que diz respeito a um estudo de carácter preliminar, isto é, de ligandos e proteínas específicas cuja associação terá um efeito no organismo). O cluster VMola é um cluster HPC virtualizado, pré-configurado para executar a nova aplicação, com recurso a máquinas não-dedicadas (e.g., PCs de salas de aula, laboratórios ou até notebooks) interligadas em vulgares redes locais, e sem requisitos especiais ou necessidades de re-configuração de infra-estruturas pré-existentes. 1.4 Estrutura do Documento O resto deste documento organiza-se em 5 capítulos e 3 anexos: Capítulo 2: apresentação dos conceitos estruturantes do projecto (Bioinformática, Bases de Dados, Computação Paralela e Virtualização de Sistemas); 2

21 Capítulo 3: descrição das tecnologias e ferramentas utilizadas para o desenvolvimento do projecto, incluindo razões para a sua escolha; Capítulo 4: descrição da aplicação incluindo componentes GUI, utilização e interacção com Base de Dados, e modo de funcionamento; Capítulo 5: apresentação do cluster virtual para execução paralela; Capítulo 6: conclusões e vias futuras de trabalho; Anexo A: processo de inserção de um novo nó no cluster virtual; Anexo B: preparação da VM frontend de um novo cluster virtual; Anexo C: Dicionário de Dados da Base de Dados. 3

22 Capítulo 2 2 Enquadramento A química computacional e a bioinformática estrutural são áreas com cada vez maior importância no processo de descoberta de novos fármacos. O screening virtual de bibliotecas de até milhões de pequenos compostos, utilizando ferramentas como o docking proteínaligando é uma das metodologias mais utilizadas embora seja muitas vezes necessário o recurso a clusters de computadores. Desta forma a criação de novas aplicações de computação paralela é de grande importância para o processo da descoberta de novos fármacos. A ferramenta computacional MOLA 1.0 ( foi desenvolvida para a utilização dos softwares de docking, AutoDock4 e AutoDock Vina, em clusters Linux de computadores não dedicados. A partir desta foi criada uma nova ferramenta (VMola) para clusters de computadores dedicados utilizando o sistema SGE. O VMola está desenvolvido em linguagem python. 2.1 Docking proteína-ligando O docking é uma metodologia bioinformática que tenta prever computacionalmente, se existe alguma interacção entre duas moléculas, e se sim, qual a geometria mais provável dessa interacção. Existem diferentes tipos de docking que podem ser classificados de acordo com as moléculas que estão a ser estudadas. Neste trabalho os estudos de docking 4

23 realizados são do tipo proteína-ligando. Nesta metodologia o objectivo é tentar prever a interacção entre uma determinada proteína em estudo e um composto muito mais pequeno que pode(m) ser o(s) ligando(s) naturais, ou um potencial inibidor da proteína, que poderá eventualmente ser utilizado como fármaco contra várias patologias. [2] Em áreas de utilização mais aplicada o docking proteína-ligando permite realizar estudos que até agora só eram possíveis laboratorialmente logo mais dispendiosos e morosos. Esta metodologia atrai cada vez mais interesse, principalmente por parte da indústria farmacêutica, pois é muito mais barata e rápida quando comparada com os ensaios experimentais para realizar o mesmo estudo. No entanto é importante ter a noção de que estes estudos de docking não substituem os ensaios experimentais, antes complementam-se na descoberta de novos fármacos. [3] 2.2 Screening Virtual Quando utilizamos a metodologia de docking, apresentada na secção anterior, para estudar a interacção com um alvo proteico, não de um, mas de muitos compostos químicos, dizemos que estamos a realizar um screening virtual ou screening in silico (HTVS High Thrououput Virtual Screening). Nesta aplicação temos, de um lado a proteína em estudo, e do outro uma base de dados de compostos químicos incluindo de centenas a centenas de milhares (em alguns casos mesmo milhões) de compostos químicos. [4] Esta abordagem atrai cada vez mais interesse, principalmente da indústria farmacêutica, pois pode ser utilizada para realizar uma triagem inicial durante o processo de descoberta de novos fármacos para uma determinada patologia. O processo usual para a descoberta de novos fármacos é iniciada com a selecção de um alvo (normalmente uma proteína). A etapa seguinte consiste normalmente na execução de bioensaios bioquímicos in vitro de bibliotecas de compostos químicos, com o objectivo de seleccionar quais os compostos que tem maior capacidade inibidora da proteína alvo. Como estas bibliotecas são constituídas por muitos milhares de compostos químicos esta etapa é muito dispendiosa. O Screening virtual (HTVS) pode ser utilizado como etapa intermédia para a selecção, de entre todos os compostos químicos constituintes da biblioteca, dos que tem maior potencial inibitório. Desta forma os bioensaios bioquímicos in vitro são realizados apenas com os compostos seleccionados por HTVS diminuindo o custo desta 5

24 etapa. [3] Ao utilizar a metodologia de screening virtual devem ser tomadas em consideração vários aspectos. Os resultados obtidos não podem ser considerados resultados experimentais, nem é esse o objectivo desta metodologia. O objectivo do HTVS não é o de obter conclusivamente um conjunto de resultados definitivos, mas sim escolher um subconjunto de compostos com melhores resultados (1 a 10 % da biblioteca de compostos) do que se os compostos fossem escolhidos ao acaso. [4] De qualquer forma os programas informáticos de docking estão em constante evolução e os resultados são cada vez mais confiáveis. [2] Outro problema a ter em conta é a capacidade de processamento computacional necessária para a execução de ensaios in silico de docking e de screening virtual. Este tipo de ensaios é computacionalmente muito exigente e muitas vezes é necessário fazer simplificações e optimizar parâmetros de docking para que os ensaios sejam realizados em tempo útil. No entanto, a velocidade de processamento dos computadores é cada vez mais elevada. Além disso a capacidade de processamento pode ser aumentada utilizando sistemas que utilizam vários processadores ao mesmo tempo como sistemas de Clusters, Grids e Supercomputadores. [5] 2.3 Bases de Dados Uma Base de Dados (BD) é um conjunto de dados organizados em Campos, Registos e Tabelas, que se inter-relacionam por intermédio de chaves e permitem o acesso a diferentes perfis de utilizadores. O aparecimento das primeiras bases de dados está directamente relacionado com o surgimento da linguagem SQL Structured Query Language, sendo o SQL uma linguagem de consulta para base de dados relacionais. A caracterização de bases de dados como sendo do tipo relacional tem a ver com o facto de que muitas das suas características foram inspiradas na álgebra relacional. A manipulação das bases de dados é feita utilizando Sistemas de Gestão de Base de Dados (SGDB), que preserva as principais características de uma base de dados: organização, consistência, integridade, segurança e a não redundância de informação. 6

25 A manipulação dos dados baseia-se no envio de comandos (queries) SQL à base de dados. Estes dividem-se em duas grandes categorias: os comandos DDL (Data Definition Language) e os comandos DML (Data Manipulation Language), descritos a seguir. Os comandos DDL implementam o esquema (Estrutura) da base de dados. A execução dos comandos DDL resulta numa série de tabelas e registos que formará a base de dados e que serão armazenadas num arquivo denominado Dicionário de Dados. [6] Os comandos DDL standards são do seguinte tipo: Create, para criação de tabelas; Alter, para alteração de Tabelas; Drop, para remoção de tabelas. Os comandos DML têm como objectivo permitir a consulta, actualização e remoção de dados guardados na base de dados. Os comandos DML podem ser procedimentais, (requerem a especificação dos dados a aceder e a forma de acesso), ou não-procedimentais (requerem apenas especificações relacionadas com os dados a aceder, actuando sobre os conteúdos das tabelas, produzindo novas tabelas denominadas por vistas, etc.). Os comandos DML Standards são do seguinte tipo: Select, para procurar dados; Insert, para inserção de dados; Update, para actualização de dados; Delete, para remoção de dados. 2.4 Computação Paralela A Computação Paralela consiste na execução de componentes do mesmo programa em simultâneo (i.e., em paralelo), habitualmente com o propósito de acelerar a sua execução. Para tal ser possível, o problema original, e os algoritmos adoptados na sua resolução têm que ser 7

26 paralelizáveis (i.e., sub-divisíveis em partes ou componentes que possam ser processados em simultâneo e com o mínimo de inter-dependências possível). Actualmente, a Computação Paralela é realizável através de computadores com multiprocessadores/multi-núcleos, co-processadores como GPGPUs (General Purpose GPUs) [7] e outros dispositivos aceleradores (e.g, Telemóveis, etc.), sistemas híbridos que combinam CPUs tradicionais e co-processadores e, inclusivamente, sistemas do tipo clusters que agregam múltiplos sistemas híbridos interligados por redes locais. Estas redes podem ser de uso vulgar (Ethernet) ou recorrer a tecnologias proprietárias de elevada largura de banda (Myrinet/Inniband). A aplicação VMola, desenvolvida no contexto deste projecto tira partido de Computação Paralela em ambiente de cluster. Tal acontece por via de aplicações satélite (ferramentas de docking ) que são em si aplicações paralelas, preparadas para executar em cluster, e que são invocadas a partir da nossa aplicação VMola. 2.5 Virtualização de Sistemas Virtualização de Sistemas (ou Virtualização de Hardware) é a técnica que permite particionar um único sistema computacional em várias máquinas virtuais, (VM) de forma que cada máquina virtual oferece um ambiente muito semelhante a uma máquina física. Dessa forma, cada máquina virtual pode ter o seu próprio sistema operativo e aplicações. Cada máquina virtual executa de forma independente das outras, com quem partilha os recursos físicos. Normalmente, as plataformas de virtualização de sistemas tornam também possível a criação de redes virtuais, interligando as máquinas virtuais entre si e com redes físicas. A virtualização tem como principais vantagens: Segurança, as VM são isoladas e independentes umas das outras; Redução de Custos, possibilita a redução dos custos energéticos e custos com hardware, porque a mesma máquina física pode correr varias VM ao mesmo tempo; Redução de espaço; 8

27 Maximização do hardware, a utilização em simultâneo de várias VM permite tirar partido de todo o hardware da máquina física; Migração, permite a utilização de novos ambientes, aplicações e serviços sem ter que mudar o sistema que serve de base; Possibilita a utilização de SO que não possuem compatibilidade com hardware disponível na máquina física. Como não podia deixar de ser a virtualização também traz algumas desvantagens, sendo a principal no que toca ao desempenho, visto que existe uma nova camada entre o hardware e o SO a VM vai ter um desempenho inferior a que teria se o sistema não fosse virtualizado. A Virtualização de Sistemas pode ser realizada com base em duas abordagens distintas, consoante o posicionamento arquitectural do denominado hypervisor (camada que implementa, efectivamente, a virtualização): tipo 1 (ou bare-metal) e tipo 2 (hosted). No hypervasor do tipo 1 a camada de virtualização corre directamente sobre o hardware, controlando e monitorizando as VM, sem a utilização de um SO hospedeiro, exemplos de alguns hypervasor do tipo 1 são: VMware ESXi ou o Hyper-V da Microsoft. Os hypervasor do tipo 2 a camada de virtualização é executada sobre um SO hospedeiro. A VM vai estar em execução sobre duas camadas, a camada de virtualização e o SO hospedeiro executa e controla as chamadas ao sistema solicitadas pelos SO hóspedes. No contexto deste projecto utilizou-se virtualização de tipo 2, mais especificamente recorrendo a software da VMware VirtualBox versus VMware VirtualBox é um software de virtualização, idêntico ao VMware, actualmente desenvolvido pela Sun Microsystems, mas que foi desenvolvido inicialmente pela Innotek, posteriormente adquirida pela Sun que por sua vez foi adquirida pela Oracle, que visa a criação de VM. Actualmente o VirtualBox é capaz de correr em SO da família Windows, Linux, Macintosh e Solaris, e suporta um largo numero de SO hospede, incluindo Windows (NT 4.0, 9

28 2000, XP, Server 2003, Vista, Windows 7), DOS/Windows 3.x, Linux (2.4 e 2.6), Solaris, OpenSolaris, OS/2 e OpenBSD. A principal vantagem do VirtualBox face ao VMware é o facto de ser gratuito, se bem que existe a versão gratuita do VMware, que como é expectável traz algumas limitações propositadas. Para o uso domestico e em projectos onde não são necessárias configurações avançadas, como o caso da área de desenvolvimento Web, por exemplo, o Virtualbox é bastante útil, mas para projectos com um certo nível de sofisticação, como é o caso deste projecto onde é necessário o arranque das máquinas em PXE (Preboot Execution Environment), só tem suporte para placas de redes da intel, ou tinha que se proceder com a instalação de um pacote que é disponibilizado em separado, o que limitaria e muito o desenvolvimento do projecto, retirando uma característica muito importa que é o facto de ser executada em todas as plataformas e sem grandes requisitos de hardware. 10

29 Capítulo 3 3 Tecnologias e Ferramentas Neste capítulo são apresentadas as tecnologias e ferramentas utilizadas para o desenvolvimento do projecto, e justifica-se a opção pelas mesmas. 3.1 Bioinformática MGLTools MGLTools é um pacote de software para visualização e análise de estruturas moleculares, desenvolvido pelo Molecular Graphics Laboratory (MGL) do Scripps Research Institute. Este software facilita e permite automatizar os fluxos de trabalho necessários para a manutenção de vários cálculos de docking. [8] AutoDock4 O AutoDock4 é conhecido como uma das ferramentas de docking mais confiável e mais usada, com vários exemplos de previsões correctas de docking já publicadas. Esta 11

30 ferramenta consiste em dois programas: o autodock que realiza o docking do ligando a uma grelha na proteína alvo; e o autogrid que serve para pré-calcular essas grelhas. Também usa algoritmos genéticos e os seus resultados são dados como estimativas de mudança de energialivre (ΔG) após a ligação do ligando e faz a previsão da configuração do complexo ligandoreceptor. A maior dificuldade para visualização quando se usa o AutoDock4 é o tempo necessário para cada experiencia molecular de docking. [9] Vina O Vina é um novo software para docking molecular e foi desenhado para ser compatível com os formatos de ficheiros do AutoDock4. Este usa um algoritmo de docking diferente com um método de optimização de gradiente no seu processo de optimização local. A comparação com o AutoDock4 demonstrou que o Vina atingiu aproximadamente 2 ordens de magnitude no aumento de velocidade com significante melhoria da precisão da previsão do método de ligação. Outra vantagem do Vina é de alguns passos de preparação necessários no AutoDock4 são realizados automaticamente. [10] OpenBabel O Openbabel é um programa de química, desenhado para utilizar muitas das linguagens de dados de química. É um projecto aberto e colaborativo que permite a qualquer pessoa procurar, converter, analisar ou guardar informação desde modelos moleculares, química, materiais de estado-sólido, bioquímica, ou áreas afins. [11] 12

31 3.2 Bases de Dados MySQL É um Sistema de Gestão de Base de dados (SGDB) opensource, que assenta na linguagem SQL (Structured Query Language). Tem como principais característica a fácil integração com a maioria das linguagens de programação em especial com a linguagem PHP, que ajudou a popularizar o MySQL com a integração em várias páginas web. A compatibilidade com as linguagens de programação é assegurada com módulos distintos para cada linguagem, designado por Connectors. [12] PHPMyAdmin É um software Opensource para a gestão de base de dados MySQL escrito em PHP. Esta ferramenta utiliza Browsers Web para administrar as Bases de Dados, a sua utilização mais frequente é como ambiente gráfico de gestão de base de dados. O PHPMyAdmin permite realizar diversas operações sobre a base de dados, tabelas e campos, tais como: criação e remoção de utilizadores, alteração de permissão, criar e apagar BD, tabelas, inserção, remoção, actualização, pesquisas de registos, etc. A página web oficial do produto pode ser consultada em 13

32 3.3 Desenvolvimento em Python Linguagem Python Python é uma linguagem de programação de alto nível, interpretada, criada por Guido Van Rossum, em 1991, no instituto de Pesquisa Nacional para a Matemática e Ciência da Computação (CWI), na Holanda. A linguagem foi desenvolvida com a filosofia de minimizar o esforço do programador em detrimento do esforço computacional, privilegiando a legibilidade do código sobre a velocidade de execução. De entre as principais características do Python destacam-se: Tipagem dinâmica: desnecessário declarar o tipo das variáveis e uma mesma variável pode assumir tipos diferentes, segundo o valor que lhe é atribuído; Utilização de indentação para definir blocos: o uso de blocos de códigos é obtido através da indentação do código ao contrário das típicas chavetas ({ }) utilizadas por linguagem como o C, C++, Java, entre outras; Garbage collection automático: para gerir a memória de forma simultaneamente eficiente (minimizar desperdícios) e conveniente (dispensa libertação explícita); Suporte a múltiplos paradigmas programação: programação procedimental, estrutural, orientada a objectos e suporte (modesto) ao paradigma funcional. Outra característica muito importante é o facto de o Python possuir uma biblioteca padrão bastante completa, contendo classes, métodos e funções que auxiliam o programador no desenvolvimento de diferentes programas em variadíssimas áreas. De entre estas bibliotecas destacam-se as de acesso a base de dados (e.g., MySQLdb), desenvolvimento de aplicações gráficas (e.g., Wxpython, Tkinter) e de processamento de imagens. Além da biblioteca padrão, também possui módulos e frameworks desenvolvidos por terceiros. 14

33 E por fim, mas não menos importante, o Python é uma linguagem multiplataforma, podendo ser executada em Windows, Linux/Unix, Mac OS X, e até e, máquinas virtuais Java e Net. Tem também licença Opensource, mesmo para produtos de carácter comercial. A escolha desta linguagem para o desenvolvimento do projecto, em detrimento de outras hipóteses como o Java, C# ou C++, tem a ver com o facto de que todas as ferramentas e bibliotecas de bioinformática utilizadas neste projecto já estarem desenvolvidas e optimizadas para Python. [13] Komodo Edit 7.1 É um editor de texto opensource multiplataforma, que combina a simplicidade e a rapidez de operação. Suporta o reconhecimento de sintaxe de algumas linguagens de programação, tais como: Python, PHP, Ruby, JavaScript, Perl, Tcl, XML,HTML 5, CSS. Outra característica bastante importante deste editor é a função Autocomplete, bastante útil para saber quais os métodos e atributos de um determinado objecto. [14] WingWare Python IDE É um ambiente de desenvolvimento integrado para Python (IDE), que permite editar executar em modo normal e em modo de depuração (debugging). Existe em três versões, duas comerciais (Wing IDE Professional, Wing IDE Personal) e uma gratuita (Wing IDE 101). A versão gratuita, que foi usada durante o projecto, é a mais limitada, não tendo funcionalidades importantes como Auto-Completion, mas ainda com suporte ao modo de depuração. [15] No decorrer do projecto foram utilizados os dois IDE de forma a aproveitar o melhor de cada um, visto que para as versões gratuitas ambos apresentam limitações que podiam ser colmatadas pelo outro. 15

34 3.3.4 wxpython O wxpython é uma ferramenta multiplataforma para desenvolvimento de aplicações gráficas (GUI) para Python. É implementada como uma extensão nativa de Python que utiliza bibliotecas GUI em conjunto com a popular biblioteca wxwidgets (escrita em C++).. Actualmente, suporta a plataforma Windows, Mac OS e a maioria dos sistemas Unix/Linux. A grande vantagem da utilização do wxwidgets pelo wxpython é que o primeiro actua como um wrapper sobre a interface padrão do sistema operativo, fazendo com que as aplicações mudem a aparência consoante os temas específicos dos sistemas operativos. Para o desenvolvimento da parte gráfica da nossa aplicação optou-se pelo wxpython, em detrimento da biblioteca padrão do Python, (TKinter), pelo facto de o wxpython ser mais fácil de utilizar e por disponibilizar uma maior variedade de widgets MySQLdb MySQLdb é uma API, em Python que permite o acesso a bases de dados MySQL, permitindo controlar e aceder às bases de dados, executar comandos SQL e transformar os dados resultantes em formatos convencionais em servidores MySQL através do Python. Podendo o módulo ser obtido a partir do link. [16] Optou-se pelo modulo MySQLdb em detrimento da API do modulo _mysql, por ser mais fácil e pela familiarização que fomos tendo a mediada que descobríamos a linguagem. 16

35 3.4 Virtualização VMware Workstation / Fusion / Player VMware Workstation é uma ferramenta comercial e não-gratuita para virtualização de tipo 2 (rever secção 2.5), ou seja, permite criar e executar máquinas virtuais sobre um SO hospedeiro, como o Windows, Linux e Mac OS (neste caso a versão específica desta ferramenta toma o nome de VMware Fusion). O VMware Player corresponde a uma versão mais limitada do VMware Workstation, (consultar [17] para uma comparação entre os dois produtos) sendo por isso de utilização gratuita. O VMware Workstation foi usado para instanciar clusters virtuais durante o desenvolvimento da plataforma VMola, mas a operação desta plataforma foi também validada com o VMware Player. Uma vez que é gratuito e nenhuma das limitações do VMware Player é relevante sob o ponto de vista da plataforma VMola, o VMware Player será a ferramenta de virtualização recomendada aos futuros utilizadores da plataforma VMola. Outra ferramenta de virtualização de tipo 2 com alguma popularidade, funcionalidades semelhantes às do VMware Workstation e com a vantagem de ser gratuito, é o VirtualBox, da Oracle, que já foi mencionado na secção Nessa mesma secção é feita uma breve comparação com o VMware Workstation, na qual se podem identificar razões de ordem técnica que nos levaram a optar pelo uso do VMware Workstation / Player. 17

36 3.5 Clusters HPC Distribuição Linux ROCKS O Rocks é uma distribuição Linux destinada para clusters de computação de alto desempenho, é distribuído pelo Diego Supercomputing San Center (SDSC), da Universidade da Califórnia em San Diego (UCSD) com o apoio da Parceria Nacional da National Science Foundation para Infra-estrutura de Computação Avançada (NPACI). Foi criada uma parceria entre a SDSC no desenvolvimento de Rocks são sistemas escalonáveis, em Singapura, com o Grupo de HPC da Universidade de Tromso, na Noruega, do Grupo SCE na Universidade de Kasetsart, na Tailândia, e o grupo de desenvolvimento do cluster em KISTI na Coreia. SDSC também recebe doações de equipamentos da Sun Microsystems, Dell, AMD, Infinicon Systems e a Intel. O Rocks foi inicialmente baseado na distribuição Red Hat Linux, no entanto versões modernas de Rocks são baseadas em CentOS, com um instalador modificado Anaconda que simplifica a instalação em massa para muitos computadores. O Rocks inclui muitas ferramentas (como MPI), que não fazem parte do CentOS, mas são componentes integrantes que transformam um grupo de computadores num cluster. Clusters de Rocks são altamente personalizáveis. Na verdade, a distribuição está disponível em várias versões, dependendo de como o cluster está a ser utilizado. Enquanto que 80 por cento do software é o mesmo, uma variedade de pacotes podem ser, alternativamente, se carregado, por exemplo, o cluster será usado para computação de alto desempenho (HPC), para visualização, ou como um recurso de rede. A maioria destas combinações do pacote podem ser transferidas separadamente (cafeteria-style) no site da Rocks como pacotes chamados de rolls, para que uma configuração personalizada poe ser facilmente construída. [18], [19] 18

37 Capítulo 4 4 Aplicação vmola Neste capítulo é apresentada a base de dados que suporta a aplicação VMola, e os componentes que constituem a sua interface gráfica. A apresentação da interface é acompanhada da descrição das diferentes etapas que o utilizador deverá seguir para tirar partido da aplicação VMola. 4.1 Base de Dados A base de dados do VMola armazena i) dados e informações gerados nos processos de preparação dos ligandos, ii) proteínas e iii) os resultados resultantes do docking entre eles. Através da utilização de uma base de dados pretende-se centralizar um conjunto de dados e informações, devidamente organizados e sem duplicação, de modo a poderem ser consultados, reutilizados e partilhados por um amplo conjunto de utilizadores. Na primeira coluna da tabela 1 podem ser consultados todos os campos considerados pertinentes das diferentes entidades que fazem parte da base de dados Normalização A normalização dos dados é uma técnica que permite a obtenção do modelo lógico dos dados mais adequado ao ambiente que se pretende materializar numa base de dados. Esta 19

38 técnica permite submeter os dados a uma série de testes a fim de validar o seu nível de concretização, resultando o modelo Entidade/Relação. O processo de normalização tem como principal vantagem o facto de permitir eliminar o risco de duplicação de dados, inconsistência de informação, chaves mal atribuídas e relacionamentos incorrectos ou desnecessários. O processo de normalização vai permitir responder algumas perguntas, tais como: Quais as entidades a serem representadas? Quais os atributos que fazem parte de uma entidade? Que tipo de relação existe entre as entidades? Qual a cardinalidade existente entre as relações? Quais são os atributos chaves? O requisito mínimo para os dados estarem normalizados é o de respeitarem a 3ª forma normal (TNF), para o que terão também de respeitar a 1ª e a 2ª formas normais (1FN e 2FN). Estas formas são descritas a seguir: 1TNF Remoção dos grupos repetitivos: uma relação está na 1FN se todos os atributos não-chave estiverem na dependência funcional dos atributos chave; 2TNF Remover dependências de chave parcial: uma relação está na 2NF se está na 1NF e os atributos que não fazem parte da chave da relação estão na dependência elementar da mesma, ou seja, todos os atributos não-chave da relação são funcionalmente dependentes da totalidade da chave; 3TNF Remover dependências de dados não-chave: uma relação está na 3NF se os atributos que não fazem parte da chave da relação estão na dependência elementar e directa da mesma, ou seja, não existem dependências funcionais entre atributos não- chave. 20

39 NN 1NF 2NF 3NF ResultesID ResultesID ResultesID ResultesID VinaSD VinaSD LigandID LigandID VinaRestsPath VinaRestsPath ProteinID ProteinID AD4DeltaG AD4DeltaG VinaSD VinaSD AD4DeltaGCluster AD4DeltaGCluster VinaRestsPath VinaRestsPath Cluster Cluster AD4DeltaG AD4DeltaG AD4AVG AD4AVG AD4DeltaGCluster AD4DeltaGCluster AD4SD AD4SD Cluster Cluster Run Run AD4AVG AD4AVG Evaluation Evaluation AD4SD AD4SD Population Population Run Run AD4ResultPath AD4ResultPath Evaluation Evaluation CenterX CenterX Population Population CenterY CenterY AD4ResultPath AD4ResultPath CenterZ CenterZ CenterX CenterX SizerX SizerX CenterY CenterY SizerY SizerY CenterZ CenterZ SizerZ SizerZ SizerX SizerX LigandID SizerY SizerY Ligand Name SizerZ SizerZ Group LigandID Scafold Ligand Name LigandPath Group MW Scafold LigandID LigandID LogP LigandPath Ligand Name Ligand Name PSA MW Group Group HBA LogP Scafold Scafold HBD PSA LigandPath LigandPath LR5 HBA MW MW SMIg HBD LogP LogP TPSAg LR5 PSA PSA ProteinID SMIg HBA HBA Protein Name TPSAg HBD HBD Protein PDBID ProteinID LR5 LR5 Protein Version Protein Name SMIg SMIg ProteinPath Protein PDBID TPSAg TPSAg MapsPATH Protein Version ConfPATH ProteinPath ProteinID ProteinID Proteinnotes MapsPATH Protein Name Protein Name ConfPATH Protein PDBID Protein PDBID Proteinnotes Protein Version Protein Version ProteinPath ProteinPath MapsPATH MapsPATH ConfPATH ConfPATH Proteinnotes Proteinnotes Tabela 1 - Normalização dos Dados. 21

40 4.1.2 Modelo Entidade-Relação (E-R) A partir da análise dos dados já normalizados obtém-se o modelo E-R apresentado na fig. 1, no qual se pode constatar que a base de dados será formada por três entidades: Entidade Protein: armazena todas as informações relativas às proteínas; possui o atributo ID como campo chave primária auto incrementado, para evitar a duplicação de dados; qualquer inserção na tabela proteína terá o cuidado de tornar a proteína única através campos Name, PDB e Version. Entidade Ligand: guardará informações dos ligandos, sendo esta também constituída por uma chave primária auto incrementada (ID) e o campo que vai distinguir e tornar o ligando único é o seu SMI. Entidade Resultes: armazenará informações dos resultados obtidos do docking, terá como campo chave primaria o identificador auto incrementado (ID) e terá ainda dois atributos considerados chaves estrangeiras protein e ligand, que estabelecerão a relação entre um resultado e uma proteína e ligando específico. Fig. 1 - Modelo E-R da Base de Dados. Os dicionários de dados destas entidades podem ser consultados no Anexo C. 22

41 4.2 Interface Gráfica De modo a tornar mais fácil e intuitiva a utilização das ferramentas para preparar e realizar docking proteínas-ligandos, foi criada uma interface gráfica. Esta compreende vários componentes, organizados por funções, que serão apresentados a seguir. O primeiro componente é a janela de apresentação Fig. 2, onde é estabelecida a ligação da aplicação VMola à sua base de dados. Sem a validação desta ligação não é possível prosseguir para outras funcionalidades da aplicação, uma vez que esta está fortemente dependente da base de dados. Fig. 2 - Menu inicial. Se a ligação à BD não for bem-sucedida, será lançada uma MessageDialog, como é ilustrado na Fig. 3. Para prosseguir, o utilizador deve introduzir os dados correctos. 23

42 Fig. 3 - Erro de Ligação. Após a ligação bem-sucedida é mostrado uma nova janela (Fig. 4). Na sua parte superior estão presentes quatro navegadores para transitar entre diferentes funcionalidades. Cada um dos navegadores diz respeito a um menu que agrupa um conjunto de funcionalidades relacionadas com um determinado processo, sendo que os processos são: submissão de tarefas (Job Submition), apresentação dos resultados (Results), preparação da proteína (Add Protein) e por ultimo a preparação dos ligandos (Add Ligand). Cada um dos processos e respectivos menus serão explorados posteriormente. Fig. 4 - Navegadores. 24

43 4.2.1 Submissão de Tarefas O primeiro navegador permite aceder à janela da submissão de tarefas (Fig. 5). A disposição dos vários componentes da janela está feita de forma a tornar a submissão de tarefas o mais simples e flexível possível. A seguir a escolha do receptor é necessário fornecer parâmetros de configuração adicionais quando o programa escolhido for o AudoDock4, parâmetros estes que são: a Avaliação, População e número de Runs. Os parâmetros podem ser introduzidos manualmente na caixa de texto que a cada um diz respeito ou podem ser escolhidos valores predefinidos. Fig. 5 - Navegador Job Submition. O primeiro grupo de componentes refere-se a escolha do(s) programa(s) com os quais o utilizador pretende obter os resultados, sendo as possibilidades: AutoDock4, Vina ou ambos os programas. O grupo seguinte diz respeito à escolha do receptor (proteína) a ser utilizada, 25

44 sendo que esta é seleccionada utilizando sucessivos filtros até ser obtido apenas um único receptor, A filtragem começa com a escolha do nome da proteína, seguidamente com um PDB específico e termina com a escolha da versão, tornando deste modo a escolha única. A seguir à escolha do receptor é necessário fornecer parâmetros de configuração adicionais quando o programa escolhido for o AudoDock4: número de avaliações (Evaluations), valor da População (Population) e número de execuções (Runs). Os parâmetros podem ser introduzidos manualmente na caixa de texto que a cada um diz respeito ou podem ser escolhidos valores predefinidos. Para completar a escolha dos elementos essenciais à submissão da tarefa é necessária a selecção dos ligandos a serem utilizados (Ligand Selection), por uma das seguintes formas: Mostrar todos os ligandos existentes na base de dados clicando no botão Show All Ligand; Mostrar os ligandos através de uma procura básica, marcando caixa de selecção e escolhendo valores referentes a Show by SetLigand ou Show by SubSetLigand e clicando no botão Show ligand Set Selection; Mostrar através da pesquisa avançada, esta opção permite utilizar a procura básica acrescentando opções mais detalhadas de alguns valores específicos para o MW, LogP, PSA, HBA, HBD e um determinado valor para o LR5, e clicando no botão Show ligand Set Selection. Após a escolha dos ligandos através de um dos três métodos possíveis para a procura é exibido uma janela com os resultados obtidos, como pode ser visualizado no exemplo da Fig.6. O menu apresentado na fig. 6, alem de exibir os ligandos filtrados, também traz um conjunto de funcionalidades que permite ao utilizador escolher de entre os vários ligandos existentes quais os que serão lançados para o docking. O menu permite ajustar o tamanho das linhas e colunas, ordenar por ordem alfabética cada uma das colunas, seleccionar ou desseleccionar todos os ligandos ou individualmente. Após a escolha dos ligandos pretendidos, o utilizador pode cancelar ou validar os ligandos para docking clicando no botão Cancel ou OK respectivamente. 26

45 Após estas escolhas poderá então ser feita a submissão da tarefa através do botão Run. Acontece então a paralelização do sistema. Inicialmente é criado um script (em sh), onde é colocada a invocação do programa que o utilizador pretende para obter os seus resultados, e é também acrescentada a invocação de um ficheiro de análise de resultados, que posteriormente realiza o envio desta análise para a base de dados. Este script após ser criado é então submetido através do comando qsub r y <nome do script>.sh, este comando efectua então a paralelização do sistema de modo a tornar mais rápida a obtenção de resultados. Fig. 6 - Visualização dos Ligandos. 27

46 4.2.2 Apresentação dos Resultados A janela para a apresentação dos resultados é ilustrada na fig. 7. Esta janela foi desenvolvida para ser o mais simples possível, apresentando um conjunto de itens que possibilitam a pesquisa dos resultados que constam na base de dados. Fig. 7 - Menu de Apresentação dos Resultados. A aplicação permite a apresentação de todos os resultados, deixando em branco os campos, ou apenas os resultados filtrados a partir da escolha de determinados grupos, preenchendo os diferentes campos e clicando no botão Show. Este botão abre uma nova janela (Fig 8) com os resultados obtidos apresentados em forma tabular. Esta janela, à semelhança da que mostra os ligandos no navegador Job Submition, traz funcionalidades semelhantes, com a diferença que permite exportar os resultados para um ficheiro texto ou CSV. 28

47 Fig. 8 - Apresentação dos Resultados Adição de Proteínas O terceiro navegador dá acesso à janela de preparação das proteínas, exibida na Fig xx. O processo começa com a escolha da proteína a partir do explorador de ficheiros que se abre pelo botão Open; este explorador só permite abrir ficheiros do tipo PDBQT (Fig 9). Após a escolha da proteína o processo prossegue com preenchimento dos campos obrigatórios Nome, PDB ID, Versão, valores do Grid Center e Grid Sizer, e ainda os campos opcionais Disease e Notes. Os valores do Grid Center e Grid Size podem ser obtidos recorrendo ao AutoDocktools que é executado clicando no botão ADT, como pode ser visualizado na fig xx, sendo que os valores para o Grid Center são inteiros e para o Grid Size são reais. O processo de adição da proteína é concluído clicando no botão Add to DataBase que despoleta um conjunto de mecanismos necessários para o cálculo dos diversos parâmetro de cada proteína, e a inserção dos mesmos na base de dados. 29

48 Fig. 9 - Menu ADD Protein. Fig Selecção da proteína. 30

49 Os valores do Grid Center e Grid Sizer podem ser obtidos recorrendo ao AutoDocktools que é executado clicando no botão ADT, como pode ser visualizado na fig. 11, sendo que os valores para o Grid Center são inteiros e para o Grid Sizer são reais. Fig Execução do AutoDockTools. O processo de adição da proteína é concluído clicando no botão ADD to DataBase que despoleta um conjunto de mecanismos necessários para o cálculo dos diversos parâmetros de cada proteína, e a inserção dos mesmos na base de dados Adição de Ligandos O quarto navegador dá acesso a uma janela de adição dos ligandos (Fig 12). A janela está dividida em duas partes: a primeira parte diz respeito à conversão de SMI para MOL2; na segunda parte é feita a preparação e inserção na Base de Dados dos ligandos a partir de ficheiros mol2 e PDBQT. 31

50 Fig Menu ADD Ligand Conversão SMI para MOL2 O processo de conversão do SMI em MOL2 consiste em criar um SMI que é inserido na caixa de texto smi. A inserção pode ser realizada manualmente ou a partir de um ficheiro SMI. Para a inserção manual basta inserir o código SMI seguido pelo título separado por espaço ou tabulação, importante salientar que cada linha da caixa de texto vai corresponder a um código SMI. A inserção a partir de um ficheiro requer a existência de um ficheiro do tipo SMI que pode ser aberto clicando no botão OPEN e seleccionado o ficheiro pretendido, como pode ser visualizado na fig

51 Fig. 13 Abertura de ficheiros SMI. Após a inserção dos códigos SMI o utilizador pode guarda-los clicando em Save e escolhendo o nome e o destino do ficheiro, como é exibido na fig.14. Fig Gravar ficheiros SMI. 33

52 O processo de conversão conclui-se clicando em Run. Em caso de erro as linhas nas quais estes acontecem serão indicadas na listbox Status Preparação dos Ligandos O procedimento para a preparação da proteína começa com a escolha da directoria onde se encontram os ligandos a serem processados. Estes ligandos devem ser do tipo MOL2, PDBQT e PDB, clicando em OpenDir, como pode ser visualizado na fig. 15. A seguir à selecção da directoria o utilizador deve preencher os campos obrigatórios, Ligand Set e Ligand SubSet, sendo o campo Notes opcional. O processo termina quando o utilizador clicar em Add to DataBase, que vai despoletar os diferentes passos para a preparação dos ligandos e a inserção na base de dados. Fig Selecção da directoria dos Ligandos. 34

53 Capítulo 5 5 Cluster vmola 5.1 Cluster Devido aos elevados custos com as experiencias por parte de grandes empresas e instituições, nas diversas áreas, tais como física, química, bioinformática, entre outros, a procura por softwares de simulação e computadores com elevado poder de processamento vem aumentando cada vez mais, só que estes supercomputadores só estão ao alcance de muito poucos. Com vista a disponibilização de poder de processamento a um custo muito menor é que começaram a interligar vários equipamentos independentes que funcionam em conjunto para a realização da mesma tarefa, denominados por cluster O que é um Cluster? Um cluster é um grupo de equipamentos independentes que executam um conjunto de aplicações e serviços em conjunto, e aparecem perante um cliente ou aplicação como sendo um sistema único. Os clusters permitem aumentar a escalabilidade, disponibilidade, fiabilidade e o poder computacional do sistema. O cluster dimensionado é composto por uma VM principal, que desempenhará a função de gestora de todos os processos, denominada de FrontEnd e varias outras maquinas 35

54 que desempenharam o papel de nós, tendo esta apenas a função de executar as tarefas a serem submetidas pelo FrontEnd, na fig. 16 é apresentado um esboço da configuração do cluster implementado. Fig. 16 Cluster. 5.2 FrontEnd O FrontEnd é a máquina principal do cluster, é nela que será feita toda a gestão do cluster incluindo a adição e remoção de novos nós, e também será nesta máquina que será executada a aplicação desenvolvida. O FrontEnd executara o SO Linux CentOS 6 que executará todos os serviços necessários para montar e manter um cluster. A principal característica a nível de hardware é a existência de duas placas de redes. Uma destas placas estará ligada a uma rede pública que 36

55 servirá de Gateway para o exterior e fornecerá internet para os nós. A segunda placa servirá para criar a rede privada do cluster, onde estarão ligados os nós, como é ilustrado a fig. 17. Rede Publica: / eth1 eth0 Rede Privada: / Fig Vista Virtual do FrontEnd. O ficheiro com a VM do FrontEnd já instalado configurada será disponibilizada, mas para utilizadores que queiram criar uma máquina de raiz podem consultar os passos necessários no Anexo B. 5.3 Nós Um Nó é a máquina que tem como função a execução das tarefas solicitadas pelo FrontEnd, o nó é o equipamento que vai dar poder de processamento ao cluster. Em termos de características de hardware um nó é uma máquina simples, sem qualquer requisito especial, apenas com uma placa de rede que o vai permitir ligar-se a rede privada do cluster, como é ilustrado na fig

56 Rede Privada: / Fig Vista Virtual do Nó. Os Nós podem ser adicionados ou removidos ao cluster a medida que o utilizador for precisando de mais poder de processamento. Os Nós tem por base o mesmo SO que o FrontEnd (CentOS 6), que é instalado automaticamente ao ser adicionado ao cluster. O processo de adição de um novo Nó pode ser consultado no Anexo A. 5.4 Distribuição Esta prevista a previsto a disponibilização de uma máquina FrontEnd completa, configurada com todos os serviços e aplicações e com alguns Nós já instalados, e também serão disponibilizados Nós pré-instalados. Para os utilizadores que irão de mais Nós do que aqueles quer serão disponibilizados será disponibilizado um guião de como criar, configurar e adicionar uma nova VM que funcionará como um Nó. Para utilizadores mais avançados e que queiram fazer a instalação passo-a-passo serão disponibilizados HOW-TO com todos os passos para a configuração do FrontEnd e a instalação de Nós. 38

57 Capítulo 6 6 Conclusões e Trabalho Futuro A bioinformática é uma área multidisciplinar que está em constante evolução, em busca de novos produtos e soluções que visam melhorar as nossas vidas. Esta constante evolução tem sido suportada em grande parte com a evolução da biologia e também da informática, que vem desenvolvendo um papel cada vez mais importante na área da bioinformática. O contributo da informática vem permitindo cada vez mais a massificação das técnicas de simulação computacional devido a constante melhoria dos equipamentos e softwares de simulação. Hoje em dia já não é obrigatório ter um supercomputador para a realização de algumas simulações mais exigentes a nível de poder computacional, basta conseguir juntar um conjunto de equipamentos independentes para formar um cluster, que disponibilizara poder de processamento num determinado período de tempo e depois poderão ser utilizados normalmente para o desempenho de funções consideradas normais. O projecto teve como principal objectivo a implementação de uma aplicação que permitisse juntar em uma só, os vários módulos necessários para a realização de Virtual Screening, e a criação de um cluster virtual que fosse suportado por múltiplas plataformas para realizar a análise e daí retirar resultados que seriam guardados numa base de dados para uma posterior análise e partilha dentro de uma determinada comunidade. A principal dificuldade encontrada no decorrer da realização do projecto foi uma já esperada, e que acaba por acontecer sempre que se trabalha numa área multidisciplinar que 39

58 requer a troca de informação entre áreas tão distintas como a informática e biologia. Esta dificuldade tornou-se uma mais-valia no decorrer do projecto pois permitiu-nos ganhar experiência a nível do que é trabalhar num projecto que requer a partilha de conhecimento, permitindo-nos abordar o mercado de trabalho com um pouco mais de experiência e confiança. Como um dos objectivos deste trabalho foi o de desenvolver um protótipo que num futuro próximo passa-se para a versão final, são deixadas aqui algumas sugestões para melhoria do sistema, a ser realizado em trabalhos futuros: Submeter a aplicação a uma face de testes intensivos a fim de descobrir erros e vulnerabilidades; Disponibilizar uma versão beta da aplicação para que seja possível obter-se feedback dos utilizadores; Paralelizar os processos de preparação dos Ligandos e das Proteínas. 40

59 Referências Bibliográficas [1] Abreu, RM, Froufe, HJ, Queiroz, MJR, Ferreira, IC. MOLA: a bootable, selfconfiguring system for virtual screening using AutoDock4/Vina on computer clusters. Journal of cheminformatics Janeiro de [2] Sousa, SF, Fernandes, PA, Ramos, MJ. Protein-ligand docking: current status and future challenges. Proteins [3] Baxter, CA, Murray, CW, Waszkowycz, B, Li, J, Sykes, RA, Bone, RG, Perkins, TD, Wylie, W. New approach to molecular docking and its application to virtual screening of chemical databases. Journal of Chemical Information and Computer Sciences 2000a. [4] Charifson, PS, Corkery, JJ, Murcko, MA, Walters, WP. Consensus scoring: A method for obtaining improved hit rates from docking databases of three-dimensional structures into proteins. Journal of Medicinal Chemistry [5] Baxter, CA, Murray, CW, Waszkowycz, B, Li, J, Sykes, RA, Bone, RG, Perkins, TD, Wylie, W. New approach to molecular docking and its application to virtual screening of chemical databases. Journal of Chemical Information and Computer Sciences 2000b. [6] Damas L, SQL Structured Query Language, FCA Editora Informática, 6º edição [7] Du, P, Weber, R, Luszczek, P, Tomov, S, Peterson, G, Dongarra, J. From CUDA to OpenCL: Towards a Performance-portable Solution for Multi-platform GPU Programming. Parallel Computing Agosto de [8] consultado em 03/09/

60 [9] consultado em 03/09/2012. [10] consultado em 03/09/2012. [11] consultado em 04/09/2012. [12] consultado em 04/09/2012. [13] consultado em 20/12//2011. [14] consultado em 15/01/2012. [15] consultado em 15/01/2012. [16] consultado em 26/02/2012. [17] consultado em 20/12/2012. [18] consultado em 18/06/2012. [19] consultado em 18/06/

61 Anexo A A. Processo de Inserção de um Novo Nó No capítulo seguinte serão descritos todos os passos necessários para a inserção e configuração de um novo nó no cluster. O processo dividisse em duas partes. Na primeira parte pretende-se elucidar os passos essenciais para a criação uma máquina virtual com as características necessárias para operar dentro do cluster. Na segunda parte será feita a inserção propriamente dita da máquina criada no cluster. A.1 Criação da Máquina Virtual 1

62 1º Passo: Iniciar o VMware Player e escolher a opção create a new VirtualMachine 2º Modo de instalação do SO Fig Menu criação de uma VM VMware Player. Fig Modo de instalação do SO. 2

63 3º Escolha do tipo de SO: O tipo do SO deve ser Linux e a versão CentOS 64-bits Fig Tipo do SO. 4º Escolher do nome e a localização a VM Fig Nome e localização da VM. 3

64 5º Tamanho e modo de criação do disco Fig Tamanho e modo de criação do disco. no nó. 6º Placa de rede para Bridged: escolher a opção de bridged para o adaptador de rede Fig Placa de rede. 4

65 7º Confirmação das características do hardware Fig Resumo das características da VM. Chegando a este ponto e tudo estiver de acordo com as características exigidas proceder com a conclusão da criação da VM, caso contrário pode alterar a partir da opção Customize Hardware, ou retroceder ate ao ponto pretendido, alterar o erro e proceder com o processo de criação. A.2 Criação da Máquina Virtual A inserção do novo nó é composto por uma serie de passos que devem ser seguidos de forma sequencial, para evitar que o servidor adicione equipamentos que na realidade nunca vão fazer parte da rede do cluster. De seguida serão apresentados os passos a serem seguidos. Antes destes passos propõem-se que já existe uma VM criada. 5

66 1º Isolar a rede do cluster, de modo a não ter nenhum servidor DHCP. 2º Desabilitar o cliente DHCP das máquinas hospedeiras do frontend e do novo nó. 3º Desligar o cabo de rede de todas as máquinas, excepto as duas acima referidas. 4º Entrar como root no frontend 5º Activar o servidor dhcpd do frontend /etc/init.d/dhcpd start 6º Despoletar o processo de inserção do novo nó no frontend como root e de seguida ligar a VM do novo nó #insert-ethers Seleccionar a opção PC 7º Desactivar o servidor DHCP do FrontEnd /etc/init.d/dhcpd start 8º Desactivar a reinstalação automática em caso de hard-reboot e alterar as definições do teclado para português. 6

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO

A VISTA BACKSTAGE PRINCIPAIS OPÇÕES NO ECRÃ DE ACESSO DOMINE A 110% ACCESS 2010 A VISTA BACKSTAGE Assim que é activado o Access, é visualizado o ecrã principal de acesso na nova vista Backstage. Após aceder ao Access 2010, no canto superior esquerdo do Friso,

Leia mais

Desenvolvimento de uma Aplicação WEB para monitorização de BD Oracle

Desenvolvimento de uma Aplicação WEB para monitorização de BD Oracle Desenvolvimento de uma Aplicação WEB para monitorização de BD Oracle Luís Filipe Borges Pinto Resumo: Este projecto consiste na implementação de uma aplicação WEB para monitorização

Leia mais

Pesquisa e organização de informação

Pesquisa e organização de informação Pesquisa e organização de informação Capítulo 3 A capacidade e a variedade de dispositivos de armazenamento que qualquer computador atual possui, tornam a pesquisa de informação um desafio cada vez maior

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO. SISTEMAS DE GESTÃO DE BASE DE DADOS Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO Microsoft Access TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO CONCEITOS BÁSICOS 1 Necessidade das base de dados Permite guardar dados dos mais variados tipos; Permite

Leia mais

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS Planificação Anual da Disciplina de TIC Módulos 1,2,3-10.ºD CURSO PROFISSIONAL DE TÉCNICO DE APOIO À GESTÃO DESPORTIVA Ano Letivo 2015-2016 Manual adotado:

Leia mais

Introdução a Informática - 1º semestre AULA 02 Prof. André Moraes

Introdução a Informática - 1º semestre AULA 02 Prof. André Moraes Introdução a Informática - 1º semestre AULA 02 Prof. André Moraes 3 MÁQUINAS VIRTUAIS Em nossa aula anterior, fizemos uma breve introdução com uso de máquinas virtuais para emularmos um computador novo

Leia mais

PLANIFICAÇÃO MODULAR ANO LECTIVO 2015 / 2016

PLANIFICAÇÃO MODULAR ANO LECTIVO 2015 / 2016 PLANIFICAÇÃO MODULAR ANO LECTIVO 2015 / 2016 CURSO/CICLO DE FORMAÇÃO Técnico de Eletrotecnia e Técnico de Gestão de Equipamentos Informáticos / 2015/2018 DISCIPLINA: Tecnologias da Informação e Comunicação

Leia mais

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco

Manual de Utilizador. Disciplina de Projecto de Sistemas Industriais. Escola Superior de Tecnologia. Instituto Politécnico de Castelo Branco Escola Superior de Tecnologia Instituto Politécnico de Castelo Branco Departamento de Informática Curso de Engenharia Informática Disciplina de Projecto de Sistemas Industriais Ano Lectivo de 2005/2006

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC 10º C. Planificação de. Curso Profissional de Técnico de Secretariado

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC 10º C. Planificação de. Curso Profissional de Técnico de Secretariado Escola Básica e Secundária de Velas Planificação de TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO - TIC Curso Profissional de Técnico de Secretariado 10º C MÓDULO 1 FOLHA DE CÁLCULO Microsoft Excel Conteúdos

Leia mais

Acronis Servidor de Licença. Manual do Utilizador

Acronis Servidor de Licença. Manual do Utilizador Acronis Servidor de Licença Manual do Utilizador ÍNDICE 1. INTRODUÇÃO... 3 1.1 Descrição geral... 3 1.2 Política de licenças... 3 2. SISTEMAS OPERATIVOS SUPORTADOS... 4 3. INSTALAR O SERVIDOR DE LICENÇA

Leia mais

MICROSOFT ACCESS MICROSOFT ACCESS. Professor Rafael Vieira Professor Rafael Vieira

MICROSOFT ACCESS MICROSOFT ACCESS. Professor Rafael Vieira Professor Rafael Vieira MICROSOFT ACCESS MICROSOFT ACCESS Professor Rafael Vieira Professor Rafael Vieira - Access - Programa de base de dados relacional funciona em Windows Elementos de uma Base de Dados: Tabelas Consultas Formulários

Leia mais

Servidores Virtuais. Um servidor à medida da sua empresa, sem investimento nem custos de manutenção.

Servidores Virtuais. Um servidor à medida da sua empresa, sem investimento nem custos de manutenção. es Virtuais Um servidor à medida da sua empresa, sem investimento nem custos de manutenção. O que são os es Virtuais? Virtual é um produto destinado a empresas que necessitam de um servidor dedicado ligado

Leia mais

O AMBIENTE DE TRABALHO DO WINDOWS

O AMBIENTE DE TRABALHO DO WINDOWS O AMBIENTE DE TRABALHO DO WINDOWS O Windows funciona como um Sistema Operativo, responsável pelo arranque do computador. Um computador que tenha o Windows instalado, quando arranca, entra directamente

Leia mais

Seu manual do usuário EPSON LQ-630 http://pt.yourpdfguides.com/dref/1120693

Seu manual do usuário EPSON LQ-630 http://pt.yourpdfguides.com/dref/1120693 Você pode ler as recomendações contidas no guia do usuário, no guia de técnico ou no guia de instalação para. Você vai encontrar as respostas a todas suas perguntas sobre a no manual do usuário (informação,

Leia mais

Manual de utilização do Moodle

Manual de utilização do Moodle Manual de utilização do Moodle Iniciação para docentes Universidade Atlântica Versão: 1 Data: Fevereiro 2010 Última revisão: Fevereiro 2010 Autor: Ricardo Gusmão Índice Introdução... 1 Registo no Moodle...

Leia mais

Ambiente de trabalho. Configurações. Acessórios

Ambiente de trabalho. Configurações. Acessórios Ambiente de trabalho Configurações Acessórios O Sistema Operativo (SO) é o conjunto de programas fundamentais que permitem que o computador funcione e comunique com o exterior. Actualmente, o Windows é

Leia mais

Base de Dados para Administrações de Condomínios

Base de Dados para Administrações de Condomínios Base de Dados para Administrações de Condomínios José Pedro Gaiolas de Sousa Pinto: ei03069@fe.up.pt Marco António Sousa Nunes Fernandes Silva: ei03121@fe.up.pt Pedro Miguel Rosário Alves: alves.pedro@fe.up.pt

Leia mais

Guia Rápido de Vodafone Conferencing

Guia Rápido de Vodafone Conferencing Guia de Utilizador Vodafone Guia Rápido de Vodafone Conferencing O seu pequeno manual para criar, participar e realizar reuniões de Vodafone Conferencing. Vodafone Conferencing Visão geral O que é uma

Leia mais

No VirtualBox, carregar no Botão Novo (New), que irá abrir o Assistente de Criação de Máquina Virtual para criar uma nova VM.

No VirtualBox, carregar no Botão Novo (New), que irá abrir o Assistente de Criação de Máquina Virtual para criar uma nova VM. INSTALAÇÃO E GESTÃO DE REDES INFORMÁTICAS EFA NS/NÍVEL III UFCD 5 FORMADOR: PAULO RELVAS Fontes: http://www.formatds.org/instalar-ubuntu-no-virtualbox/ MANUAL DE INSTALAÇÃO UBUNTU 8.10 SOBRE VBOX DA SUN

Leia mais

ISEP. Instituto Superior de Engenharia do Porto. Análise de Sistemas Informáticos

ISEP. Instituto Superior de Engenharia do Porto. Análise de Sistemas Informáticos ISEP Instituto Superior de Engenharia do Porto Análise de Sistemas Informáticos Armazenamento de Dados em Rede A Revolução do Armazenamento Partilhado A crise económica e a crescente necessidade de armazenamento

Leia mais

Manual do GesFiliais

Manual do GesFiliais Manual do GesFiliais Introdução... 3 Arquitectura e Interligação dos elementos do sistema... 4 Configuração do GesPOS Back-Office... 7 Utilização do GesFiliais... 12 Outros modos de utilização do GesFiliais...

Leia mais

Aprend.e Sistema integrado de formação e aprendizagem

Aprend.e Sistema integrado de formação e aprendizagem Aprend.e Sistema integrado de formação e aprendizagem Pedro Beça 1, Miguel Oliveira 1 e A. Manuel de Oliveira Duarte 2 1 Escola Aveiro Norte, Universidade de Aveiro 2 Escola Aveiro Norte, Departamento

Leia mais

Virtualização e Consolidação de Centro de Dados O Caso da UTAD António Costa - acosta@utad.pt

Virtualização e Consolidação de Centro de Dados O Caso da UTAD António Costa - acosta@utad.pt Universidade de Trás-os-Montes e Alto Douro Virtualização e Consolidação de Centro de Dados O Caso da UTAD António Costa - acosta@utad.pt Agenda A UTAD Virtualização Uma definição Introdução e abrangência

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

Programação 2008/2009 MEEC Guia de instalação do PC de programação

Programação 2008/2009 MEEC Guia de instalação do PC de programação Programação 2008/2009 MEEC Guia de instalação do PC de programação Requisitos: PC 1Gbyte de memória Windows, Linux ou Mac OS X. Aplicação Virtualbox. (www.virtualbox.org) O uso de máquinas virtuais permite

Leia mais

UNIDADE 2: Sistema Operativo em Ambiente Gráfico

UNIDADE 2: Sistema Operativo em Ambiente Gráfico UNIDADE 2: Sistema Operativo em Ambiente Gráfico Ambiente de trabalho Configurações Acessórios O Sistema Operativo (SO) é o conjunto de programas fundamentais que permitem que o computador funcione e comunique

Leia mais

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO

CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO 4 CONCEITOS BÁSICOS DE UM SISTEMA OPERATIVO CONCEITOS BÁSICOS MS-DOS MICROSOFT DISK OPERATION SYSTEM INSTALAÇÃO E CONFIGURAÇÃO DE UM SISTEMA OPERATIVO LIGAÇÕES À INTERNET O que é um sistema operativo?

Leia mais

Portal AEPQ Manual do utilizador

Portal AEPQ Manual do utilizador Pedro Gonçalves Luís Vieira Portal AEPQ Manual do utilizador Setembro 2008 Engenharia Informática - Portal AEPQ Manual do utilizador - ii - Conteúdo 1 Introdução... 1 1.1 Estrutura do manual... 3 1.2 Requisitos...

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

Direcção Regional de Educação do Algarve

Direcção Regional de Educação do Algarve MÓDULO 1 Folha de Cálculo 1. Introdução à folha de cálculo 1.1. Personalização da folha de cálculo 1.2. Estrutura geral de uma folha de cálculo 1.3. O ambiente de da folha de cálculo 2. Criação de uma

Leia mais

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,

Leia mais

Manual Brother Image Viewer para Android

Manual Brother Image Viewer para Android Manual Brother Image Viewer para Android Versão 0 POR Definições de notas Ao longo deste Manual do Utilizador, é utilizado o seguinte ícone: NOTA As Notas indicam o que fazer perante uma determinada situação

Leia mais

7.3. WINDOWS MEDIA PLAYER 12

7.3. WINDOWS MEDIA PLAYER 12 7.3. WINDOWS MEDIA PLAYER 12 Este programa permite gerir toda a sua colecção de músicas, vídeos e até mesmo imagens, estando disponível para download no site da Microsoft, o que significa que mesmo quem

Leia mais

Bases de Dados 2007/2008. Aula 1. Referências

Bases de Dados 2007/2008. Aula 1. Referências Bases de Dados 2007/2008 Aula 1 Sumário 1. SQL Server 2000: configuração do acesso ao servidor. 1.1. SQL Server Service Manager. 1.2. SQL Server Enterprise Manager. 1.3. SQL Query Analyzer. 2. A base de

Leia mais

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS (GRUPO INFORMÁTICA) Ano Letivo de 2014/2015 MÓDULO 1 FOLHA DE CÁLCULO

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS (GRUPO INFORMÁTICA) Ano Letivo de 2014/2015 MÓDULO 1 FOLHA DE CÁLCULO Ensino Regular Diurno Disciplina: T.I.C. Professores: Margarida Afonso Curso Profissional - Técnico de Auxiliar de Saúde Ano: 10.º Turma(s): TAS MÓDULO 1 FOLHA DE CÁLCULO OBJECTIVOS Indicar as principais

Leia mais

Principais Comandos SQL Usados no MySql

Principais Comandos SQL Usados no MySql Principais Comandos SQL Usados no MySql O que é um SGBD? Um Sistema Gerenciador de Banco de Dados (como no Brasil) ou Sistema Gestor de Base de Dados (SGBD) é o conjunto de programas de computador (softwares)

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

Akropole Catequista. Todos os Ficheiros no Akropole Catequista trabalham com uma simples barra de edição, com 4 botões:

Akropole Catequista. Todos os Ficheiros no Akropole Catequista trabalham com uma simples barra de edição, com 4 botões: Akropole Catequista O Akropole Catequista em três tempos... Este texto é um pequeno manual de introdução ao Akropole Catequista. Umas das características deste programa é o facto deste não necessitar de

Leia mais

Transição de POC para SNC

Transição de POC para SNC Transição de POC para SNC A Grelha de Transição surge no âmbito da entrada em vigor, no ano de 2010, do Sistema de Normalização Contabilística (SNC). O SNC vem promover a melhoria na contabilidade nacional,

Leia mais

MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS.

MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS. PROGRAMA EMBRAPA DE MELHORAMENTO DE GADO DE CORTE MANUAL DE INSTALAÇÃO 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS ; 3) SUMÁRIOS GENEPLUS. MANUAL DE INSTALAÇÃO: 1) ORACLE VIRTUALBOX ; 2) MICROSOFT WINDOWS

Leia mais

Folha de Cálculo (Excel)

Folha de Cálculo (Excel) Tecnologias de Informação e Comunicação Folha de Cálculo (Excel) Professor: Rafael Vieira. 1. Introdução à folha de cálculo o nome folha de cálculo atribuído a este tipo de programas, deve-se, principalmente,

Leia mais

02 - Usando o SiteMaster - Informações importantes

02 - Usando o SiteMaster - Informações importantes 01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,

Leia mais

TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO

TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO TECNOLOGIAS DE INFORMAÇÃO E COMUNICAÇÃO ACCESS 2010 Conceitos Básicos Ficha Informativa Professor : Vanda Pereira módulo didáctico Conceitos Básicos Necessidade das base de dados Permite guardar dados

Leia mais

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores

Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Arquitecturas de Software Licenciatura em Engenharia Informática e de Computadores Primeiro Teste 21 de Outubro de 2006, 9:00H 10:30H Nome: Número:

Leia mais

Manual do Utilizador

Manual do Utilizador Faculdade de Ciências e Tecnologia da Universidade de Coimbra Departamento de Engenharia Electrotécnica e Computadores Software de Localização GSM para o modem Siemens MC35i Manual do Utilizador Índice

Leia mais

EXCEL TABELAS DINÂMICAS

EXCEL TABELAS DINÂMICAS Informática II Gestão Comercial e da Produção EXCEL TABELAS DINÂMICAS (TÓPICOS ABORDADOS NAS AULAS DE INFORMÁTICA II) Curso de Gestão Comercial e da Produção Ano Lectivo 2002/2003 Por: Cristina Wanzeller

Leia mais

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado.

TIC Unidade 2 Base de Dados. Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. Conceitos relativos à Informação 1. Informação O que á a informação? Informação é todo o conjunto de dados devidamente ordenados e organizados de forma a terem significado. 2. Dados Em informática designa-se

Leia mais

ESTRATÉGIAS /ACTIVIDADES. Fazer uma abordagem teórica e simples

ESTRATÉGIAS /ACTIVIDADES. Fazer uma abordagem teórica e simples Conhecer os conceitos básicos relacionados com as Tecnologias da Informação e Comunicação (TIC). Conhecer a terminologia relacionada com as TIC Caracterizar informação Identificar e caracterizar as áreas

Leia mais

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos Introdução Banco de Dados Por que usar BD? Vitor Valerio de Souza Campos Adaptado de Vania Bogorny 4 Por que estudar BD? Exemplo de um BD Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária

Leia mais

PLANEAMENTO DA INSTALAÇÃO DO WINDOWS SERVER 2003

PLANEAMENTO DA INSTALAÇÃO DO WINDOWS SERVER 2003 PLANEAMENTO DA INSTALAÇÃO DO WINDOWS SERVER 2003 1 PLANEAMENTO DA INSTALAÇÃO Instalar o Windows Server 2003 requer alguma preparação, devido à sua complexidade: Ao correr o programa de setup (configuração)

Leia mais

Escola Secundária de Camarate

Escola Secundária de Camarate Escola Secundária de Camarate Ano Lectivo 2014/2015 Planificação da Disciplina de Tecnologias da Informação e Comunicação Curso Profissional de Técnico Auxiliar de Saúde e Técnico de Restauração e Bar

Leia mais

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 ArpPrintServer Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 1 Sumário INTRODUÇÃO... 3 CARACTERÍSTICAS PRINCIPAIS DO SISTEMA... 3 REQUISITOS DE SISTEMA... 4 INSTALAÇÃO

Leia mais

Gestor de ligações Manual do Utilizador

Gestor de ligações Manual do Utilizador Gestor de ligações Manual do Utilizador 1.0ª Edição PT 2010 Nokia. Todos os direitos reservados. Nokia, Nokia Connecting People e o logótipo Nokia Original Accessories são marcas comerciais ou marcas registadas

Leia mais

Múltiplos Estágios processo com três estágios Inquérito de Satisfação Fase II

Múltiplos Estágios processo com três estágios Inquérito de Satisfação Fase II O seguinte exercício contempla um processo com três estágios. Baseia-se no Inquérito de Satisfação Fase II, sendo, por isso, essencial compreender primeiro o problema antes de começar o tutorial. 1 1.

Leia mais

Engenharia de Software Sistemas Distribuídos

Engenharia de Software Sistemas Distribuídos Engenharia de Software Sistemas Distribuídos 2 o Semestre de 2009/2010 FEARSe Requisitos para a 1 a entrega 18 de Março de 2010 1 Introdução O projecto conjunto das disciplinas de Engenharia de Software

Leia mais

TUTORIAL VMWARE WORKSTATION 8. Aprenda a instalar e configurar corretamente uma máquina virtual utilizando VMware Workstation com este tutorial

TUTORIAL VMWARE WORKSTATION 8. Aprenda a instalar e configurar corretamente uma máquina virtual utilizando VMware Workstation com este tutorial TUTORIAL VMWARE WORKSTATION 8 Aprenda a instalar e configurar corretamente uma máquina virtual utilizando VMware Workstation com este tutorial INTRODUÇÃO O uso de máquinas virtuais pode ser adequado tanto

Leia mais

SAFT para siscom. Manual do Utilizador. Data última versão: 07.11.2008 Versão: 1.01. Data criação: 21.12.2007

SAFT para siscom. Manual do Utilizador. Data última versão: 07.11.2008 Versão: 1.01. Data criação: 21.12.2007 Manual do Utilizador SAFT para siscom Data última versão: 07.11.2008 Versão: 1.01 Data criação: 21.12.2007 Faro R. Dr. José Filipe Alvares, 31 8005-220 FARO Telf. +351 289 899 620 Fax. +351 289 899 629

Leia mais

DOMINE O EXCEL 2007. 16-09-2008 Fascículo 1

DOMINE O EXCEL 2007. 16-09-2008 Fascículo 1 DOMINE O EXCEL 2007 16-09-2008 Introdução ao Microsoft Excel 2007 O ambiente de trabalho O Friso e os Tabuladores do Excel 2007 O Excel possui várias versões sendo que, para a plataforma Windows, a mais

Leia mais

WebSphere_Integration_Developer_D_Jan06 Script

WebSphere_Integration_Developer_D_Jan06 Script WebSphere_Integration_Developer_D_Jan06 Script 1a Nesta demonstração, Will Dunlop, um programador de integração da JK, utiliza o IBM, [ IBM], ou WID para construir um novo serviço orientado para os processos

Leia mais

Índice. Introdução 31. Tutorial 1: O Microsoft Access como Sistema de Gestão de Bases de Dados Relacionais 35

Índice. Introdução 31. Tutorial 1: O Microsoft Access como Sistema de Gestão de Bases de Dados Relacionais 35 Introdução 31 1. Bases de Dados Relacionais 31 2. Modelação de Bases de Dados 31 3. Modelo de Classes UML 32 4. Linguagem SQL 32 5. Sobre o Microsoft" Access" 32 Tutorial 1: O Microsoft Access como Sistema

Leia mais

Aplicações de Escritório Electrónico

Aplicações de Escritório Electrónico Universidade de Aveiro Escola Superior de Tecnologia e Gestão de Águeda Curso de Especialização Tecnológica em Práticas Administrativas e Tradução Aplicações de Escritório Electrónico Microsoft Word Folha

Leia mais

PLANIFICAÇÃO ANUAL DE CONTEÚDOS

PLANIFICAÇÃO ANUAL DE CONTEÚDOS ESCOLA SECUNDÁRIA DE MANUEL DA FONSECA Curso Profissional: Técnico de Gestão e Equipamentos Informáticos PLANIFICAÇÃO ANUAL DE CONTEÚDOS GRUPO 550 CICLO DE FORMAÇÃO 2012/2015 ANO LECTIVO 2012/2013 DISCIPLINA:

Leia mais

Soluções de Gestão de Clientes e Impressão Universal

Soluções de Gestão de Clientes e Impressão Universal Soluções de Gestão de Clientes e Impressão Universal Manual do utilizador Copyright 2007 Hewlett-Packard Development Company, L.P. Windows é uma marca registada da Microsoft Corporation nos E.U.A. As informações

Leia mais

Programa de Parcerias e Submissão de Propostas 2014/15

Programa de Parcerias e Submissão de Propostas 2014/15 DEPARTAMENTO DE INFORMÁTICA Programa de Parcerias e Submissão de Propostas 2014/15 O Departamento de Informática (DI) da Faculdade de Ciências da Universidade de Lisboa (FCUL) procura criar e estreitar

Leia mais

Google Drive. Passos. Configurando o Google Drive

Google Drive. Passos. Configurando o Google Drive Google Drive um sistema de armazenagem de arquivos ligado à sua conta Google e acessível via Internet, desta forma você pode acessar seus arquivos a partir de qualquer dispositivo que tenha acesso à Internet.

Leia mais

Engenharia de Software. Enunciado da Primeira Parte do Projecto

Engenharia de Software. Enunciado da Primeira Parte do Projecto LEIC-A, LEIC-T, LETI, MEIC-T, MEIC-A Engenharia de Software 2 o Semestre 2014/2015 Enunciado da Primeira Parte do Projecto 1. Primeira Parte do Projecto ES Este enunciado descreve o trabalho a realizar

Leia mais

Utilizar o Microsoft Offi ce OneNote 2003: Iniciação rápida

Utilizar o Microsoft Offi ce OneNote 2003: Iniciação rápida Utilizar o Microsoft Offi ce OneNote 2003: Iniciação rápida Utilizar a iniciação ao OneNote 1 O MICROSOFT OFFICE ONENOTE 2003 OPTIMIZA A PRODUTIVIDADE AO PERMITIR QUE OS UTILIZADORES CAPTEM, ORGANIZEM

Leia mais

UNIDADE 2: Sistema Operativo em Ambiente Gráfico

UNIDADE 2: Sistema Operativo em Ambiente Gráfico Ambiente Gráfico Configurações Acessórios O Sistema Operativo (SO) é o conjunto de programas fundamentais que permitem que o computador funcione e que comunique com o exterior. Actualmente o Windows é

Leia mais

Relatório de Instalação do Windows 2003 Server

Relatório de Instalação do Windows 2003 Server Curso Profissional de Gestão e Programação de Sistemas Informáticos Relatório de Instalação do Windows 2003 Server Instalação do Windows 2003 Server quarta-feira, 3 de dezembro de 2013 Índice Introdução...

Leia mais

Software automatizado para controle de consultas da clínica de fisioterapia

Software automatizado para controle de consultas da clínica de fisioterapia Software automatizado para controle de consultas da clínica de fisioterapia Jeverson Siqueira 1, Wallace Caldeira 1, Jorge Aikes Junior 1 1 Ciência da Computacão Faculdades Anglo Americano de Foz do Iguaçu

Leia mais

TECNOLOGIAS DA INFORMAÇÃO E COMUNICAÇÃO INTRODUÇÃO AO MACROMEDIA DREAMWEAVER MX 2004 O Macromedia Dreamweaver MX 2004 é um software que permite a criação de páginas de Internet profissionais, estáticas

Leia mais

Introdução Banco de Dados

Introdução Banco de Dados Introdução Banco de Dados Vitor Valerio de Souza Campos Adaptado de Vania Bogorny Por que estudar BD? Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária reserva de hotel matrícula em

Leia mais

Modelo Cascata ou Clássico

Modelo Cascata ou Clássico Modelo Cascata ou Clássico INTRODUÇÃO O modelo clássico ou cascata, que também é conhecido por abordagem top-down, foi proposto por Royce em 1970. Até meados da década de 1980 foi o único modelo com aceitação

Leia mais

Manual de Utilização. Site Manager. Tecnologia ao serviço do Mundo Rural

Manual de Utilização. Site Manager. Tecnologia ao serviço do Mundo Rural Manual de Utilização Site Manager Tecnologia ao serviço do Mundo Rural Índice 1. Acesso ao Site Manager...3 2. Construção/Alteração do Menu Principal...4 3. Inserção/ Alteração de Conteúdos...7 4. Upload

Leia mais

Manual de Configuração

Manual de Configuração Manual de Configuração Índice Criar conta de Administrador... 3 Criar Negócio... 5 Back office... 7 Criar Locais... 11 Criar Menu... 13 Itens complexos... 18 One Click... 19 Painel de Pedidos... 20 QR

Leia mais

Relatório de Progresso

Relatório de Progresso Luís Filipe Félix Martins Relatório de Progresso Mestrado Integrado em Engenharia Electrotécnica e de Computadores Preparação para a Dissertação Índice Introdução... 2 Motivação... 2 Cloud Computing (Computação

Leia mais

Tarefa Orientada 18 Tabelas dinâmicas

Tarefa Orientada 18 Tabelas dinâmicas Tarefa Orientada 18 Tabelas dinâmicas Análise de dados através de tabelas dinâmicas. Conceitos teóricos As Tabelas Dinâmicas são tabelas interactivas que resumem elevadas quantidades de dados, usando estrutura

Leia mais

Aplicações de Escritório Electrónico

Aplicações de Escritório Electrónico Universidade de Aveiro Escola Superior de Tecnologia e Gestão de Águeda Curso de Especialização Tecnológica em Práticas Administrativas e Tradução Aplicações de Escritório Electrónico Folha de trabalho

Leia mais

Manual de Administração Intranet BNI

Manual de Administração Intranet BNI Manual de Administração Intranet BNI Fevereiro - 2010 Índice 1. Apresentação... 3 2. Conceitos... 5 3. Funcionamento base da intranet... 7 3.1. Autenticação...8 3.2. Entrada na intranet...8 3.3. O ecrã

Leia mais

Manual UNICURITIBA VIRTUAL para Professores

Manual UNICURITIBA VIRTUAL para Professores Manual UNICURITIBA VIRTUAL para Professores 1 2 2015 Sumário 1 Texto introdutório... 3 2 Como Acessar o UNICURITIBA VIRTUAL... 3 3 Tela inicial após login... 3 3.1) Foto do perfil... 4 3.2) Campo de busca...

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

Sistema Operativo em Ambiente Gráfico

Sistema Operativo em Ambiente Gráfico Sistema Operativo em Ambiente Gráfico Sistema Operativo Conjunto de programas fundamentais que permitem que o computador funcione e comunique com o exterior; Windows: sistema operativo mais utilizado nos

Leia mais

Desenvolvendo Websites com PHP

Desenvolvendo Websites com PHP Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.

Leia mais

LeYa Educação Digital

LeYa Educação Digital Índice 1. Conhecer o 20 Aula Digital... 4 2. Registo no 20 Aula Digital... 5 3. Autenticação... 6 4. Página de entrada... 7 4.1. Pesquisar um projeto... 7 4.2. Favoritos... 7 4.3. Aceder a um projeto...

Leia mais

Introdução aos Sistemas Operativos

Introdução aos Sistemas Operativos Introdução aos Sistemas Operativos Computadores e Redes de Comunicação Mestrado em Gestão de Informação, FEUP 06/07 Sérgio Sobral Nunes mail: sergio.nunes@fe.up.pt web: www.fe.up.pt/~ssn Sumário Definição

Leia mais

Microsoft Office FrontPage 2003

Microsoft Office FrontPage 2003 Instituto Politécnico de Tomar Escola Superior de Gestão Área Interdepartamental de Tecnologias de Informação e Comunicação Microsoft Office FrontPage 2003 1 Microsoft Office FrontPage 2003 O Microsoft

Leia mais

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling

DIMENSIONANDO PROJETOS DE WEB-ENABLING. Uma aplicação da Análise de Pontos de Função. Dimensionando projetos de Web- Enabling DIMENSIONANDO PROJETOS DE WEB-ENABLING Uma aplicação da Análise de Pontos de Função Dimensionando projetos de Web- Enabling Índice INTRODUÇÃO...3 FRONTEIRA DA APLICAÇÃO E TIPO DE CONTAGEM...3 ESCOPO DA

Leia mais

WEBSITE DEFIR PRO WWW.DEFIR.NET

WEBSITE DEFIR PRO WWW.DEFIR.NET MANUAL DO UTILIZADOR WEBSITE DEFIR PRO WWW.DEFIR.NET 1. 2. PÁGINA INICIAL... 3 CARACTERÍSTICAS... 3 2.1. 2.2. APRESENTAÇÃO E ESPECIFICAÇÕES... 3 TUTORIAIS... 4 3. DOWNLOADS... 5 3.1. 3.2. ENCOMENDAS (NOVOS

Leia mais

Bases de Dados. Lab 1: Introdução ao ambiente

Bases de Dados. Lab 1: Introdução ao ambiente Departamento de Engenharia Informática 2010/2011 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo

Leia mais

Licenciatura em Eng.ª Informática Complementos de Redes - 3º Ano - 2º Semestre. Trabalho Nº 4 - VoIP

Licenciatura em Eng.ª Informática Complementos de Redes - 3º Ano - 2º Semestre. Trabalho Nº 4 - VoIP Trabalho Nº 4 - VoIP 1. Introdução A utilização de tecnologia VoIP como alternativa às redes telefónicas tradicionais está a ganhar cada vez mais a aceitação junto dos utilizadores, e está sobretudo em

Leia mais

Base de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade

Base de dados I. Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade Base de dados I O que é? Uma base de dados é um simples repositório de informação relacionado com um determinado assunto ou finalidade Para que serve? Serve para gerir vastos conjuntos de informação de

Leia mais

Operador de Computador. Informática Básica

Operador de Computador. Informática Básica Operador de Computador Informática Básica Instalação de Software e Periféricos Podemos ter diversos tipos de software que nos auxiliam no desenvolvimento das nossas tarefas diárias, seja ela em casa, no

Leia mais

Ministério das Finanças Instituto de Informática. Departamento de Sistemas de Informação

Ministério das Finanças Instituto de Informática. Departamento de Sistemas de Informação Ministério das Finanças Instituto de Informática Departamento de Sistemas de Informação Assiduidade para Calendários Específicos Junho 2010 Versão 6.0-2010 SUMÁRIO 1 OBJECTIVO 4 2 ECRÃ ELIMINADO 4 3 NOVOS

Leia mais

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores SISTEMAS OPERACIONAIS Maquinas Virtuais e Emuladores Plano de Aula Máquinas virtuais Emuladores Propriedades Benefícios Futuro Sistemas de Computadores Os sistemas de computadores são projetados com basicamente

Leia mais

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon (edson@esucri.com.

Banco de Dados I. Apresentação (mini-currículo) Conceitos. Disciplina Banco de Dados. Cont... Cont... Edson Thizon (edson@esucri.com. Sistemas da Informação Banco de Dados I Edson Thizon (edson@esucri.com.br) 2008 Apresentação (mini-currículo) Formação Acadêmica Mestrando em Ciência da Computação (UFSC/ ) Créditos Concluídos. Bacharel

Leia mais

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna O que é uma planilha eletrônica? É um aplicativo que oferece recursos para manipular dados organizados em tabelas. A partir deles pode-se gerar gráficos facilitando a análise e interpretação dos dados

Leia mais

Google Sites. A g r u p a m e n t o C a m p o A b e r t o 2 0 1 0 / 2 0 1 1

Google Sites. A g r u p a m e n t o C a m p o A b e r t o 2 0 1 0 / 2 0 1 1 Google Sites A g r u p a m e n t o C a m p o A b e r t o 2 0 1 0 / 2 0 1 1 1. Google Sites A Google veio anunciar que, para melhorar as funcionalidades centrais do Grupos Google, como listas de discussão

Leia mais

Tarefa 18: Criar Tabelas Dinâmicas a partir de Listas de Excel

Tarefa 18: Criar Tabelas Dinâmicas a partir de Listas de Excel Tarefa 18: Criar Tabelas Dinâmicas a partir de 1. Alguns conceitos sobre Tabelas Dinâmicas Com tabelas dinâmicas podemos criar dinâmica e imediatamente resumos de uma lista Excel ou de uma base de dados

Leia mais