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 (http://www.esa.ipb.pt/~ruiabreu/mola/) 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

Bases de Dados II 6638: BSc in Information Systems and Technologies. Cap. 1 Arquitectura de Sistemas de Bases de Dados. Module Introduction

Bases de Dados II 6638: BSc in Information Systems and Technologies. Cap. 1 Arquitectura de Sistemas de Bases de Dados. Module Introduction Bases de Dados II 6638: BSc in Information Systems and Technologies Cap. 1 Module Introduction Objectivos O propósito e a origem da arquitectura de base de dados a três níveis. O conteúdo dos níveis externo,

Leia mais

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

Bases de Dados. O que é uma Base de Dados? Pós-Grduação em SIG

Bases de Dados. O que é uma Base de Dados? Pós-Grduação em SIG Bases de Dados O que é uma Base de Dados? Dados Pode-se começar por tentar dar uma definição do que são Dados. Os dados são factos em bruto, que não são necessáriamente relevantes para qualquer coisa que

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

Software da Impressora

Software da Impressora Software da Impressora Acerca do Software da Impressora O software Epson inclui o controlador de impressão e o EPSON Status Monitor 3. O controlador de impressão é um software que permite controlar a impressora

Leia mais

ATIVIDADE 1 MÁQUINAS VIRTUAIS. 1.1 Arquiteturas não virtualizadas

ATIVIDADE 1 MÁQUINAS VIRTUAIS. 1.1 Arquiteturas não virtualizadas ATIVIDADE 1 MÁQUINAS VIRTUAIS Existem hoje diversas tecnologias e produtos para virtualização de computadores e ambientes de execução, o que pode gerar uma certa confusão de conceitos. Apesar disso, cada

Leia mais

TABELA 3.1 Requisitos do Windows Server 2008 Standard

TABELA 3.1 Requisitos do Windows Server 2008 Standard 3 3INSTALAÇÃO DE UM SERVIDOR 2008 Feita a apresentação das funcionalidades do Windows Server 2008, eis que chega a hora mais desejada: a da implementação do nosso servidor. No entanto não é de todo recomendável

Leia mais

Base de dados I. Base de dados II

Base de dados I. Base de dados II Base de dados I O que é? Uma base de dados é um simples repositório de informação, relacionada com um determinado assunto ou finalidade, armazenada em computador em forma de ficheiros Para que serve? Serve

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

Í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

Seu manual do usuário ACRONIS ACRONIS BACKUP AND RECOVERY 10 ADVANCED SERVER VIRTUAL EDITION http://pt.yourpdfguides.

Seu manual do usuário ACRONIS ACRONIS BACKUP AND RECOVERY 10 ADVANCED SERVER VIRTUAL EDITION http://pt.yourpdfguides. Você pode ler as recomendações contidas no guia do usuário, no guia de técnico ou no guia de instalação para ACRONIS ACRONIS BACKUP AND RECOVERY 10. Você vai encontrar as respostas a todas suas perguntas

Leia mais

Vídeo Vigilância Abordagem Open-Source

Vídeo Vigilância Abordagem Open-Source Vídeo Vigilância Abordagem Open-Source Alunos: Justino Santos, Paulo Neto E-mail: eic10428@student.estg.ipleiria.pt, eic10438@student.estg.ipleiria.pt Orientadores: Prof. Filipe Neves, Prof. Paulo Costa

Leia mais

Carregamento automatizado de Bases de Dados

Carregamento automatizado de Bases de Dados Carregamento automatizado de Bases de Dados André Neiva de Lemos nº 21276 Trabalho realizado sob a orientação de João Paulo Ribeiro Pereira Engenharia Informática 2014/2015 Carregamento automatizado de

Leia mais

Módulo 1 Microsoft Word 2007 ( 4 Horas)

Módulo 1 Microsoft Word 2007 ( 4 Horas) No final deste módulo o formando deverá estar apto a: Enunciar a definição do Microsoft Word 2007; Reconhecer as principais vantagens da utilização; Distinguir as diferentes áreas do ambiente de trabalho

Leia mais

Interface Homem Máquina para Domótica baseado em tecnologias Web

Interface Homem Máquina para Domótica baseado em tecnologias Web Interface Homem Máquina para Domótica baseado em tecnologias Web João Alexandre Oliveira Ferreira Dissertação realizada sob a orientação do Professor Doutor Mário de Sousa do Departamento de Engenharia

Leia mais

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011

BASES DE DADOS I LTSI/2. Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011 BASES DE DADOS I LTSI/2 Universidade da Beira Interior, Departamento de Informática Hugo Pedro Proença, 2010/2011 Horário Sa Sa Sa Sa Sa Tempos Seg. Ter. Qua. Qui. Sex. l l l l l 8-9 - - - - - - - - -

Leia mais

Bases de Dados. Bibliografia. 1. Parte I Componente Teórica. Pedro Quaresma

Bases de Dados. Bibliografia. 1. Parte I Componente Teórica. Pedro Quaresma Índice Bases de Dados Pedro Quaresma Departamento de Matemática Universidade de Coimbra 2010/2011 1. Parte I Componente Teórica 1.1 Introdução 1.2 Modelo ER 1.3 Modelo Relacional 1.4 SQL 1.5 Integridade

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

Administração de Banco de Dados

Administração de Banco de Dados Administração de Banco de Dados Professora conteudista: Cida Atum Sumário Administração de Banco de Dados Unidade I 1 INTRODUÇÃO A BANCO DE DADOS...1 1.1 Histórico...1 1.2 Definições...2 1.3 Importância

Leia mais

ZS Rest. Manual Avançado. Instalação em Rede. v2011

ZS Rest. Manual Avançado. Instalação em Rede. v2011 Manual Avançado Instalação em Rede v2011 1 1. Índice 2. Introdução... 2 3. Hardware... 3 b) Servidor:... 3 c) Rede:... 3 d) Pontos de Venda... 4 4. SQL Server... 5 e) Configurar porta estática:... 5 5.

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

CAPÍTULO 4 Implementação do modelo num programa de cálculo automático

CAPÍTULO 4 Implementação do modelo num programa de cálculo automático CAPÍTULO 4 Implementação do modelo num programa de cálculo automático Neste capítulo, será feita a demonstração da aplicação do modelo num programa de cálculo automático, desenvolvido em linguagem de programação

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

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider

Ferramenta: Spider-CL. Manual do Usuário. Versão da Ferramenta: 1.1. www.ufpa.br/spider Ferramenta: Spider-CL Manual do Usuário Versão da Ferramenta: 1.1 www.ufpa.br/spider Histórico de Revisões Data Versão Descrição Autor 14/07/2009 1.0 15/07/2009 1.1 16/07/2009 1.2 20/05/2010 1.3 Preenchimento

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

manual instalação e configuração v13 1

manual instalação e configuração v13 1 manual instalação e configuração v13 1 Conteúdo Introdução... 3 Conteúdo do DVD:... 3 Instalação e configuração do ERP... 4 Instalação do ERP... 4 Configuração do ERP... 6 Como actualização de versão...

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

Manual do Utilizador Aluno

Manual do Utilizador Aluno Manual do Utilizador Aluno Escola Virtual Morada: Rua da Restauração, 365 4099-023 Porto PORTUGAL Serviço de Apoio ao Cliente: Telefone: (+351) 707 50 52 02 Fax: (+351) 22 608 83 65 Serviço Comercial:

Leia mais

Porque as suas regras de negócio são específicas, precisa de uma sua solução de gestão que permite gerir essa diferença.

Porque as suas regras de negócio são específicas, precisa de uma sua solução de gestão que permite gerir essa diferença. Porquê NEXT Vision Porque as suas regras de negócio são específicas, precisa de uma sua solução de gestão que permite gerir essa diferença.... Poder de adaptação Porque cabe a si decidir como pretende

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

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

EXCEL. Listas como Bases de Dados

EXCEL. Listas como Bases de Dados Informática II Gestão Comercial e da Produção EXCEL Listas como Bases de Dados (TÓPICOS ABORDADOS NAS AULAS DE INFORMÁTICA II) Curso de Gestão Comercial e da Produção Ano Lectivo 2002/2003 Por: Cristina

Leia mais

Acronis Backup & Recovery 10 Advanced Server Virtual Edition

Acronis Backup & Recovery 10 Advanced Server Virtual Edition Acronis Backup & Recovery 10 Advanced Server Virtual Edition Manual de introdução rápido Este documento descreve a forma de instalar e começar a utilizar o Acronis Backup & Recovery 10 Advanced Server

Leia mais

PHP INTEGRAÇÃO COM MYSQL PARTE 1

PHP INTEGRAÇÃO COM MYSQL PARTE 1 INTRODUÇÃO PHP INTEGRAÇÃO COM MYSQL PARTE 1 Leonardo Pereira leonardo@estudandoti.com.br Facebook: leongamerti http://www.estudandoti.com.br Informações que precisam ser manipuladas com mais segurança

Leia mais

Centro Atlântico, Lda., 2011 Ap. 413 4764-901 V. N. Famalicão, Portugal Tel. 808 20 22 21. geral@centroatlantico.pt www.centroatlantico.

Centro Atlântico, Lda., 2011 Ap. 413 4764-901 V. N. Famalicão, Portugal Tel. 808 20 22 21. geral@centroatlantico.pt www.centroatlantico. Reservados todos os direitos por Centro Atlântico, Lda. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa dos editores da obra. Microsoft Excel 2010 Colecção: Software

Leia mais

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD Introdução 1. CONCEITOS BÁSICOS DE BD, SBD E SGBD A importância da informação para a tomada de decisões nas organizações tem impulsionado o desenvolvimento dos sistemas de processamento de informações.

Leia mais

Ao conjunto total de tabelas, chamamos de Base de Dados.

Ao conjunto total de tabelas, chamamos de Base de Dados. O QUE É O ACCESS? É um sistema gestor de base de dados relacional. É um programa que permite a criação de Sistemas Gestores de Informação sofisticados sem conhecer linguagem de programação. SISTEMA DE

Leia mais

Microsoft Access. No Access, existem vários tipos de objectos: Tabelas. Consultas. Formulários Relatórios Macros Módulos

Microsoft Access. No Access, existem vários tipos de objectos: Tabelas. Consultas. Formulários Relatórios Macros Módulos É um SGBD do tipo relacional para a utilização em windows. Ao abrirmos o Access, podemos efectuar várias operações: abrir uma base de dados existente, ou então criar uma nova base de dados. Se criarmos

Leia mais

Uma Base de Dados é uma colecção de dados partilhados, interrelacionados e usados para múltiplos objectivos.

Uma Base de Dados é uma colecção de dados partilhados, interrelacionados e usados para múltiplos objectivos. 1. Introdução aos Sistemas de Bases de Dados Uma Base de Dados é uma colecção de dados partilhados, interrelacionados e usados para múltiplos objectivos. O conceito de base de dados faz hoje parte do nosso

Leia mais

Manual de actualização passo a passo do Windows 8 CONFIDENCIAL 1/53

Manual de actualização passo a passo do Windows 8 CONFIDENCIAL 1/53 Manual de passo a passo do Windows 8 CONFIDENCIAL 1/53 Índice 1. 1. Processo de configuração do Windows 8 2. Requisitos do sistema 3. Preparativos 2. Opções de 3. 4. 5. 6. 1. Personalizar 2. Sem fios 3.

Leia mais

SIQuant GeoQuality DGNToShapefile Converter

SIQuant GeoQuality DGNToShapefile Converter SIQuant GeoQuality DGNToShapefile Converter v.1.2.1.0 Manual do Utilizador 2005-2007 Copyright SIQuant 2005, 2006, 2007. Todos os direitos reservados. O sistema SIQuant GeoQuality é licenciado pela empresa

Leia mais

YMT REQUISITOS FUNCIONAIS + REFLEXÃO VIABILIDADE TÉCNICA

YMT REQUISITOS FUNCIONAIS + REFLEXÃO VIABILIDADE TÉCNICA REQUISITOS FUNCIONAIS + REFLEXÃO VIABILIDADE TÉCNICA YMT DeCA NTC ANO3 PROJECTO NTC SEM2 RENATO COSTA RICARDO CARVALHO TIAGO FIGUEIREDO MARTIM SANTOS JOÃO ELVAS REQUISITOS FUNCIONAIS 1. Paradigma de interacção

Leia mais

DELEGAÇÃO REGIONAL DO ALENTEJO CENTRO DE FORMAÇÃO PROFISSIONAL DE ÉVORA REFLEXÃO 4

DELEGAÇÃO REGIONAL DO ALENTEJO CENTRO DE FORMAÇÃO PROFISSIONAL DE ÉVORA REFLEXÃO 4 REFLEXÃO 4 Módulos 0776, 0780, 0781, 0786 e 0787 1/10 8-04-2013 Esta reflexão tem como objectivo partilhar e dar a conhecer o que aprendi nos módulos 0776 - Sistema de informação da empresa, 0780 - Aplicações

Leia mais

Professor Esp.: Douglas Diego de Paiva douglas.ddp@gmail.com

Professor Esp.: Douglas Diego de Paiva douglas.ddp@gmail.com VIRTUALIZAÇÃO Professor Esp.: Douglas Diego de Paiva douglas.ddp@gmail.com Virtualização o que é? É uma forma de esconder as características físicas de uma plataforma computacional dos usuários, emulando

Leia mais

Introdução. Capítulo 1. 1.1. Breve sinopse

Introdução. Capítulo 1. 1.1. Breve sinopse Capítulo 1 Introdução 1.1. Breve sinopse O C é uma linguagem de programação criada por Dennis Ritchie no início da década de 70 do século XX. É uma linguagem de complexidade baixa, estruturada, imperativa

Leia mais

COMPETÊNCIAS ESPECÍFICAS Compreender e utilizar a linguagem SQL, na construção e manutenção de uma base de dados.

COMPETÊNCIAS ESPECÍFICAS Compreender e utilizar a linguagem SQL, na construção e manutenção de uma base de dados. PLANIFICAÇÃO DA DISCIPLINA DE SISTEMAS DE INFORMAÇÃO 12.ºH CURSO PROFISSIONAL DE TÉCNICO MULTIMÉDIA ANO LECTIVO 2013/2014 6. LINGUAGENS DE PROGRAMAÇÃO IV Pré-requisitos: - Planificar e estruturar bases

Leia mais

4 Computação Paralela 4.1. Introdução

4 Computação Paralela 4.1. Introdução 4 Computação Paralela 4.1. Introdução Nos últimos anos observa-se uma tendência cada vez maior do aumento da demanda computacional na resolução de grandes problemas. Exemplos de aplicações que exigem alto

Leia mais

Unidade 2. ROM BIOS (Basic Input/Output System) Sistema Operativo. Interacção entre as diferentes partes num computador: software e hardware

Unidade 2. ROM BIOS (Basic Input/Output System) Sistema Operativo. Interacção entre as diferentes partes num computador: software e hardware Interacção entre as diferentes partes num computador: software e hardware Unidade 2 Utilização do ambiente operativo Windows Aplicações Sistema Operativo ROM BIOS Processador+memória+... Software aplicacional

Leia mais

TABELA 2.1 Requisitos do Windows Server 2012 Standard

TABELA 2.1 Requisitos do Windows Server 2012 Standard 2INSTALAÇÃO DE UM SERVIDOR 2012 Feita a apresentação das funcionalidades do Windows Server 2012, eis que chega a hora mais desejada: a da implementação do servidor. No entanto, não é de todo recomendável

Leia mais

CONCEITOS BÁSICOS. 1. Conceitos básicos de BD, SBD e SGBD BANCO DE DADOS I

CONCEITOS BÁSICOS. 1. Conceitos básicos de BD, SBD e SGBD BANCO DE DADOS I CONCEITOS BÁSICOS 1. Conceitos básicos de BD, SBD e SGBD A importância da informação para a tomada de decisões nas organizações tem impulsionado o desenvolvimento dos sistemas de processamento de informações.

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

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

Módulo de Administração MANUAL DO UTILIZADOR

Módulo de Administração MANUAL DO UTILIZADOR MANUAL DO UTILIZADOR Versão 1.5 ÍNDICE 1. INTRODUÇÃO 2 2. REQUISITOS DO SISTEMA 3 3. INÍCIO DA UTILIZAÇÃO 4 4. IDENTIFICAÇÃO DO OPERADOR 5 4.1 MUDAR SENHA DE ACESSO 5 5. GESTÃO DE UTILIZADORES 6 5.1 PERMISSÕES

Leia mais

Instalação e Manutenção de Microcomputadores (COI)

Instalação e Manutenção de Microcomputadores (COI) Instalação e Manutenção de Microcomputadores (COI) 4. Montagem do Computador Disco rígido limpeza; Disco rígido verificação de erros (modo gráfico); Disco rígido verificação de erros (linha de comandos;

Leia mais

Conversão do POC para o SNC

Conversão do POC para o SNC Manual do Utilizador Conversão do POC para o SNC Data última versão: 18.02.2010 Versão: 128 Data criação: 3.12.2009 Faro R. Dr. José Filipe Alvares, 31 8005-220 FARO Telf. +351 289 899 620 Fax. +351 289

Leia mais

Acronis Backup & Recovery 10 Server para Linux. Update 5. Guia da Instalação

Acronis Backup & Recovery 10 Server para Linux. Update 5. Guia da Instalação Acronis Backup & Recovery 10 Server para Linux Update 5 Guia da Instalação Índice 1 Antes da instalação...3 1.1 Componentes do Acronis Backup & Recovery 10... 3 1.1.1 Agente para Linux... 3 1.1.2 Consola

Leia mais

Virtualização. O conceito de VIRTUALIZAÇÃO

Virtualização. O conceito de VIRTUALIZAÇÃO Virtualização A virtualização está presente tanto no desktop de um entusiasta pelo assunto quanto no ambiente de TI de uma infinidade de empresas das mais variadas áreas. Não se trata de "moda" ou mero

Leia mais

LNDnet. Lançamento de notas pelos docentes. Portal académico

LNDnet. Lançamento de notas pelos docentes. Portal académico LNDnet Lançamento de notas pelos docentes Portal académico A base para elaboração do presente manual foi o manual da Digitalis (SIGES.11.0.0 Manual de Utilizador) ao no qual foram registada as adaptações

Leia mais

MÓDULO 1 - Folha de Cálculo

MÓDULO 1 - Folha de Cálculo ANUAL ANO LETIVO DE 2013/2014 Curso Profissional de Técnico de Apoio à Gestão Desportiva Curso Profissional de Técnico de Restauração Cozinha - Pastelaria Disciplina de Tecnologias da Informação e Comunicação

Leia mais

Centro Atlântico, Lda., 2011 Ap. 413 4764-901 V. N. Famalicão, Portugal Tel. 808 20 22 21. geral@centroatlantico.pt www.centroatlantico.

Centro Atlântico, Lda., 2011 Ap. 413 4764-901 V. N. Famalicão, Portugal Tel. 808 20 22 21. geral@centroatlantico.pt www.centroatlantico. Reservados todos os direitos por Centro Atlântico, Lda. Qualquer reprodução, incluindo fotocópia, só pode ser feita com autorização expressa dos editores da obra. Microsoft Access 2010 Colecção: Software

Leia mais

Avaliação do Desempenho do. Pessoal Docente. Manual de Utilizador

Avaliação do Desempenho do. Pessoal Docente. Manual de Utilizador Avaliação do Desempenho do Pessoal Docente Manual de Utilizador Junho de 2011 V6 Índice 1 ENQUADRAMENTO... 4 1.1 Aspectos gerais... 4 1.2 Normas importantes de acesso e utilização da aplicação... 4 1.3

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

Manual de Access 2007

Manual de Access 2007 Manual de Access 2007 Índice Introdução... 4 Melhor que um conjunto de listas... 5 Amizades com relações... 6 A Estrutura de uma Base de Dados... 8 Ambiente do Microsoft Access 2007... 9 Separadores do

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

4 Estrutura do Sistema Operacional. 4.1 - Kernel

4 Estrutura do Sistema Operacional. 4.1 - Kernel 1 4 Estrutura do Sistema Operacional 4.1 - Kernel O kernel é o núcleo do sistema operacional, sendo responsável direto por controlar tudo ao seu redor. Desde os dispositivos usuais, como unidades de disco,

Leia mais

POSTOUCH. Manual Software

POSTOUCH. Manual Software POSTOUCH Manual Software Introdução Introdução POS TOUCH é uma solução direcionada a pequenos postos de venda, que tem necessidade de criação de muitos talões de uma forma linear e rápida. A solução implementa

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

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

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

Oracle SQL Developer

Oracle SQL Developer BDDAD Bases de Dados Oracle SQL Developer Nelson Freire (ISEP LEI-BDDAD 2015/16) 1/30 SQL Developer Sumário Introdução Instalar Abrir Ligar à BD no Servidor Oracle SQL Worksheet Editar SQL Executar SQL

Leia mais

Sistemas Gerenciadores de Bancos de Dados

Sistemas Gerenciadores de Bancos de Dados Sistemas Gerenciadores de Bancos de Dados Fernando Castor A partir de slides elaborados por Fernando Fonseca & Robson Fidalgo 1 Sistemas de Arquivos Sistemas de arquivos Principal característica é a replicação

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

Como posso gerir todas as funções do software de automação num único ambiente de engenharia?

Como posso gerir todas as funções do software de automação num único ambiente de engenharia? Como posso gerir todas as funções do software de automação num único ambiente de engenharia? Para obter mais informações, consulte-nos: www.siemens.com/tia-portal Catálogo online: www.siemens.com/industrymall/pt

Leia mais

Service Appliance IVETIME. Disponibilidade de serviço instantânea! Plug and Play. Segurança. Tolerância a falhas. Manutenção zero. Elevada Performance

Service Appliance IVETIME. Disponibilidade de serviço instantânea! Plug and Play. Segurança. Tolerância a falhas. Manutenção zero. Elevada Performance IVETIME Service Appliance Disponibilidade de serviço instantânea! Aumentar a produtividade Transformar o serviço a Clientes Proteger o capital intelectual Plug and Play Segurança Tolerância a falhas Manutenção

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

SICOP Sistema de Inovação, Controlo e Optimização de Produtos

SICOP Sistema de Inovação, Controlo e Optimização de Produtos SICOP Sistema de Inovação, Controlo e Optimização de Produtos Célia Alves, Liliana Monteiro, Fernanda Barbosa, Ana Borges, Jorge Barbosa* Resumo De modo a facilitar e estandardizar o ciclo de desenvolvimento,

Leia mais

Extracto on Line Aplicação Local Guia do Administrador

Extracto on Line Aplicação Local Guia do Administrador Extracto on Line Aplicação Local Guia do Administrador 1 Índice 1. Sobre o Guia... 3 1.1 Objectivo... 3 1.2 Conceitos e Termos... 3 1.2 Utilização do Guia... 3 2. Ferramentas de Administração... 4 2.1

Leia mais

Prof. Omero, pág. 63. Banco de Dados InterBase.

Prof. Omero, pág. 63. Banco de Dados InterBase. Prof. Omero, pág. 63 O que é o InterBase? O InterBase é um SGBDR - Sistema Gerenciador de Banco de Dados Cliente/Servidor Relacional 1 que está baseado no padrão SQL ANSI-9, de alta performance, independente

Leia mais

Paulo César Especialista de Soluções da ATM informática paulo.cesar@atminformatica.pt

Paulo César Especialista de Soluções da ATM informática paulo.cesar@atminformatica.pt Desktop Virtual Paulo César Especialista de Soluções da ATM informática paulo.cesar@atminformatica.pt Tendo em conta que a Virtualização será um dos principais alvos de investimento para o ano 2009 (dados

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

geral@centroatlantico.pt www.centroatlantico.pt Impressão e acabamento: Inova 1ª edição: Novembro de 2003

geral@centroatlantico.pt www.centroatlantico.pt Impressão e acabamento: Inova 1ª edição: Novembro de 2003 MANTENHA-SE INFORMADO Envie um e-mail* para software@centroatlantico.pt para ser informado sempre que existirem actualizações a esta colecção ou outras notícias importantes sobre o Internet Explorer. *

Leia mais

Manual de utilização do Moodle

Manual de utilização do Moodle Manual de utilização do Moodle Docentes Universidade Atlântica 1 Introdução O conceito do Moodle (Modular Object Oriented Dynamic Learning Environment) foi criado em 2001 por Martin Dougiamas, o conceito

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

WEB OF SCIENCE - tutorial

WEB OF SCIENCE - tutorial WEB OF SCIENCE - tutorial O QUE É A WEB OF SCIENCE A Web of Science é a designação comum que é dada a um conjunto de bases de dados também conhecidas como «Science Citation Indexes» (Science Citation Index,

Leia mais

Ferramentas como, por exemplo, linhas de conexão, formas automáticas, sombras pendentes, WordArt, etc.

Ferramentas como, por exemplo, linhas de conexão, formas automáticas, sombras pendentes, WordArt, etc. Ambiente de trabalho Ambiente de trabalho Porquê criar páginas web? A World Wide Web é a melhor forma das pessoas comunicarem umas com as outras. Nos dias de hoje, é importante poder comunicar com outras

Leia mais

Virtualização - Montando uma rede virtual para testes e estudos de serviços e servidores

Virtualização - Montando uma rede virtual para testes e estudos de serviços e servidores Virtualização - Montando uma rede virtual para testes e estudos de serviços e servidores Este artigo demonstra como configurar uma rede virtual para ser usada em testes e estudos. Será usado o VirtualBox

Leia mais

geral@centroatlantico.pt www.centroatlantico.pt Impressão e acabamento: Inova 1ª edição: Outubro de 2003 ISBN: 972-8426-76-3 Depósito legal: 202574/03

geral@centroatlantico.pt www.centroatlantico.pt Impressão e acabamento: Inova 1ª edição: Outubro de 2003 ISBN: 972-8426-76-3 Depósito legal: 202574/03 FICHEIROS COM EXEMPLOS Envie um e-mail* para software@centroatlantico.pt para conhecer os endereços de Internet de onde poderá fazer o download dos ficheiros com os exemplos deste livro. * O leitor consente,

Leia mais

PERIVER PLATAFORMA SOFTWARE REQUIREMENT SPECIFICATION. Periver_SoftwareRequirementSpecification_2008-03-31_v1.0.doc. Versão 1.0

PERIVER PLATAFORMA SOFTWARE REQUIREMENT SPECIFICATION. Periver_SoftwareRequirementSpecification_2008-03-31_v1.0.doc. Versão 1.0 PLATAFORMA Versão 1.0 31 de Março de 2008 TABELA DE REVISÕES Versão Autores Descrição da Versão Aprovadores Data António Rocha Cristina Rodrigues André Ligeiro V0.1r Dinis Monteiro Versão inicial António

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

SISTEMA DE GERÊNCIA - DmView

SISTEMA DE GERÊNCIA - DmView Sistema de Gerenciamento DmView O DmView é o Sistema de Gerência desenvolvido para supervisionar e configurar os equipamentos DATACOM, disponibilizando funções para gerência de supervisão, falhas, configuração,

Leia mais

Instalação do Aparelho Virtual Bomgar. Base 3.2

Instalação do Aparelho Virtual Bomgar. Base 3.2 Instalação do Aparelho Virtual Bomgar Base 3.2 Obrigado por utilizar a Bomgar. Na Bomgar, o atendimento ao cliente é prioridade máxima. Ajude-nos a oferecer um excelente serviço. Se tiver algum comentário

Leia mais

Informática Básica. Licenciatura em Ciência da Informação. Tito Carlos S. Vieira. E-mail: tito@fe.up.pt. Tito Carlos S. Vieira tito@fe.up.

Informática Básica. Licenciatura em Ciência da Informação. Tito Carlos S. Vieira. E-mail: tito@fe.up.pt. Tito Carlos S. Vieira tito@fe.up. Informática Básica Licenciatura em Ciência da Informação Tito Carlos S. Vieira E-mail: tito@fe.up.pt t 1 Parte II Sistemas Operativos (Utilização do Windows) 2 O Sistema Operativo Windows (9x, 2000, XP,

Leia mais

GUÍA PARA UTILIZAR A WEBNODE EDU

GUÍA PARA UTILIZAR A WEBNODE EDU GUÍA PARA UTILIZAR A WEBNODE EDU Imagina que queres criar o teu próprio site. Normalmente, terías que descarregar e instalar software para começar a programar. Com a Webnode não é preciso instalar nada.

Leia mais

Introdução à aplicação Web

Introdução à aplicação Web Introdução à aplicação Web A aplicação Web SanDisk +Cloud é uma interface com base na Web para aceder ao seu conteúdo e gerir a sua conta. Com a aplicação Web poderá reproduzir música, ver filmes, ver

Leia mais

BOLETIM TÉCNICO NComputing Brasil - #110502 Instalando o Oracle Virtualbox 4.0.2 e Criando uma VM Windows Server 2008 no Virtualbox O que é virtualbox? O virtualbox é um aplicativo de virtualização multi-plataforma

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

ETEC RAPOSO TAVARES GESTÃO DE SISTEMAS OPERACIONAIS I. Máquina Virtual. Instalação de S.O. em dual boot. 1º Semestre 2010 PROF.

ETEC RAPOSO TAVARES GESTÃO DE SISTEMAS OPERACIONAIS I. Máquina Virtual. Instalação de S.O. em dual boot. 1º Semestre 2010 PROF. ETEC RAPOSO TAVARES GESTÃO DE SISTEMAS OPERACIONAIS I Máquina Virtual Instalação de S.O. em dual boot 1º Semestre 2010 PROF. AMARAL Na ciência da computação, máquina virtual é o nome dado a uma máquina,

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

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