82
FACULDADE DE E NGENHARIA DA UNIVERSIDADE DO P ORTO Pathogen identification in Human Cancer cells Nélson Rafael Soares Dias da Silva Martins Mestrado Integrado em Engenharia Informática e Computação Orientador: Professor Rui Camacho (DEI & FEUP) Co-orientador: Doutor Pedro Ferreira (I3S/IPATIMUP) 24 de Julho de 2018

Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

FACULDADE DE ENGENHARIA DA UNIVERSIDADE DO PORTO

Pathogen identification in HumanCancer cells

Nélson Rafael Soares Dias da Silva Martins

Mestrado Integrado em Engenharia Informática e Computação

Orientador: Professor Rui Camacho (DEI & FEUP)

Co-orientador: Doutor Pedro Ferreira (I3S/IPATIMUP)

24 de Julho de 2018

Page 2: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro
Page 3: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Pathogen identification in Human Cancer cells

Nélson Rafael Soares Dias da Silva Martins

Mestrado Integrado em Engenharia Informática e Computação

Aprovado em provas públicas pelo Júri:

Presidente: Jorge A. Silva

Arguente: Carlos Ferreira

Vogal: Rui Camacho

24 de Julho de 2018

Page 4: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro
Page 5: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Resumo

Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoasmorreram no mundo inteiro devido a esta doença. Uma das principais formas de solucionar oproblema que é o cancro, para além do tratamento, é a existência de um prognóstico fidedigno ouseja, antever o problema.

As células humanas podem ser infetadas por bactérias, vírus e outros agentes patogénicosque potenciam o aumento do risco de desenvolvimento do cancro. Esses agentes patogénicospodem substituir o ADN do núcleo e serem multiplicados à medida que as células se replicam.É importante notar que nem todos estes agentes patogénicos causam doenças, mas às vezes acombinação de alguns agentes patogénicos pode desencadear uma patologia.

É neste âmbito que a Bioinformática se torna imprescindível. Resultante da combinação entreCiência de Computadores, Estatística Matemática e Engenharia Informática para interpretar dadosbiológicos, a Bioinformática possibilita a análise de grandes volumes de dados biológicos e aextração de informação relevante e estatisticamente significativa.

O principal objetivo desta tese é o desenvolvimento de uma plataforma Web que permita ajudarinvestigadores a estudar o impacto de agentes patogénicos no cancro, principalmente o papel deinfeções e agentes externos na sua formação e a identificação de tais elementos patogénicos emamostras de genoma humano.

Para tal é necessário que esta plataforma mapeie e alinhe automaticamente sequências de ARNde pacientes humanos com conjuntos de dados existentes, contendo informações sobre agentes pa-togénicos malignos (disponível em repositórios dedicados da Web), dando ao utilizador feedbackestatístico e gráfico, para facilitar a compreensão das informações resultantes.

O objetivo final desta ferramenta é ajudar a prevenir/detetar infeções resultantes de agentesexternos no genoma humano e a expetativa de encontrar correlações importantes e interessantesentre estes agentes e diferentes tipos de cancro.

Palavras-chave: Bioinformática, Cancro, Genómica, Serviços Web, Docker

i

Page 6: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

ii

Page 7: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Abstract

In 2012 more than 14 million new cases of cancer have arisen and more than 8 million peopledied worldwide due to this disease. One of the main ways to solve the problem of cancer, apartfrom treatment, is to have a reliable prognosis, that is to anticipate the problem.

Human cells can be infected by bacteria, viruses and other pathogens that potentiate the incre-ased risk of cancer development. These pathogens can replace the nucleus DNA and be multipliedas the cells replicates. It is important to note that not all of these pathogens cause diseases, butsometimes the combination of some pathogens can trigger a pathology.

It is in this context that Bioinformatics becomes indispensable. Resulting from the combina-tion of Computer Science, Mathematical Statistics and Computer Engineering to interpret biologi-cal data, Bioinformatics enables the analysis of large volumes of biological data and the extractionof relevant and statistically significant information.

The main objective of this thesis is the development of a Web platform to help researchersinvestigate the impact of pathogens on cancer, especially the role of infections and external agentsin their formation and the identification of such pathogens in human genome samples.

To do this, it is necessary for this platform to automatically map and align human patientRNA sequences with existing data sets containing information on malignant pathogens (availablein dedicated Web repositories), giving the user statistical and graphical feedback, to facilitate theunderstanding of the resulting information.

The ultimate goal of this tool is to help prevent / detect infections resulting from externalagents in the human genome and the expectation of finding important and interesting correlationsbetween these agents and different types of cancer.

Keywords: Bioinformatics, Cancer, Genomic, Web Services, Docker

iii

Page 8: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

iv

Page 9: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Agradecimentos

Chegada a etapa final do meu ciclo universitário, conclusão da presente dissertação, há semprea necessidade de mostrar gratidão por quem nos deu a mão nesta fase das nossas vidas.

Em primeiro lugar agradeço à minha família, em especial aos meus pais e irmã por todo oesforço, apoio e confiança ao longo não só da minha carreira académica como de toda a minhavida.

Agradeço também ao Professor Rui Camacho pela orientação, acompanhamento e ajuda aolongo do desenvolvimento da dissertação e ao Doutor Pedro Ferreira pela ajuda na área de biologiae Bioinformática.

Um obrigado à equipa técnica da GRID da FEUP pela ajuda nas máquinas necessárias aodesenvolvimento deste projeto, estando sempre disponíveis para tal.

Para terminar, um agradecimento especial aos meus amigos e colegas de faculdade que meacompanharam e aturaram ao longo destes anos, nos momentos de trabalho e nos momentos dedescontração.

Muito Obrigado,Nélson Rafael Soares Dias da Silva Martins

v

Page 10: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

vi

Page 11: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

“What need is there to weep over parts of life?The whole of it calls for tears.”

Seneca the Younger

vii

Page 12: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

viii

Page 13: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conteúdo

1 Introdução 11.1 Contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.3 Motivação e Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21.4 Estrutura da Dissertação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

2 Conceitos Básicos de Biologia Molecular e Tecnologias Usadas 52.1 Conceitos Básicos da Biologia Molecular . . . . . . . . . . . . . . . . . . . . . 5

2.1.1 Genómica e Proteómica . . . . . . . . . . . . . . . . . . . . . . . . . . 52.1.2 ADN e ARN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.1.3 Sequenciação de ARN . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.1.4 Assemblagem de Segmentos de ARN . . . . . . . . . . . . . . . . . . . 7

2.2 Formatos de Dados Biológicos . . . . . . . . . . . . . . . . . . . . . . . . . . . 72.3 Software de Análise de Dados Genómicos . . . . . . . . . . . . . . . . . . . . . 10

2.3.1 Sequenciação de ARN . . . . . . . . . . . . . . . . . . . . . . . . . . . 112.3.2 Mapeamento e Alinhamento . . . . . . . . . . . . . . . . . . . . . . . . 112.3.3 Controlo de Qualidade . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.3.4 Análise Taxonómica . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.3.5 Conversão e Visualização de Ficheiros . . . . . . . . . . . . . . . . . . . 15

2.4 Tecnologias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.5 Sumário do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3 Implementação 213.1 Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.2 Solução Proposta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

3.2.1 Arquitetura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 223.2.2 Casos de Uso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

3.3 Sumário do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4 Casos de Estudo 374.1 Amostras Cancerígenas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.1.1 Análise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374.1.2 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4.2 Amostras de HIV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.2.1 Análise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.2.2 Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.3 Sumário do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

ix

Page 14: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

CONTEÚDO

5 Conclusões e Trabalho Futuro 495.1 Conclusões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 495.2 Trabalho Futuro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Referências 51

A Guião de Utilizador 55A.1 Página Inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55A.2 Registo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55A.3 Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56A.4 Projetos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57A.5 Novo Projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57A.6 Projeto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57A.7 Visualização do Mapeamento Viral e Bacteriano . . . . . . . . . . . . . . . . . . 60

x

Page 15: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Lista de Figuras

2.1 Estruturas do ADN e ARN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.2 Diferença no método de assemblagem por de-novo assembly (a) e genome refe-

rence assembly (b) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.3 Estrutura de funcionamento da pipeline iRAP . . . . . . . . . . . . . . . . . . . 112.4 Representação esquemática da pesquisa do Prefixo Máximo Mapeável no algo-

ritmo STAR para detetar (a) junções de splice,(b) incompatibilidades e (c) caudas[AD13] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

2.5 Exemplo de um relatório da ferramenta FastQC . . . . . . . . . . . . . . . . . . 152.6 Interação entre o utilizador e os componentes do MVC . . . . . . . . . . . . . . 18

3.1 Diagrama representativo do mapeamento de uma amostra usando Bowtie . . . . . 233.2 Diagrama da arquitetura da plataforma . . . . . . . . . . . . . . . . . . . . . . . 243.3 Diagrama de sequência das mensagens entre o investigador, servidor e máquina

de sequenciação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243.4 Exemplo da interface com a framework Bootstrap . . . . . . . . . . . . . . . . . 253.5 Exemplo de um gráfico usando a framework Highcharts . . . . . . . . . . . . . . 253.6 Exemplo do uso de separadores com o plugin tab-collapse . . . . . . . . . . . . 263.7 Repositório FTP do GenBank . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.8 Exemplo de um repositório no Docker Hub do utilizador ei11051 com as imagens

Bowtie, SAMtools, TopHat e base . . . . . . . . . . . . . . . . . . . . . . . . . . 313.9 Diagrama UML da base de dados . . . . . . . . . . . . . . . . . . . . . . . . . . 333.10 Diagrama de casos de uso para o ator User . . . . . . . . . . . . . . . . . . . . . 34

4.1 Gráficos representativos do mapeamento da amostra A nos genomas bacteriano eviral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

4.2 Gráficos representativos do mapeamento da amostra B nos genomas bacteriano eviral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

4.3 Gráficos representativos do mapeamento da amostra de HIV negativo nos genomasbacteriano e viral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

4.4 Gráficos representativos do mapeamento da amostra de HIV positivo nos genomasbacteriano e viral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

A.1 Página inicial da plataforma online . . . . . . . . . . . . . . . . . . . . . . . . . 55A.2 Formulário de registo na plataforma . . . . . . . . . . . . . . . . . . . . . . . . 56A.3 Formulário de login na plataforma . . . . . . . . . . . . . . . . . . . . . . . . . 56A.4 Vista geral dos projetos do utilizador . . . . . . . . . . . . . . . . . . . . . . . . 57A.5 Formulário para a criação de um novo projeto . . . . . . . . . . . . . . . . . . . 58A.6 Detalhes do projeto e lista de ficheiros de input na secção Pre-Processing . . . . 58A.7 Formulário de upload de um ficheiro . . . . . . . . . . . . . . . . . . . . . . . . 59

xi

Page 16: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

LISTA DE FIGURAS

A.8 Lista de ficheiros de output na secção Pre-Processing . . . . . . . . . . . . . . . 60A.9 Visualização dos resultados da análise de amostras . . . . . . . . . . . . . . . . 61A.10 Gráfico de todas as reads de elementos bacterianos de uma dada amostra . . . . . 61A.11 Gráfico do resultado do mapeamento da amostra para cada elemento patogénico . 62

xii

Page 17: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Lista de Tabelas

2.1 Exemplo do formato FASTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.2 Exemplo do formato FASTQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

4.1 Especificações das máquinas guadiana e magalhaes01 . . . . . . . . . . . . . . 384.2 Resultados da conversão de BAM para FASTQ das amostras A e B . . . . . . . . 384.3 Resultados do mapeamento das amostras A e B contra o genoma humano . . . . 384.4 Resultados do mapeamento das amostras A e B contra os genomas viral e bacteriano 394.5 Resultados do alinhamento das amostras A e B contra os genomas viral e bacteriano 394.6 Resultados do mapeamento da amostra A no genoma bacteriano, sendo que chr

corresponde a chromosome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.7 Resultados do mapeamento da amostra A no genoma viral . . . . . . . . . . . . 414.8 Resultados do mapeamento da amostra B no genoma bacteriano, sendo que chr

corresponde a chromosome . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.9 Resultados do mapeamento da amostra B no genoma viral . . . . . . . . . . . . 434.10 Especificações das amostras de HIV . . . . . . . . . . . . . . . . . . . . . . . . 444.11 Resultados do mapeamento das amostras de HIV contra o genoma humano . . . 444.12 Resultados do mapeamento das amostras de HIV contra os genomas viral e bacte-

riano . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444.13 Resultados do alinhamento das amostras de HIV contra os genomas viral e bacteriano 454.14 Resultados do mapeamento da amostra de HIV negativo no genoma bacteriano,

sendo que chr corresponde a chromosome . . . . . . . . . . . . . . . . . . . . . 454.15 Resultados do mapeamento da amostra de HIV negativo no genoma viral . . . . 464.16 Resultados do mapeamento da amostra de HIV positivo no genoma bacteriano,

sendo que chr corresponde a chromosome . . . . . . . . . . . . . . . . . . . . . 484.17 Resultados do mapeamento da amostra de HIV positivo no genoma viral . . . . . 48

xiii

Page 18: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

LISTA DE TABELAS

xiv

Page 19: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Abreviaturas e Símbolos

ADN Ácido DesoxirriboNucleicoAPI Application Programming InterfaceARN Ácido RiboNucleicoARNm Ácido RiboNucleico mensageiroBAM Binary Alignment MapBLAST Basic Local Alignment Search Toolbp base pairsCSS Cascading Style SheetsFTP File Transfer ProtocolGB GigabyteHIV Human Immunodeficiency VirusHTML5 Hyper Text Markup Language 5HTTP Hypertext Transfer ProtocolJSON JavaScript Object NotationkB kiloByteMB MegaByteMVC Model-View-ControllerNCBI National Center for Biotechnology InformationNGS Next Generation SequencingRNA-Seq RiboNucleic Acid SequencingRPKM Reads Per Kilo base per Million mapped readsSAM Sequence Alignment MapSQL Structured Query LanguageSSH Secure SHellTCGA The Cancer Genome AtlasURL Uniform Resource Locator

xv

Page 20: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro
Page 21: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Capítulo 1

Introdução

Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas

morreram no mundo inteiro devido a esta doença. Uma das principais formas de solucionar o

problema que é o cancro, para além do tratamento, é a existência de um prognóstico fidedigno ou

seja, antever o problema. É neste âmbito que a Bioinformática se torna imprescindível. Resultante

da combinação entre Ciência de Computadores, Estatística Matemática e Engenharia Informática

para interpretar dados biológicos, a Bioinformática possibilita a análise de grandes volumes de

dados biológicos e a extração de informação relevante e estatisticamente significativas.

1.1 Contexto

As células humanas podem ser infetadas por agentes externos como vírus, bactérias, fungos

ou outros microrganismos. Sabe-se hoje em dia que cerca de 8% do genoma humano é constituído

por elementos patogénicos, e estima-se que entre 15% e 20% dos cancros são devidos a infeções

virais. A presença de determinados vírus e bactérias nas células humanas aumenta o risco e a

probabilidade de contrair cancro.

Hoje em dia é possível obter-se informação relativa a genes e proteínas a partir de repositó-

rios online constituídos por informações de diferentes fontes. Isto implica que especialistas da

área da Biologia Molecular tenham que aceder a vários repositórios na Web de modo a obter o

máximo de informação possível relativa a um determinado elemento molecular, e que tenham um

conhecimento abrangente da vasta gama de ferramentas usadas nesta respetiva área.

A disponibilização de dados relativos a sequências genómicas tanto cancerígenas como pato-

génicas e o desenvolvimento de ferramentas de análise destas, possibilita a obtenção de informa-

ções importantes que ajudam na melhor compreensão da expressão genómica.

De forma a poder analisar-se estas sequências, é necessário filtrar os dados que lá estão conti-

dos, visto que nem toda a informação é relevante para o tema em questão. Para tal, o processo de

“refinação” das sequências passa primeiramente pela sequenciação das amostras, a partir do qual

1

Page 22: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Introdução

se obtêm pequenas leituras correspondentes a segmentos de ARN. Estas leituras por si só não são

suficientemente relevantes, pois não é possível retirar nenhuma conclusão a partir de pequenos

segmentos isolados, havendo a necessidade de se realizar uma “assemblagem” destes, para se con-

seguir obter um genoma completo. Esta “assemblagem” passa pelo mapeamento e alinhamento

das amostras, na qual as duas técnicas mais relevantes são de-novo assembly e genome reference

assembly, que permitem detetar agentes externos dentro do dito genoma. Posteriormente, con-

vém realizar uma análise taxonómica a estes agentes, visto que pequenas mutações nestes podem

resultar na atribuição de espécie de agente patogénico errada.

1.2 Projeto

Esta dissertação visa ao desenvolvimento de uma plataforma Web que permita a um investi-

gador/biólogo analisar sequências genómicas humanas através do seu mapeamento e alinhamento

contra genomas de referência. Para tal, é necessário construir uma estrutura que inclua um servi-

dor, interface Web, base de dados e ferramentas para a análise e conversão de ficheiros.

Assim, a plataforma divide-se em quatro partes alojadas em diferentes máquinas:

• Interface Web - permite ao utilizador a criação de projetos, upload de ficheiros e é respon-

sável pela representação gráfica dos resultados e interação do utilizador com a plataforma.

• Base de Dados - guarda toda a informação necessária para o funcionamento da plataforma,

desde dados sobre utilizadores e projetos até aos dados de genomas de referência e amostras.

• Servidor FTP - é responsável pela transferência bidirecional de ficheiros entre as máquinas.

• Instâncias Docker - são responsáveis pelo alinhamento e mapeamento contra os genomas

de referência e pela conversão e indexação de ficheiros. A utilização de containers torna a

solução escalável e flexível.

1.3 Motivação e Objetivos

A principal motivação deste projeto é o desenvolvimento de uma plataforma que facilite a

obtenção de informação relativa a genes e proteínas e a comparação de sequências de genes hu-

manos e patogénicos fortemente expressos. Com a análise de grandes quantidades de sequências

genómicas pode-se obter suporte científico para a correlação entre certos genes patogénicos, genes

humanos e determinados tipos de cancro, e, possivelmente também a zona da sequência genética

mais propícia para tal. Tendo sempre presente que o cancro é uma doença grave e letal, que tem

um enorme impacto social na nossa sociedade.

2

Page 23: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Introdução

1.4 Estrutura da Dissertação

O Capítulo 2 apresenta os conceitos fundamentais necessários para compreender o projeto.

Primeiramente, são mencionados os conceitos básicos da Biologia Molecular relativos ao tema,

seguidos de ferramentas usadas e acabando com as tecnologias informáticas consideradas relevan-

tes. No Capítulo 3 é descrita a solução proposta, referidos os detalhes relativos ao desenvolvimento

e implementação desta. O capítulo 4 consiste na apresentação de resultados e casos de estudo do

projeto, importantes para a validação do projeto. O Capítulo 5 é o capítulo final, o qual abrange

dois tópicos, as conclusões finais da dissertação e o que se espera do trabalho futuro.

3

Page 24: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Introdução

4

Page 25: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Capítulo 2

Conceitos Básicos de BiologiaMolecular e Tecnologias Usadas

Neste capítulo, apresenta-se os conceitos fundamentais do domínio que permitem perceber o

trabalho realizado. Primeiramente irão ser abordados os conceitos básicos de Biologia relaciona-

dos com o tema, passando para os formatos de dados usados e terminando com as ferramentas e

bibliotecas necessárias para a respetiva análise biológica. São ainda apresentadas as tecnologias

Web e as bases de dados que serão utilizadas para o desenvolvimento do projeto.

2.1 Conceitos Básicos da Biologia Molecular

2.1.1 Genómica e Proteómica

A genómica é a área de conhecimento focada no estudo da estrutura, função, evolução, ma-

peamento e edição do genoma de um organismo. Ao índice completo do ADN que está presente

numa célula ou num organismo chama-se genoma, o qual contém toda a informação hereditária

de um ser.

A proteómica realiza o estudo das proteínas que estão expressas numa célula, tecido ou orga-

nismo. A proteómica pode identificar, fazer categorias e classificar as proteínas em relação às suas

funções e interações estabelecidas entre elas. O proteoma é então complementar ao genoma, uma

vez que os genes podem ser transcritos em ARN (no núcleo da célula) que por sua vez traduzido

em proteínas (nos ribossomas – no citoplasma) [eMPW99].

2.1.2 ADN e ARN

É no núcleo das nossas células, mais propriamente no ADN, que está guardada toda a informa-

ção genética de um organismo e as suas características hereditárias1. Esta informação vem sendo

1há também ADN nas mitocôndrias, mas não vamos considerar esse ADN

5

Page 26: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

Figura 2.1: Estruturas do ADN e ARN

alterada desde os primórdios da humanidade, devido a vários fatores como a evolução, reação

ao meio ambiente e mutações ao longo da nossa história causados por fatores externos. Os ge-

nes são os segmentos de ADN que contêm a informação genética, os restantes segmentos ou têm

importância estrutural ou estão envolvidos na regulação do uso da informação genética [AG00].

O ADN é uma sequência de bases ligadas em dupla-hélice, podendo estas bases ser de quatro

tipos: Adenina (A), Timina (T), Citosina (C) e Guanina (G). Apesar de existirem somente qua-

tro bases, o número de combinações entre estas é essencialmente infinito, o que leva à grande

diversidade da espécie humana.

A principal função do ADN é o armazenamento das informações necessárias para a construção

das proteínas a partir de ARN. A formação de ARN é necessária, pois o ADN existe nos cromos-

somas no núcleo da célula e as proteínas são formadas nos ribossomas, que se encontram fora do

núcleo, sendo assim necessário um processo para traduzir e transportar a informação contida no

ADN nuclear.

De forma a materializar a tradução de código genético em proteínas na célula, o ADN é trans-

crito para um tipo de ARN chamado ARN mensageiro, o qual por sua vez sai do núcleo e viaja até

aos ribossomas onde é traduzido e usado para sintetizar as proteínas.

O ARN apresenta uma estrutura simples de cadeia única e é constituído pelas bases Adenina

(A), Uracilo (U), Citosina (C) e Guanina (G), como se pode verificar na Figura 2.1. O processo de

transcrição de ADN em ARNm ocorre no núcleo das células, o que resulta num tamanho bastante

inferior das cadeias de ARN em relação às de ADN, já que estas são cadeias maturadas. O processo

6

Page 27: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

de maturação de ARN é denominado de splicing, que consiste na remoção dos intrões2 e junção

dos exões3, que são a parte do ADN para codificar proteínas. O ARN é a cadeia que é lida nos

ribossomas (cada conjunto de três bases de ARN codifica um aminoácido) para a produção de

proteínas sintetizadas e utilizadas pelo organismo [Sha06].

2.1.3 Sequenciação de ARN

O RNA-Seq, ou sequenciação de ARN pertence às técnicas NGS, Next Generation Sequencing,

e é uma técnica usada para revelar a presença e quantidade de ARN numa determinada amostra

biológica. Esta técnica facilita a capacidade de analisar as mudanças contínuas do conjunto de

todas as moléculas de ARN presentes numa célula ou conjunto de células. Com isto, o RNA-Seq

torna-se relevante para a identificação de fusões de genes, mutações e mudanças na expressão

génica [ZW09].

Antes do RNA-Seq, os estudos de expressão génica eram realizados com microarrays baseados

em hibridação. Devido aos problemas resultantes desta abordagem, como a pobre quantificação e

a necessidade de se saber a sequência a priori, passou-se para os métodos de sequenciação.

Estas técnicas em relação às anteriores, as técnicas de Sanger, conseguem produzir uma maior

quantidade de dados em menos tempo, com menor custo e mais fiabilidade. Com a tecnologia

RNA-Seq pode-se obter segmentos de ARN, denominados short-reads, bastante precisos e exatos,

havendo a possibilidade de obter segmentos bastante raros.

2.1.4 Assemblagem de Segmentos de ARN

Como já foi referido, as técnicas de sequenciação NGS produzem short-reads - pequenos seg-

mentos de ARN. Estes short-reads precisam de ser "assemblados", de forma a gerar um genoma

completo sem interrupções. As duas principais técnicas de assemblagem são o de-novo assem-

bly e o genome reference assembly. A principal diferença entre estes é que o de-novo assembly

não utiliza um genoma de referência, o que resulta num método mais moroso e com maior peso

computacional. Ao não utilizar um genoma de referência, o de-novo assembly constrói a sequên-

cia final, fazendo corresponder o fim de um short-read ao início do próximo, como demonstrado

na Figura 2.2. Em termos de resultado final, o genome reference assembly obtém normalmente

sequências com mais informação disponível.

2.2 Formatos de Dados Biológicos

Os formatos apresentados nesta secção têm em comum o facto de guardarem informação de

sequências genómicas, tanto dados como metadados, em formato de texto. Contudo, estes forma-

tos servem diferentes propósitos.

2segmento do gene sem informação codificante3parte do gene com informação codificante

7

Page 28: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

Figura 2.2: Diferença no método de assemblagem por de-novo assembly (a) e genome referenceassembly (b)

FASTA

O formato FASTA representa sequências nucleotídicas ou peptídicas como texto. Neste for-

mato cada sequência é representada em duas partes diferentes: a primeira começa com o símbolo

’>’ e corresponde à descrição da sequência, contendo o nome ou identificador desta, comentários

e a respetiva base de dados; a segunda corresponde a uma série de carateres que representam ba-

ses nucleotídicas ou peptídicas [eDP 1]. Um exemplo do formato FASTA está representado na

Tabela 2.1. A simplicidade do formato e respetiva codificação permite uma maior facilidade na

manipulação e análise desta por diversas ferramentas.

FASTQ

O formato FASTQ é bastante semelhante ao FASTA, mas contém mais informação disponível.

Para além de conter a sequência biológica contém também os resultados qualitativos correspon-

dentes [PJACpr], sendo que toda a informação é codificada com caracteres ASCII. Por norma as

sequências são representadas por quatro linhas, como é especificado abaixo e na Tabela 2.2.

• Linha 1 - começa com o símbolo ’@’ e é seguido pelo identificador da sequência e opcio-

nalmente uma descrição

• Linha 2 - representa as bases que constituem a sequência

8

Page 29: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

Tabela 2.1: Exemplo do formato FASTA

Descrição >gi|5524211|gb|AAD44166.1| cytochrome b [Elephas maximus maximus]Sequência LCLYTHIGRNIYYGSYLYSETWNTGIMLLLITMATAFMGYVLPWGQMSF

WGATVITNLFSAIPYIGTNLVEWIWGGFSVDKATLNRFFAFHFILPFTMVALAGVHLTFLHETGSNNPLGLTSDSDKIPFHPYYTIKDFLGLLILILLLLLLALLSPDMLGDPDNHMPADPLNTPLHIKPEWYFLFAYAILRSVPNKLGGVLALFLSIVILGLMPFLHTSKHRSMMLRPLSQALFWTLTMDLLTLTWIGSQPVEYPYTIIGQMASILYFSIILAFLPIAGXIENY

• Linha 3 - começa com o símbolo ’+’ e opcionalmente pode ter novamente o identificador

da sequência e respetiva descrição

• Linha 4 - contém a codificação da qualidade dos valores da Linha 2 e deve ter o mesmo

número de caracteres da mesma

BAM/SAM

O formato SAM e BAM (representação binária do SAM) guardam informações sobre o ali-

nhamento ou mapeamento de sequências. Como consequência, um registo SAM precisa de guar-

dar mais informação do que a sequência e respetiva qualidade, precisando guardar informações

relativas a aonde e como uma determinada sequência se mapeia no genoma de referência [HL15].

Ao contrário dos formatos anteriores, este formato baseia-se em linhas de 11 colunas obriga-

tórias e outros elementos adicionais, sendo que cada registo ocupa exatamente uma linha, como

se pode verificar na Listagem 2.1.

1 r001 99 chr1 7 30 17M = 37 39 TTAGATAAAGGATACTG IIIIIIIIIIIIIIIII

2 r002 0 chrX 9 30 3S6M1P1I4M * 0 0 AAAAGATAAGGATA IIIIIIIIII6IBI

NM:i:1

Listagem 2.1: Exemplo de registos no formato SAM

Os dados que se podem obter em cada linha de um ficheiro SAM/BAM são os seguintes4:

• Query Name - read em análise no alinhamento

• Flag - Flag com informação para o parsing do alinhamento

• Reference Name -genoma de referência usado para o alinhamento

• Position - posição do primeiro par de bases do alinhamento

4a explicação detalhada de cada um dos campos pode ser encontrada no manual Sequence Alignment/Map FormatSpecification em https://samtools.github.io/hts-specs/SAMv1.pdf

9

Page 30: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

Tabela 2.2: Exemplo do formato FASTQ

Elemento ExemploIdentificação e descrição @SEQ_IDSequência GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAA

TCCATTTGTTCAACTCACAGTTTLinha separadora +Qualidade de cada par de base !”*((((***+))%%%++)(%%%%).1***-+*”))**55CCF»»»C

CCCCCC65

• Mapping Quality - qualidade do alinhamento

• CIGAR - tipo de operação realizada

• Next Reference Name - nome do próximo segmento alinhado

• Next Reference Position - posição do próximo segmento alinhado

• Template Length - tamanho do segmento alinhado

• Segment Sequence - pares de base da sequência alinhada

• Quality - ASCII representativo da qualidade na escala de Phred5

Para além de registar sequências, os ficheiros SAM também têm um cabeçalho no início do

ficheiro, linhas iniciadas com ’@’, que contém informação sobre a referência usada para o mapea-

mento e a ferramenta usada para a criação do respetivo ficheiro. Esta informação aparece antes das

sequências. Este formato consegue assim transmitir a mesma informação que o formato FASTQ,

mais a informação de mapeamento.

O formato SAM quase nunca é usado para armazenamento, em vez disso os ficheiros são

guardados no formato BAM, que é uma representação binária compacta do formato SAM. Este

formato guarda a mesma informação, só que de forma mais eficiente, para além de poder ser usado

em conjunto com um índice de procura permitindo a rápida pesquisa de registos individuais dentro

do ficheiro. Os ficheiros BAM também conseguem ser mais compactados do que ficheiros FASTA

ou FASTQ comprimidos.

2.3 Software de Análise de Dados Genómicos

Atualmente, existe uma enorme quantidade de ferramentas para análise e tratamento de sequên-

cias de ARN. Nesta secção são enumeradas e descritas algumas destas que consideramos mais

relevantes.

5https://genome.sph.umich.edu/wiki/Phred_scale

10

Page 31: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

Figura 2.3: Estrutura de funcionamento da pipeline iRAP

2.3.1 Sequenciação de ARN

iRAP

O iRAP6 é um pipeline computacional flexível entre vários existentes, desenvolvido por Nuno

Fonseca7. Esta pipeline para RNA-Seq integra várias ferramentas para filtrar e mapear reads, quan-

tificando expressões e testando para expressões diferenciais, como demonstrado na Figura 2.3.

2.3.2 Mapeamento e Alinhamento

Bowtie

O Bowtie8 é uma ferramenta ultra-rápida de alinhamento de short-reads com um genoma de

referência desenvolvida pela Johns Hopkins University. É bastante eficaz quando utilizada em ali-

nhamentos de genomas com grandes quantidades de dados e, ao usar o algoritmo Burrows-Wheeler

transform obtém uma baixa taxa de utilização de memória. Este algoritmo usa transformações de

strings para as comprimir, facilitando assim a sua pesquisa [BL09].

O módulo mais comum do Bowtie é o bowtie aligner que recebe um índice e um conjunto de

reads para gerar uma lista de alinhamentos. Um dos pontos fortes desta ferramenta é a grande

variedade de argumentos que podem ser usados para personalizar o comando e consequentemente

o resultado obtido.

Na Listagem 2.2 podemos ver dois comandos: o primeiro indexa as reads e gera dois ficheiros,

um com as sequências mapeadas, outro com as sequências não mapeadas; enquanto que o segundo

comando cria um ficheiro SAM com toda a informação sobre do mapeamento.

1 bowtie2 -x <index> -U <reads> --un unmapped.fq --al mapped.fq

2 bowtie2 -x <index> -U <reads> -S hits.sam

Listagem 2.2: Exemplo dos comandos bowtie para alinhamento e mapeamento de ficheiros

6https://github.com/nunofonseca/irap7www.dcc.fc.up.pt/ nf/resources.html8http://bowtie-bio.sourceforge.net/

11

Page 32: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

Para além de alinhar sequências biológicas, o Bowtie possui também um módulo de indexação

de ficheiros. Este módulo, bowtie-build indexer recebe um ficheiro de input do formato FASTA

e gera um ficheiro índice. Os ficheiros índice servem tanto para referência para alinhamentos de

elevado peso computacional como para a pesquisa rápida de reads em qualquer parte do ficheiro

original.

Na Listagem 2.3 encontramos o comando para criar um índice. Para tal, é necessário que o

ficheiro de input esteja no formato FASTA, e resulta na criação de seis ficheiros BT2 (formato dos

ficheiros índice) que servem como um único índice.

1 bowtie2-build <input_fasta_file> <index_name>

Listagem 2.3: Exemplo do comando bowtie para criar um índice

BLAST

O BLAST9, Basic Local Alignment Search Tool, é um algoritmo que permite a identificação

de regiões de semelhança entre sequências biológicas primárias tais como aminoácidos, proteínas

ou nucleotídeos, calculando estatísticas de significância dos alinhamentos.

O BLAST utiliza um método heurístico, tal como o FASTA, mas consegue ser mais rápido

e igualmente sensível na deteção de similaridades. Recorre à consulta de bibliotecas ou base de

dados para comparar sequências identificando as que estão acima de um determinado grau de se-

melhança, o que pode não resultar numa solução ótima ao contrário de algoritmos de programação

dinâmica.

O algoritmo FASTA encontra curtos padrões comuns em sequências e tenta consultar a base

de dados para os associar a um alinhamento. O BLAST é semelhante ao FASTA, mas torna-se

mais rápido pois procura apenas os padrões mais raros e mais significativos nas sequências de

aminoácidos, nucleotídeos e proteínas.

Este algoritmo tornou-se muito popular devido à sua disponibilidade na Internet através do

Centro Nacional de Informações sobre Biotecnologia (NCBI) entre outros locais, tendo evoluído

bastante para fornecer aos biólogos moleculares um conjunto de ferramentas de pesquisa podero-

sas que estão disponíveis de forma gratuita [Mou07].

TopHat

O TopHat10 é outra ferramenta proveniente da Johns Hopkins University, bastante similar ao

Bowtie mas diferencia-se especialmente por ter bastante sucesso na identificação de splice11 [CT09]

em cadeias de ARN na análise dos resultados de mapeamento de sequências. Esta ferramenta de

9https://blast.ncbi.nlm.nih.gov/Blast.cgi10https://ccb.jhu.edu/software/tophat/11processo que remove os intrões e junta os exões depois da transcrição do ARN

12

Page 33: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

alinhamento de short-reads é bastante configurável e é normalmente usada em conjunto com o

Bowtie pois são complementares.

Cufflinks

O Cufflinks12 é uma ferramenta que monta transcrições, estima a sua abundância e testa ex-

pressões e regulações diferenciais em amostras de RNA-seq. Tendo como input sequências alinha-

das, o Cufflinks monta os alinhamentos num conjunto parcimonioso de transcrições, estimando a

abundância relativa destas baseado na quantidade de reads que as suportam, tendo em conta os

preconceitos nos protocolos de preparação da biblioteca.

STAR

Muitos dos alinhadores de RNA-seq previamente descritos foram desenvolvidos como exten-

sões de mapeadores de short-reads contíguas (ADN) que são usados para alinhar short-reads a

uma base de dados de junções de splice ou alinhar porções de reads divididas de forma contígua

a um genoma de referência ou uma combinação destas. Em contraste com essas abordagens, o

STAR13 foi projetado para alinhar as sequências não contíguas diretamente ao genoma de referên-

cia. O algoritmo STAR consiste em duas etapas principais: etapa de pesquisa de seeds e etapa de

agrupamento/costura/pontuação.

Na primeira etapa é feita uma pesquisa sequencial de um Prefixo Máximo Mapeável (MMP),

isto é, dada uma read ’L’ com uma determinada localização ’m’ e um genoma de referência ’G’, o

’MMP (L,m,G)’ é definido como a maior subsequência de ’(Lm,Lm+1,..., Lm+MML-1)’ que cor-

responde exatamente a uma ou mais substrings de ’G’, em que ’MML’ é o Comprimento Máximo

Mapeável, como é visível na Figura 2.4.

Na segunda etapa são construídos alinhamentos de toda a sequência lida, unindo todas as se-

eds que foram alinhadas ao genoma na primeira fase. Primeiramente as seeds são agrupadas pela

proximidade de um conjunto selecionado de seeds, após o qual todas as seeds que foram mapeadas

dentro da zona genómica das selecionadas são costuradas juntas, assumindo um modelo de trans-

crição linear local. Por fim, é atribuída uma pontuação a partir de um esquema de alinhamento

local com pontuações definidas pelo utilizador para correspondências, desemparelhamentos, inser-

ções, exclusões e lacunas de junções de splice, permitindo uma avaliação quantitativa da qualidade

e classificação do alinhamento [AD13].

SortMeRNA

O SortMeRNA14 é uma ferramenta de alinhamento de sequências para filtragem, mapeamento e

12http://cole-trapnell-lab.github.io/cufflinks/13https://github.com/alexdobin/STAR14http://bioinfo.lifl.fr/RNA/sortmerna/

13

Page 34: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

Figura 2.4: Representação esquemática da pesquisa do Prefixo Máximo Mapeável no algoritmoSTAR para detetar (a) junções de splice,(b) incompatibilidades e (c) caudas [AD13]

armazenamento em cluster. Tal como o STAR o algoritmo principal é baseado na aproximação de

seeds permitindo a análise detalhada de reads NGS.

A principal aplicação do SortMeRNA é a filtragem de ARN ribossômico a partir de dados

metatranscriptómicos. Para tal a ferramenta recebe como input sequências no formato FASTA ou

FASTQ e um ou vários ficheiros de dados de ARN ribossómico, classificando as reads alinhadas

e rejeitadas em dois ficheiros diferentes.

2.3.3 Controlo de Qualidade

FastQC

Como as ferramentas de sequenciação e mapeamento podem gerar dezenas de milhões de

sequências numa única análise, torna-se necessário antes de analisar as sequências existir alguma

espécie de controlo de qualidade para garantir que os dados brutos estão na melhor condição e

que não há problemas com estes que possam adulterar ou influenciar os resultados e respetivas

conclusões.

É neste âmbito que a ferramenta FastQC15, desenvolvida pela Babraham Bioinformatics visa

identificar problemas e erros gerados pelo "sequenciador"no material da biblioteca inicial, como

se pode ver na Figura 2.5. Sendo uma ferramenta de uso fácil e simplificado, as suas principais

funções são:

• Importação de dados nos diferentes formatos BAM, SAM e FASTQ

• Fornecer uma visão geral com informação das áreas em que pode haver problemas

• Tabelas e gráficos resumidos para a avaliação de dados

15https://www.bioinformatics.babraham.ac.uk/projects/fastqc/

14

Page 35: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

Figura 2.5: Exemplo de um relatório da ferramenta FastQC

• Exportação de resultados para ficheiros baseados em HTML

• Permitir a geração automática de relatórios em modo offline

2.3.4 Análise Taxonómica

MEGAN

Por vezes, um elemento patogénico sofre pequenas mutações. Estas mutações nos pares de

bases de uma sequência de ARN são detetados pelos programas de alinhamento e mapeamento,

que os classificam como diferentes agentes patogénicos. Não obstante, estas sequências, apesar de

diferentes, continuam a representar a mesma espécie, só que de diferentes estirpes. A ferramenta

MEGAN16 ajuda na procura, classificação e agrupamento correto destes elementos como sendo o

mesmo elemento patogénico [eSM11].

2.3.5 Conversão e Visualização de Ficheiros

SAMtools

A ferramenta SAMtools permite a conversão entre ficheiros BAM e SAM , manusear e inde-

xar sequências guardadas em ficheiros com este formato, ordenamento, fusão de ficheiros e a

visualização textual de ficheiros de alinhamento e mapeamento.

16https://ab.inf.uni-tuebingen.de/software/megan6

15

Page 36: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

2.4 Tecnologias

Este projeto necessita de várias tecnologias para o front-end, back-end e armazenamento da

informação.

Hoje em dia existe uma vasta gama de tecnologias disponíveis para todas as etapas anterior-

mente referidas, sendo que a escolha deve sempre recair nas que mais se adequam ao projeto.

Segue-se uma explicação sucinta sobre as tecnologias utilizadas no desenvolvimento deste

projeto.

JavaScript

O JavaScript17 é uma linguagem de programação de alto nível que foi originalmente imple-

mentada para a execução de scripts por parte dos web browsers [MISc].

Juntamente com o HTML e CSS, o JavaScript é uma das três principais tecnologias da World

Wide Web, pois permite páginas web interativas, algo indispensável em muitas ocasiões.

Python

A linguagem Python é amplamente utilizada para programação em geral, principalmente para

glue de software. As principais razões da escolha desta linguagem são a boa legibilidade do

código, simplicidade da sintaxe envolvida, boa gestão de memória, e uma linguagem orientada

a objetos, possuindo uma vasta coleção de bibliotecas, nomeadamente na área de Bioinformica

[MISf].

AngularJS e NodeJS

AngularJS é uma framework em JavaScript de código aberto, mantida pela Google, que ajuda

na execução de single-page applications [MISa].

NodeJS é um interpretador de código JavaScript que funciona do lado do servidor. O objetivo

desta ferramenta é ajudar na criação de aplicações com grande escalabilidade, como é o caso de um

servidor web, com a possibilidade de manipular milhares de conexões simultaneamente [MISd].

AngularJS e NodeJS estão bastantes vezes ligados um ao outro no desenvolvimento de aplica-

ções Web.

Docker

O Docker18 é um programa que fornece uma camada adicional de abstração e automação nas

17https://www.javascript.com/18https://www.docker.com/

16

Page 37: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

virtualizações ao nível do sistema operativo, ou seja containerization, permitindo ao kernel a exis-

tência de várias instâncias isoladas no espaço do utilizador. Estas instâncias, denominadas contai-

ners, são como computadores do ponto de vista dos programas que os correm. Os programas que

correm dentro de um container só têm acesso aos conteúdos da instância e aos dispositivos a ela

associados.

Este programa foi feito maioritariamente para Linux devido a características intrínsecas do

kernel, como cgroups, namespaces, union-capable file system como o OverlayFS entre outros,

para permitir que containers independentes corram numa única instância de Linux [Mer14].

O principal objetivo dos containers passa por criar uma certa independência, que consiste na

habilidade de executar diversos processos e aplicações em separado de forma a maximizar o uso

da infraestrutura.

O Docker fornece um modelo de implantação baseado em imagens, facilitando a partilha de

informações, serviços e dependências em vários ambientes. Este programa também automatiza a

implantação da aplicação (ou de conjuntos de processos que constituem uma aplicação) dentro do

ambiente da instância. Algumas das vantagens dos containers Docker são:

• Modularidade - tal como numa arquitetura orientada a serviços, o Docker permite a partilha

de processos entre várias aplicações.

• Camadas - cada arquivo de imagem Docker é composta por várias camadas, e sempre que

existe alguma alteração numa imagem é criada uma nova camada. Isto permite que estas

camadas sejam reutilizadas para a construção de novos containers e otimiza o processo de

criação, tornando-o mais eficiente, rápido e ocupando menos espaço.

• Reversão - como todas as imagens possuem camadas, torna-se mais fácil reverter alterações

quando necessário para versões anteriores. Isto permite ajudar a manter boas práticas de

integração e implementação.

• Implementação rápida - ao se criar, adicionar ou mover um container não é necessária a

inicialização de um sistema operativo, o que resulta numa redução significativa do tempo

de implementação. Também é mais fácil a criação e destruição de dados criados pelos

containers [MISj].

Em suma, o Docker é uma tecnologia que valoriza a eficiência através da sua abordagem

controlável, granular e baseada em micro-serviços.

Em conjunto com o Docker existe também um repositório online, o DockerHub19 que permite

o push e pull de imagens facilitando a transmissão e partilha destas.

Django

19https://hub.docker.com/

17

Page 38: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

Figura 2.6: Interação entre o utilizador e os componentes do MVC

O Django é uma framework de código aberto de programação de alto nível desenvolvida em

e para Python para o desenvolvimento de aplicações Web.

Esta framework usa o princípio Don’t Repeat Yourself (DRY), pois promove a capacidade de

reutilização de código para um desenvolvimento mais rápido. Também utiliza o padrão Model-

View-Controller (MVC), que se baseia na ideia de que a estrutura de uma aplicação deve ser

modular. Este padrão de arquitetura é apresentado na Figura 2.6 e baseia-se em três componentes:

Model, View e Controller [Dea95].

• Model - é o componente central do padrão, exprimindo o comportamento da aplicação em

termos do domínio do problema. Também é responsável por gerir os dados desta.

• View - pode ser qualquer representação da interface ou saída de informação como um grá-

fico ou diagrama. Interage com o Model para ser atualizada.

• Controller - aceita o input e converte e direciona essa informação para o Model ou View.

BootStrap

O BootStrap é uma framework Web de front-end de código aberto usado para facilitar a cri-

ação de websites e aplicações Web.

Funciona à base de HTML e modelos de design baseados em CSS para navegação e compo-

nentes da interface, possuindo também extensões JavaScript opcionais.

Hoje em dia é a framework de desenvolvimento de front-end mais utilizada a nível mundial

para aplicações Web [MISb].

SQLite

SQLite é uma biblioteca de uso simples desenvolvida em C que implementa uma base de dados

relacional SQL. Foi escolhida esta tecnologia para base de dados ao invés de outras mias popula-

res como MongoDB e MySQL, devido ao facto de a plataforma que se pretende criar conter vários

tipos de informações, baixo tráfego e permitir o upload e download de ficheiros [MISi].

18

Page 39: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

2.5 Sumário do Capítulo

Neste capítulo foi feita a contextualização da dissertação envolvendo os conhecimentos ne-

cessários para o seu desenvolvimento. Os conceitos biológicos, nomeadamente a genómica e a

proteómica, são essenciais para a compreensão do trabalho que se apresenta, e quando aliados à

informática as possibilidades são imensas.

Posteriormente existe a análise das ferramentas e técnicas relacionadas com a Bioinformática,

e dos tipos de ficheiros que se utilizaram.

Por fim são referidas as tecnologias utilizadas para o desenvolvimento deste projeto.

19

Page 40: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conceitos Básicos de Biologia Molecular e Tecnologias Usadas

20

Page 41: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Capítulo 3

Implementação

Neste capítulo é descrita a implementação da solução, uma plataforma Web e respetivo servi-

dor, que visa facilitar o trabalho dos especialistas na área da investigação da influência de vírus e

bactérias na origem de cancros.

3.1 Problema

Nos últimos anos tem existido um grande avanço na área da medicina no que diz respeito

ao tratamento, cura e prevenção de doenças. Não obstante, o cancro continua a ser uma doença

complicada pois, como os números sugerem (14 milhões de novos casos de cancro e mais de 8

milhões de mortes em 2012), os tratamentos em fases avançadas da doença costumam ser pouco

ou nada ineficazes, fazendo com que o prognóstico seja essencial.

É neste âmbito que entra a Bioinformática e a Engenharia Informática para processar e in-

terpretar dados biológicos, possibilitando a análise de grandes volumes de dados biológicos e a

extração de informação relevante e estatisticamente significativa.

No âmbito da Bioinformática foram desenvolvidas várias ferramentas para a análise, alinha-

mento e mapeamento de genomas. No entanto estas ferramentas são bastante complexas e especí-

ficas quanto às suas funções e têm um elevado custo computacional e temporal.

Com esta grande variedade e especificidade de ferramentas torna-se necessário para investiga-

dores e biólogos moleculares terem algum conhecimento de informática para as utilizarem, visto

que a maioria destas funcionam através da linha de comando.

Tal como existe variedade nas ferramentas, também existe variedade no tipo de ficheiros usa-

dos, sendo necessário recorrer com frequência a conversões de ficheiros para utilizar determinadas

ferramentas.

No final é necessária a análise dos ficheiros finais gerados pelas ferramentas. Normalmente

estes ficheiros são bastantes complexos e de difícil compreensão sendo necessário recorrer a pro-

gramas de visualização de sequências e alinhamento genómico para a compreensão dos resultados.

21

Page 42: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

3.2 Solução Proposta

De forma a facilitar o trabalho dos especialistas para analisar sequências genómicas foi desen-

volvida uma plataforma Web denominada genomeFactory para o uso de recursos computacionais

distribuídos.

A utilização desta plataforma é user-friendly, e tem como objetivo permitir ao utilizador criar

projetos, fazer upload e download de ficheiros relativos a genomas e sequências, utilizar remota-

mente as várias ferramentas de análise disponíveis e visualizar os dados analisados e resultados

obtidos graficamente.

Toda a informação é guardada localmente (ficheiros) e numa base de dados que armazena as

informações necessárias para o funcionamento da plataforma. Esta base de dados guarda os geno-

mas de referência, lista atualizada de patogénicos conhecidos, amostras submetidas, ferramentas

utilizadas, dados de execução gerados e respetivos resultados, entre outros.

A máquina de processamento da plataforma contém os docker containers com as ferramentas

necessárias. Estas ferramentas possibilitam a conversão de ficheiros para diferentes formatos,

analisar amostras de sequências ARN e indexar ficheiros e sequências. O servidor gere as trocas

de ficheiros entre o serviço Web e a plataforma online, e vice-versa.

O principal objetivo do uso das ferramentas é isolar elementos bacterianos e virais das amos-

tras, retirando primeiramente as sequências humanas representativas. Isto é possível a partir do

mapeamento e alinhamento da amostra contra o genoma de referência humano usando ferramentas

como o Bowtie como se pode ver na Figura 3.1. Não obstante também é permitido usar índices

que não sejam os já existentes (humano, bacteriano e viral), dando a possibilidade de criar índices

de genomas e mapear a partir destes.

3.2.1 Arquitetura

A solução proposta é constituída por um conjunto de máquinas distintas como se pode verificar

na Figura 3.2. Uma máquina aloja a plataforma Web e base de dados e uma segunda contém as

instâncias docker e o servidor FTP, de modo a dividir tarefas e evitar problemas de excesso de

memória em utilização. A segunda máquina necessita de ser computacionalmente poderosa pois, é

nesta que se executam as ferramentas biológicas que requerem bastante memória para executarem

algoritmos de mapeamento e alinhamento e carregarem índices de genomas. Na Figura 3.3 está

representado o diagrama de sequência de mensagens entre o investigador, servidor e máquina de

sequenciação.

Plataforma Web

A plataforma Web é a interface do utilizador para interagir com a aplicação e usar as ferra-

mentas de análise genómica e foi desenvolvida usando a framework Django que utiliza maiorita-

riamente Python, que é uma linguagem de scripting [Dow09]. Para a interface foram usadas duas

frameworks, o Bootstrap e o Highcharts e o plugin tab-collapse para o Bootstrap.

22

Page 43: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

Figura 3.1: Diagrama representativo do mapeamento de uma amostra usando Bowtie

O Bootstrap, Figura 3.4, utiliza HTML, CSS e Javascript e é usado tanto para o aspeto gráfico

como para componentes como formulários, botões, tabelas e listagens. A grande vantagem desta

framework é a simplicidade gráfica e estrutural que permite a personalização das páginas.

O Highcharts, Figura A.11, permite a criação de gráficos de análise de dados. Feito em Ja-

vascript, esta framework é suportada em vários Web Browsers e plataformas móveis existentes, e

permite usar várias estruturas de dados nos gráficos, tanto estáticos como dinâmicos.

O tab-collapse é um plugin que permite a criação de separadores dentro de uma página web,

permitindo assim que mais informação esteja disponível sem ocupar tanto espaço na janela, como

é visível na Figura 3.6.

Servidor

No servidor é corrido um servidor simples de Python com recurso à biblioteca pyftpdlib1 que

1https://github.com/giampaolo/pyftpdlib

23

Page 44: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

Figura 3.2: Diagrama da arquitetura da plataforma

Figura 3.3: Diagrama de sequência das mensagens entre o investigador, servidor e máquina desequenciação

permite a criação de um servidor FTP leve, rápido e escalável. Na Listagem 3.1 apresenta-se o

código do servidor.

1 authorizer = DummyAuthorizer()

2 authorizer.add_user("admin", "admin", "/data1/nelson/data", perm="elradfmw")

3 authorizer.add_anonymous("/data1/nelson/data", perm="elradfmw")

24

Page 45: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

Figura 3.4: Exemplo da interface com a framework Bootstrap

Figura 3.5: Exemplo de um gráfico usando a framework Highcharts

4 handler = FTPHandler

5 handler.authorizer = authorizer

6 server = FTPServer(("192.168.147.128", 9000), handler)

7 server.serve_forever()

Listagem 3.1: Código do servidor

25

Page 46: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

Figura 3.6: Exemplo do uso de separadores com o plugin tab-collapse

Esta biblioteca permite definir um diretório para funcionar como Home do servidor. Existem

dois utilizadores definidos, o admin e o anonymous, ou seja o administrador e utilizador anónimo,

sendo este último os utilizadores da plataforma. Também é definido o endereço de IP e a respetiva

porta.

De forma a enviar os ficheiros para o servidor FTP, são apresentadas na Listagem 3.2 três

funções essenciais para o sucesso do upload de um ficheiro para a plataforma.

1 def handle_uploaded_file(file_, file_name, project, part):

2 print("Start uploading " + file_name + " to input files")

3 file_path = ’genesTool/files/’ + project + ’/’ + part + ’/input/’ + file_name

4 with open(file_path, ’wb+’) as destination:

5 for chunk in file_.chunks():

6 destination.write(chunk)

7 uploadFile(project, file_path, part, file_name)

8

9 def establishConnection():

10 ftp = FTP(’’)

11 ftp.connect(’192.168.147.128’,9000)

12 ftp.login()

13 ftp.cwd(’projects’)

14 ftp.retrlines(’LIST’)

15 return ftp

16

17 def uploadFile(project, path, part, name):

18 ftp = establishConnection()

19 file_name = project + "/" + part + "/input/" + name

26

Page 47: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

20 ftp.storbinary(’STOR ’+file_name, open(path, ’rb’))

21 ftp.quit()

Listagem 3.2: Funções de upload de ficheiros para o servidor

A primeira função handle_uploaded_file serve para guardar o ficheiro localmente, a segunda

função establishConnection estabelece a ligação com o servidor anteriormente definido, e a última

função uploadFile envia o comando de STOR para guardar o ficheiro na máquina remota.

Genomas de Referência

Os genomas de referência usados para este trabalho foram obtidos no repositório FTP do Na-

tional Center for Biotechnology Information2 (NCBI), mais concretamente do GenBank que é

uma das base de dados de todas as sequências genéticas publicamente disponíveis. Na Figura 3.7

podemos ver os diretórios existentes no dito repositório (as sequências humanas estão dentro de

vertebrate_mammalian e, Homo_sapiens).

De forma a gerar índices de genoma foi necessário fazer o download de sequências para a

criação de um ficheiro FASTA que possa ser indexado. Para tal recorreu-se a um script de bash

(ver Listagem 3.3.

1 #!/bin/bash

2 wget ftp://ftp.ncbi.nlm.nih.gov/genomes/genbank/bacteria/assembly_summary.txt

3 awk -F ’\t’ ’{if($12=="Complete Genome") print $20}’ assembly_summary.txt >

assembly_summary_complete_genomes.txt

4 mkdir GbBac

5 for next in $(cat assembly_summary_complete_genomes.txt); do wget -P GbBac "$next"

/*genomic.fna.gz; done

6 gunzip GbBac/*.gz

7 cat GbBac/*.fna > all_complete_Gb_bac.fasta

Listagem 3.3: Bash script para fazer o download de sequências bacterianas e gerar o

correspondente ficheiro FASTA

É feito um wget do ficheiro assembly_summary.txt que contém o nome de todos os ficheiros

existentes e as características correspondentes. Com o comando awk é verificada a 12a coluna de

todas as linhas do ficheiro e, se esta linha tiver a string Complete Genome é feita a cópia da 20a

coluna (endereço do ficheiro correspondente) para um novo ficheiro.

Para cada linha do novo ficheiro é feito o download da sequência correspondente a partir dos

comandos cat e wget. Como os ficheiros vêm comprimidos é necessário a sua descompressão,

sendo usado o comando gunzip. Por último é usado o comando cat para criar um ficheiro final que

contenha todas as informações das sequências adquiridas.

2https://www.ncbi.nlm.nih.gov/

27

Page 48: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

Figura 3.7: Repositório FTP do GenBank

Envio de Comandos

De forma a enviar os comandos a serem executados na máquina remota de processamento foi

necessário utilizar a biblioteca Pexpect3, mais especificamente o módulo pxssh. A biblioteca Pex-

pect faz do Python uma ferramenta com a possibilidade de controlar outras aplicações, permitindo

a criação e controlo de aplicações filho, respondendo aos padrões esperados de output, e o módulo

pxssh permite o uso de SSH4(Secure SHell).

O SSH é um protocolo de rede criptográfico para a operação de serviços de rede de forma

segura, como por exemplo o login remoto a sistemas de computadores. Este protocolo fornece um

canal seguro sobre uma rede na arquitetura cliente-servidor, conectando um cliente a um servidor

[MISg].

A função responsável pelo envio de comandos para o servidor pode ser vista na Listagem 3.4.

1 def sendCommand(commandList):

2 var = pxssh.pxssh(timeout=None)

3 if not var.login(server, user, password):

4 print("SSH session failed on login.")

5 print(str(var))

6 else:

7 print("SSH session login successful")

8 for x in commandList:

9 var.sendline(x)

10 var.prompt()

11 print(var.before)

12 var.logout()

13 return;

3https://pexpect.readthedocs.io/en/stable/4https://www.ssh.com/

28

Page 49: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

Listagem 3.4: Função de envio de comandos para o magalhaes01

A função recebe como argumento uma lista de comandos (strings), define o timeout como

sendo nulo, faz a conexão ao servidor com as variáveis server, user e password, estas com a

declaração omitida por razões de privacidade, e caso tenha tido sucesso na conexão ao servidor

envia os comandos um a um, fazendo um print do resultado na linha de comandos.

Docker

Nesta mesma máquina encontram-se as instâncias Docker criadas com base no BioContainers5,

que é uma estrutura de código aberto que fornece ambientes executáveis para a área de Bioinfor-

mática, permitindo que o software seja instalado e executado num ambiente isolado e controlado.

Como exemplo temos a Listagem 3.5 que mostra parte do ficheiro dockerfile de instalação da

ferramenta Bowtie.

1 ENV ZIP=bowtie2-2.2.9-linux-x86_64.zip

2 ENV URL=https://github.com/BenLangmead/bowtie2/releases/download/v2.2.9/

3 ENV FOLDER=bowtie2-2.2.9

4 ENV DST=/home/biodocker/bin

5 RUN wget $URL/$ZIP -O $DST/$ZIP && \

6 unzip $DST/$ZIP -d $DST && \

7 rm $DST/$ZIP && \

8 mv $DST/$FOLDER/* $DST && \

9 rmdir $DST/$FOLDER

10 WORKDIR /data

11 CMD ["bowtie2"]

Listagem 3.5: Conteúdo do dockerfile para a ferramenta Bowtie

As variáveis de ambiente, ENV, servem para definir os nomes usados, neste caso o nome do

ficheiro comprimido, endereço de url, nome da pasta do Bowtie e a pasta final, neste caso dentro

do /home/<user>/bin.

O comando RUN serve para correr comandos, neste caso para a instalação do Bowtie é feito a

transferência do ficheiro usando wget que pode ser dividido em duas partes: a primeira com o url e

o nome do ficheiro comprimido para transferência; a segunda com a pasta de destino e nome outra

vez para o output, isto graças ao parâmetro -O. Depois o ficheiro é descomprimido, procedendo-se

a deslocação dos ficheiros resultantes, e elimina-se a pasta que agora está vazia.

Por fim, é definido o diretório de trabalho, o /data que será aonde todos os ficheiros serão

"trabalhados"com o comando WORKDIR. É também definido com a variável CMD o comando

padrão, neste caso bowtie2, que é útil quando se executa o container.

5http://biocontainers.pro/

29

Page 50: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

Depois de já se ter uma imagem, para a utilizar é necessário utilizar um comando válido e

específico para aquilo que se quer realizar. Na Listagem 3.6 um exemplo de um comando para

mapear um ficheiro de exemplo com o genoma humano utilizando o Bowtie:

1 $ docker run -v <path>:/data/ <dockerImage> <command> <options> <files>

2 $ docker run -v /home/nelson/Documents/test:/data/ ei11051/bowtie bowtie2 -x human

-U example.fq -S /data/output/result.sam

Listagem 3.6: Exemplo de um comando para correr uma instância docker

O comando run corre a imagem, o comando -v serve para definir um diretório de ficheiros

partilhados, quer para o input e output, denominado data por simplicidade. De seguida segue-se

o nome da imagem ei11051/bowtie, seguido pelo comando bowtie2 com os argumentos -x para o

nome do índice a usar, -U para ficheiros no formato FASTQ a comparar com o índice e, -S para o

resultado, guardado num ficheiro SAM.

Docker Hub

O Docker Hub é um serviço de cloud, categoria ampla que abrange serviços contínuos de

recursos baseados na Internet, que funciona como um repositório de imagens docker. Este ser-

viço permite a criação, armazenamento e teste entre outros, de instâncias fornecendo um recurso

centralizado para a gestão, distribuição e alteração das mesmas [MISe].

Este serviço permite a ligação ao GitHub6 que é um serviço que gere o controlo de versão de

código de projetos. Tendo em conta que as imagens Docker são geradas a partir de um dockerfile, é

bastante comum ver os dois serviços a funcionar em uníssono para o armazenamento das imagens

(Docker Hub) e respetivo controlo de versão (GitHub), facilitando as tarefas de manutenção.

Na Figura 3.8 podemos ver um exemplo de imagens do utilizador ei11051 dentro do Docker

Hub. Para além destas existem também imagens para BLAST, STAR, Picard, MEGAN, SortMeRNA

e Cufflinks, tudo ferramentas para análise de dados biológicos como referido previamente no Ca-

pítulo 2. Não obstante o facto de nem todas estas ferramentas terem sido usadas no projeto final,

as imagens estão disponíveis para qualquer pessoa, a partir de um comando, como se pode ver na

Listagem 3.7.

1 $ docker pull <user>/<image>

2 $ docker pull ei11051/bowtie

Listagem 3.7: Comando para fazer o download de uma instância docker

Tratamento de Dados

6https://github.com/

30

Page 51: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

Figura 3.8: Exemplo de um repositório no Docker Hub do utilizador ei11051 com as imagensBowtie, SAMtools, TopHat e base

Após as sequências biológicas terem sido mapeadas com os genomas de referência, existe a

necessidade de comparar os resultados deste mapeamento com dados biológicos previamente ana-

lisados. Para este fim foram usadas estas duas bibliotecas externas desenvolvidas em Python:

• BioPython7 - contém classes e métodos representativos de sequências biológicas, permite

o alinhamento de sequências e estruturas de proteínas, contém parsers para vários tipos de

ficheiros biológicos, e possibilita o acesso a repositórios online como o NCBI.

• PySam8 - usada para leitura, manipulação e escrita de datasets genómicos permitindo o uso

de comandos da ferramenta SAMtools.

Estas bibliotecas tornam-se úteis para a análise de ficheiros SAM/BAM, permitindo o seu

parsing. Na Listagem 3.8 é mostrado o que se faz com estes ficheiros.

1 #...

2 bamfile = pysam.AlignmentFile(file_path, "rb")

3 iter = bamfile.fetch(until_eof=True)

4 #...

5 maps_list = []

6 bac_ref = Reference.objects.filter(specie="Bacteria")

7 vir_ref = Reference.objects.filter(specie="Virus")

8 all_genes = GeneSeq.objects.filter(Q(reference=bac_ref) | Q(reference=vir_ref))

9 txt_path = ’genesTool/requests/’ + project + ’/’ + file_name + "_reads.txt"

10 reads_file = open(txt_path, "a")

11 #...

12 for x in iter:

13 maps_list.append(str(x.reference_name))

14 if int(x.reference_end) > 0:

7https://biopython.org/8http://pysam.readthedocs.io/en/latest/api.html

31

Page 52: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

15 read_length = int(x.reference_end) - int(x.reference_start)

16 start_char = str(x.reference_start)

17 genInfo= x.reference_name.split("|")

18 genID = genInfo[1]

19 last_char = int(start_char)+read_length-1

20 reads_file.write(genID+"-"+str(read_length)+"-"+str(start_char)+"-"+str(

last_char)+"\n")

21 number_reads = number_reads + 1

22 #...

Listagem 3.8: Código de criação de um ficheiro de texto para análise a partir de um ficheiro SAM

Começa-se por indicar o ficheiro, neste caso um ficheiro BAM ("rb" para BAM, apenas "r"

para SAM), e a pedir a sua leitura com a função fetch até ao fim do ficheiro. De seguida vai-se

buscar à base de dados os genomas bacterianos e virais disponíveis e cria-se um ficheiro de texto

para guardar os resultados. Os resultados são guardados num ficheiro de texto porque como podem

ser milhares de reads, convém não sobrecarregar a base de dados.

O ciclo for funciona em torno de cada read dentro do ficheiro BAM. Para cada instância é

adicionado o nome à lista de mapeamentos, calculado o tamanho, obtém-se o caráter inicial e final

e o identificador do gene, guardando-se esta informação toda no ficheiro de texto com o comando

write.

Posteriormente as informações são enviadas para a interface Web com recurso a JSON, que é

um formato de ficheiros open-standard que usa texto legível para transmitir objetos que consistem

em pares de atributo/valor e arrays, sendo usado maioritariamente para a comunicação assíncrona

entre o navegador Web e o servidor.

Base de Dados

A base de dados é uma parte vital de qualquer projeto hoje em dia, pois existe sempre a ne-

cessidade de armazenar informação de forma estruturada e sistemática quer para pesquisa como

para possíveis alterações.

A tecnologia escolhida para a base de dados foi o SQLite pois é relativamente simples de

aprender, lightweight e open-source. Outro aspeto importante para a escolha desta tecnologia foi

o facto de interagir com a framework Django sem a necessidade de bibliotecas extras.

Na Figura 3.9 está representado o diagrama UML do modelo de classes e relações entre os

diferentes modelos de classes e relações entre estas usadas no desenvolvimento da base de dados

da solução.

Em seguida apresenta-se um breve descrição e explicação das tabelas criadas:

• User - guarda o primeiro e último nome, o email e password, que são necessários para

o login, a data de registo, que é gerado automaticamente, e a lista de projetos em que o

utilizador está envolvido.

32

Page 53: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

Figura 3.9: Diagrama UML da base de dados

• Project - guarda o nome e descrição e gera automaticamente a data e o estado, sendo que

este último por definição está em aberto, podendo posteriormente ser posto em fechado.

• File - guarda o nome, descrição e a parte do projeto em que se insere. Automaticamente

associa o projeto no qual o ficheiro existe, determina o tamanho e tipo de ficheiro e gera

a data de inserção. Caso o ficheiro tenha sido gerado a partir de outro ficheiro, guarda

informação sobre o ficheiro de origem e respetivo diretório.

• Directory - gera automaticamente o nome no formato ano-mês-dia_hora-minuto-segundo

por ser único, associa o ficheiro, projeto, parte e ferramenta em questão e adiciona o/s

ficheiro/s criados.

• Index - guarda a descrição, cria o nome a partir do ficheiro original, guardando a referência

deste, associa o projeto e gera a data de criação.

• Request - guarda o nome e descrição. Sendo um pedido de análise de uma amostra guarda

a informação relativa aos ficheiros finais bacterianos e virais e sobre o resultado final do

mapeamento.

• RequestResult - a partir de um Request são mapeados os elementos patogénicos presentes

nos ficheiros, e por cada um destes elementos mapeado é guardado o seu RPKM, total de

33

Page 54: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

reads e o respetivo ficheiro. As reads mapeadas são guardadas num ficheiro à parte ao invés

da base de dados para não a sobrecarregar pois normalmente são geradas milhares de reads.

• GeneSequence - cada um dos ficheiros de genomas de referência contém diferentes cro-

mossomas (Homo Sapiens e elementos patogénicos (virais e bacterianos), o que faz com

que exista a necessidade de guardar a informação sobre cada um destes diferentes elemen-

tos. Esta informação passa pelo nome, versão, tamanho da sequência e posição do caráter

inicial no ficheiro do respetivo genoma de referência e o ID na base de dados do NCBI.

• Reference - cada Reference é um genoma de referência diferente, estando cada um associada

a espécie, versão, descrição e respetivo ficheiro com as sequências biológicas.

3.2.2 Casos de Uso

A solução proposta tem apenas um ator, o User, a interagir com a plataforma. A Figura 3.10

representa o diagrama de casos de uso para o ator, e nela é possível visualizar as funcionalida-

des disponíveis na plataforma, desde login, logout e register, as mais triviais, até à conversão,

indexação, mapeamento e análise de ficheiros.

Figura 3.10: Diagrama de casos de uso para o ator User

34

Page 55: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

3.3 Sumário do Capítulo

Neste capítulo foi aprofundado o problema, descrita a solução proposta, feita uma breve aná-

lise das funcionalidades existentes na plataforma genomeFactory e mencionados alguns detalhes

considerados mais relevantes na sua implementação.

35

Page 56: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Implementação

36

Page 57: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Capítulo 4

Casos de Estudo

Neste capítulo são apresentados os casos de estudo que permitem avaliar e ilustrar as potencia-

lidades da solução proposta. As amostras utilizadas para os testes provêm do The Cancer Genome

Atlas (TCGA1).

O principal objetivo da análise de amostras reais é a avaliação das funcionalidades da pla-

taforma e demonstração das suas potencialidades. Não obstante esse facto, também se procura

verificar a expressão genética dos elementos patogénicos mapeados(segundo o número de reads),

o seu RPKM2 e o respetivo número de pares de base.

O RPKM (fórmula 4.1), é uma unidade normalizada da expressão de transcrição que representa

a relação entre os reads mapeados de um elemento patogénico ("N") e o seu comprimento em

pares de base ("C"), e o total de reads mapeados em toda a amostra ("T"). No final é costume

multiplicar-se por 109 para dar um número superior a 1, pois os resultados costumam ser bastante

pequenos do ponto de vista matemático.

RPKM =N ×109

T ×C(4.1)

As amostras usadas neste capítulo foram todas submetidas às mesmas condições. Para todas as

amostras foram usados genomas de referência e ferramentas iguais na máquina remota. Na Tabela

4.1 é possível ver as especificações das máquinas envolvidas nos testes.

4.1 Amostras Cancerígenas

4.1.1 Análise

Conversão de BAM para FASTQ

1https://cancergenome.nih.gov/2Reads Per Kilo base per Million mapped reads

37

Page 58: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

Tabela 4.1: Especificações das máquinas guadiana e magalhaes01

Máquina Processador Memória(GB)

Espaço em Disco(GB)

guadianaIntel(R) Core(TM)2 Quad CPU

Q9300, @ 2.50GHz8 431

magalhaes01Intel(R) Xeon(R) Octa CPU

E5430, @ 2.66GHz32 917

As amostras usadas estavam originalmente no formato BAM, mas para serem mapeadas têm

que estar no formato FASTQ. Para tal utilizou-se a ferramenta SAMtools. Na Tabela 4.2 apresen-

tamos os resultados desta iteração.

Tabela 4.2: Resultados da conversão de BAM para FASTQ das amostras A e B

Amostra Tamanho Inicial(GB)

Tamanho Final(GB)

Tempo(min)

Número Total dereads

A 13 41 1622 226775719B 15 49 1817 271247613

Mapeamento contra o genoma humano

Cada ficheiro FASTQ foi mapeado contra o genoma humano de referência (grCh38) usando

a ferramenta Bowtie. Isto resulta na criação de dois ficheiros de sequências no formato FASTQ.

Um com as sequências mapeadas e o outro com as sequências não mapeadas, como se pode ver

na Tabela 4.3. Para esta experiência podemos descartar as sequências mapeadas obtidas, pois não

são relevantes.

Tabela 4.3: Resultados do mapeamento das amostras A e B contra o genoma humano

Amostra Mapeamento Número de reads(bp)

Tamanho(GB)

Tempo(min)

AMapeados 200259647 36

662Não Mapeados 26516072 4.8

BMapeados 242979357 44

788Não Mapeados 28268256 5.1

Mapeamento contra o genoma bacteriano e viral

38

Page 59: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

Nesta iteração foram mapeados os ficheiros com sequências não mapeadas obtidos na itera-

ção anterior contra os genomas viral e bacteriano usando novamente a ferramenta Bowtie como na

iteração anterior. Na Tabela 4.4 são apresentados os dados resultantes desta iteração.

Tabela 4.4: Resultados do mapeamento das amostras A e B contra os genomas viral e bacteriano

Amostra Genoma Mapeamento Número de reads(bp)

Tamanho(kB)

Tempo(min)

ABacteriano

Mapeados 3057 57455

Não Mapeados 26513015 5033164

ViralMapeados 2109 395

54Não Mapeados 26513963 5033164

BBacteriano

Mapeados 2290 42957

Não Mapeados 28265966 5347737

ViralMapeados 3784 395

55Não Mapeados 28264472 5347737

Alinhamento contra o genoma bacteriano e viral

Nesta iteração é utilizada a ferramenta Bowtie para alinhar as sequências mapeadas na iteração

anterior com os genomas de referência bacteriano e viral. Com este passo pretende-se informação

sobre o alinhamento dos genes e elemento patogénicos presentes nas amostras, como se pode ver

na Tabela 4.5. Os ficheiros gerados nesta iteração encontram-se no formato SAM.

Tabela 4.5: Resultados do alinhamento das amostras A e B contra os genomas viral e bacteriano

Amostra GenomaNúmero de

reads(bp)

Reads alinhadas1 vez(bp)

Reads alinhadas> 1 vez

(bp)

ABacteriano 3057 303 (9,91%) 2754 (90,09%)

Viral 2109 941 (44,62%) 1168 (55,38%)

BBacteriano 2290 319 (13,93%) 1971 (86,07%)

Viral 3784 1112 (29,39%) 2672 (70,61%)

Classificação de ficheiros SAM

Antes de procedermos à análise dos ficheiros alinhados anteriormente, existe a necessidade

de os classificar (Sorting), isto é, ter os dados classificados por cromossomas, contigs3, scaffolds4,

3trechos contínuos de sequência que contêm apenas bases A, C, G ou T, sem lacunas4encadeação e junção de contigs usando informações adicionais sobre a posição relativa e orientação dos contigs no

genoma

39

Page 60: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

entre outros, com base no genoma de referência usado anteriormente. Isto permite o acesso aos

dados dentro do ficheiro em questão de uma forma mais eficiente.

Para tal, é primeiro necessário converter os ficheiros SAM obtidos anteriormente para BAM,

versão binária do formato SAM, e só depois é que se pode classificar os ficheiros. Para efetuar

estes passos é utilizada a ferramenta SAMtools com o comando view para a conversão e sort para

a classificação.

4.1.2 Resultados

Os resultados gerados provêm da análise dos ficheiros gerados na iteração anterior. Para cada

amostra testada existem figuras representativas do mapeamento nos genomas bacteriano e viral,

tal como tabelas com os elementos mais mapeados.

Amostra A

Na Figura 4.1 é possível identificar as bactérias e vírus mapeados para a amostra, e na Tabela

4.6 estão os detalhes das bactérias mais mapeadas.

Figura 4.1: Gráficos representativos do mapeamento da amostra A nos genomas bacteriano e viral

Na Tabela 4.6 está representada a bactéria Bacteroides fragilis YCH46 DNA com 102 reads e

um RPKM de 5. Esta bactéria é uma potencial causa para a sepsis, condição que surge quando

40

Page 61: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

Tabela 4.6: Resultados do mapeamento da amostra A no genoma bacteriano, sendo que chr cor-responde a chromosome

Bactéria Comprimento(bp)

Número de reads(bp) RPKM

Azotobacter vinelandii CA6 5323210 432 25Chelativorans sp. BNC1 chr 4412446 146 8

Bacteroides fragilis YCH46 DNA 5277274 102 5Azorhizobium caulinodans ORS 571 chr 5369772 67 3

Gamma proteobacterium HdN1 chr 4587455 63 3Colwellia psychrerythraea 34H chr 5373180 62 3Hahella chejuensis KCTC 2396 chr 7215267 58 3

Bradyrhizobium sp. BTAi1 chr 8264687 51 2Bacillus subtilis BSn5 chr 4093599 48 2

corpo humano responde uma infeção danificando os seus próprios tecidos e órgãos [MISh]. Pes-

soas com cancro têm um maior risco de contrair sepsis pois:

• Maior quantidade de tempo passado em hospitais significa maior risco de contrair uma in-

feção.

• Cirurgias e procedimentos que danificam e perfuram a pele aumentam o risco de infeção.

• Sistema imunológico danificado, muitas vezes devido ao tratamento do cancro.

• Desnutrição, idade avançada e outras doenças podem aumentar o risco de desenvolver uma

infeção.

Na Figura 4.1 também é possível identificar os vírus mapeados para a amostra, e na Tabela 4.7

estão os detalhes dos vírus mais mapeados.

Tabela 4.7: Resultados do mapeamento da amostra A no genoma viral

Vírus Comprimento(bp)

Número de reads(bp) RPKM

Encephalomyocarditis virus 7835 518 30Abelson murine leukemia virus 5894 411 24

Murine osteosarcoma virus 3811 350 20Hepatitis C virus genotype 2 9711 255 14

Pestivirus Giraffe-1 12602 72 4Pandoravirus salinus 2473870 48 2

Bovine viral diarrhea virus 1 12573 45 2Cyprinid herpesvirus 3 295146 36 2

Na Tabela 4.7 estão representados vários vírus presentes na amostra A, sendo que muitos

destes estão diretamente ligados a doenças, cancro inclusive.

41

Page 62: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

O vírus Encephalomyocarditis é um pequeno vírus de non-enveloped single-strand ARN, co-

nhecido por causar miocardites, encefalites, doenças neurológicas, distúrbios reprodutivos e dia-

betes em diversas espécies de mamíferos [eLBK 1].

O vírus Abelson murine leukemia virus é um é um retro-vírus (Classe VI) usado para induzir a

transformação de células linfóides murinas. Como um retro-vírus, possui um genoma de ARN de

sentido positivo e single-strand que se replica por via de um intermediário de ADN mediado por

uma transcriptase reversa. Este vírus é um dos responsáveis pela causa de um tipo de leucemia

que não envolve o timo [eLSR70].

O Murine osteosarcoma virus é responsável por tumores ósseos, e está diretamente ligado ao

Abelson murine leukemia virus analisado anteriormente.

O Hepatitis C virus genotype 2 causa a doença Hepatite C tipo 2, a qual afeta sobretudo o fí-

gado. Esta doença é curável em certos casos (tipo 2), mas a infeção crónica pode ter consequências

graves como cirrose, falha do fígado e cancro do mesmo [FN15].

Amostra B

Na Figura 4.2 é possível identificar as bactérias e vírus mapeados para a amostra, e na Tabela

4.8 estão os detalhes das bactérias mais mapeadas.

Figura 4.2: Gráficos representativos do mapeamento da amostra B nos genomas bacteriano e viral

Na Tabela 4.8 está representada a bactéria Bacteroides fragilis YCH46 DNA, mencionada an-

teriormente com 296 reads e um RPKM de 14.

42

Page 63: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

Tabela 4.8: Resultados do mapeamento da amostra B no genoma bacteriano, sendo que chr cor-responde a chromosome

Bactéria Comprimento(bp)

Número de reads(bp) RPKM

Bacteroides fragilis YCH46 DNA 5277274 296 14Azotobacter vinelandii CA 5366370 238 11

Chelativorans sp. BNC1 chr 4412446 149 7Azorhizobium caulinodans ORS 571 chr 5369772 143 7

Bacteroides helcogenes P 36-108 chr 3998906 62 3Caulobacter segnis ATCC 21756 chr 4655622 52 2Gamma proteobacterium HdN1 chr 4587455 47 2

Um dado importante que se pode deduzir é que tanto na amostra A como amostra B as bac-

térias Bacteroides fragilis YCH46 DNA, Azotobacter vinelandii CA, Chelativorans sp. BNC1 ch-

romosome, Azorhizobium caulinodans ORS 571 chromosome e Gamma proteobacterium HdN1

chromosome existem com um número de reads superior a 40.

Tabela 4.9: Resultados do mapeamento da amostra B no genoma viral

Vírus Comprimento(bp)

Número de reads(bp) RPKM

Human herpesvirus 4 complete wild type genome 171823 923 45Murine osteosarcoma virus 3811 448 22Encephalomyocarditis virus 7835 422 20Hepatitis C virus genotype 2 9711 328 16

Pandoravirus salinus 2473870 168 8Abelson murine leukemia virus 5894 154 7

Pestivirus Giraffe-1 12602 154 7Bovine viral diarrhea virus 1 12573 131 6

Na Tabela 4.9 o vírus mais relevante é o Human herpesvirus 4 complete wild type genome

(vírus relacionado com a herpes) com 923 reads e 45 RPKM, valor bastante mais alto que os

outros vírus e bactérias mapeados em ambas as amostras. Não obstante este vírus, é de notar que

todos os outros vírus encontrados na Tabela 4.9 existem na Tabela 4.7, e que em ambas têm um

número considerável de reads.

4.2 Amostras de HIV

4.2.1 Análise

Na Tabela 4.10 estão especificadas os detalhes inicias das duas amostras a serem testadas, uma

com HIV negativo e outra com HIV positivo. A análise feita às amostras de HIV têm o mesmo

43

Page 64: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

modus operandi da Secção 4.1.

Tabela 4.10: Especificações das amostras de HIV

Amostra Tamanho Inicial(GB)

Número de reads(bp)

HIV negativo 2.4 20229554HIV positivo 1.3 10891241

Mapeamento contra o genoma humano

Os resultados do mapeamento contra o genoma humano de referência (grCh38) usando a ferra-

menta Bowtie são visíveis Tabela 4.11.

Tabela 4.11: Resultados do mapeamento das amostras de HIV contra o genoma humano

Amostra Mapeamento Número de reads(bp)

Tamanho(MB)

Tempo(min)

HIV negativoMapeados 19472095 2355

36Não Mapeados 757459 91

HIV positivoMapeados 9205991 1126

24Não Mapeados 1685250 204

Mapeamento contra o genoma bacteriano e viral

Os resultados do mapeamento contra os genomas bacteriano e viral de referência com recurso

à ferramenta Bowtie são visíveis na Tabela 4.12.

Tabela 4.12: Resultados do mapeamento das amostras de HIV contra os genomas viral e bacteriano

Amostra Genoma Mapeamento Número de reads(bp)

Tamanho(kB)

Tempo(seg)

HIV negativoBacteriano

Mapeados 32735 3788149

Não Mapeados 724724 89088

ViralMapeados 1665 173

151Não Mapeados 755794 92160

HIV positivoBacteriano

Mapeados 95181 11264344

Não Mapeados 1590069 197632

ViralMapeados 12500 1433

220Não Mapeados 1672750 206848

44

Page 65: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

Alinhamento contra o genoma bacteriano e viral

Na Tabela 4.13 são apresentados os resultados do alinhamento das amostras contra os geno-

mas bacteriano e viral de referência.

Tabela 4.13: Resultados do alinhamento das amostras de HIV contra os genomas viral e bacteriano

Amostra GenomaNúmero de

reads(bp)

Reads alinhadas1 vez(bp)

Reads alinhadas> 1 vez

(bp)

HIV negativoBacteriano 32735 12990 (39,68%) 19745 (60,32%)

Viral 1665 1035 (62.16%) 630 (37,84%)

HIV positivoBacteriano 95181 24756 (26,01%) 70425 (73,99%)

Viral 12500 9601 (76,81%) 2899 (23,19%)

4.2.2 Resultados

Amostra de HIV Negativo

Na Figura 4.3 é possível identificar as bactérias e vírus mapeados para a amostra. Na Tabela

4.14 estão os detalhes das bactérias mais mapeadas e na Tabela 4.15 estão os detalhes dos vírus.

Como o tamanho de ambas as amostras de HIV é menor e o número de elementos patogénicos

mapeados é elevado, o RPKM tende a ser maior do que para as amostras A e B apresentadas

anteriormente.

Tabela 4.14: Resultados do mapeamento da amostra de HIV negativo no genoma bacteriano, sendoque chr corresponde a chromosome

Bactéria Comprimento(bp)

Número de reads(bp) RPKM

Alteromonas macleodii str. ’Ionian Sea U8’ 4395035 16179 44431Achromobacter xylosoxidansNBRC 15126 = ATCC 27061

6683584 3659 10048

Glaciecola psychrophila 170 5413691 514 1411Kitasatospora setae KM-6054 8783278 487 1337

Actinoplanes missouriensis 431 8773466 365 1002Candidatus Accumulibacter phosphatis

clade IIA str. UW-1 chr5058518 311 854

Herminiimonas arsenicoxydans chr 3424307 261 716

Tanto a Alteromonas macleodii str. ’Ionian Sea U8’ como Achromobacter xylosoxidans NBRC

45

Page 66: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

Figura 4.3: Gráficos representativos do mapeamento da amostra de HIV negativo nos genomasbacteriano e viral

15126 = ATCC 27061 são proteobactérias (filo composto por bactérias gram-negativas5 que é defi-

nido principalmente pela sequência genética 16S de ARN ribossômico). O organismo Candidatus

Accumulibacter phosphatis clade IIA str. UW-1 chr fornece informações sobre as proteínas envol-

vidas na acumulação de polifosfatos ao organismo.

Tabela 4.15: Resultados do mapeamento da amostra de HIV negativo no genoma viral

Vírus Comprimento(bp)

Número de reads(bp) RPKM

Baboon endogenous virusstrain M7 proviral DNA

8507 83 227

Human T-lymphotropic virus 2 8952 69 189Simian T-lymphotropic virus 2 8855 59 162

RD114 retrovirus 8406 47 129

O Vírus Linfotrópico de Células T Humanas Tipo 2, diretamente relacionado com o vírus do

Tipo 1, é um retro-vírus que tem sido implicado em vários tipos de doenças, incluindo linfoma

de células, mielopatia associada ao HTLV-I6, uveíte e outras doenças. Acredita-se que cerca de

5Técnica de Gram6Human T-Lymphotropic Virus 1

46

Page 67: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

1% a 5% das pessoas infetadas por este vírus desenvolvam cancro durante suas vidas [KV07]. O

Baboon endogenous virus está diretamente ligado ao Vírus Linfotrópico de Células T Humanas

Tipo 2.

Amostra de HIV Positivo

Na Figura 4.4 é possível identificar as bactérias e vírus mapeados para a amostra. Na Tabela

4.16 estão os detalhes das bactérias mais mapeadas e na Tabela 4.17 estão os detalhes dos vírus.

Figura 4.4: Gráficos representativos do mapeamento da amostra de HIV positivo nos genomasbacteriano e viral

Na Tabela 4.16 podemos encontrar as mesmas proteobactérias que na amostra de HIV nega-

tivo, com um valor de RPKM aproximado. A principal distinção neste caso são as bactérias de

Legionella, as quais vivem naturalmente em ambientes aquáticos mas podem alojar-se nos pul-

mões provocando uma pneumonia grave e eventualmente a morte.

Na Tabela 4.17 o principal destaque vai para o Human immunodeficiency virus 1, lentivírus7

responsável pela imunodeficiência humana, condição de deterioração progressiva do sistema imu-

nitário que propicia o desenvolvimento de infeções oportunistas e cancros potencialmente mortais.

Com um número de 5283 e um RPKM de 25529, pode-se concluir que este vírus é bastante abun-

dante na amostra.

7 vírus com longo período de incubação associados a doenças neurológicas e imunossupressoras

47

Page 68: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Casos de Estudo

Tabela 4.16: Resultados do mapeamento da amostra de HIV positivo no genoma bacteriano, sendoque chr corresponde a chromosome

Bactéria Comprimento(bp)

Número de reads(bp) RPKM

Alteromonas macleodii str. ’Ionian Sea U8’ 4395035 10911 52727Achromobacter xylosoxidansNBRC 15126 = ATCC 27061

6683584 1685 8142

Bdellovibrio bacteriovorus HD100 3782950 1666 8050Cylindrospermum stagnale PCC 7417 7003560 1443 6973

Legionella pneumophila subsp.pneumophila LPE509 chr

3434224 1328 6417

Legionella longbeachae NSW150 chr 4077332 1292 6243Dichelobacter nodosus VCS1703A chr 1389350 1289 6229

Tabela 4.17: Resultados do mapeamento da amostra de HIV positivo no genoma viral

Vírus Comprimento(bp)

Número de reads(bp) RPKM

Human immunodeficiency virus 1 9181 5283 25529Bacillus phage G 497513 590 2851

Shamonda virus N and NSs genes 927 225 1087

4.3 Sumário do Capítulo

A análise de resultados demonstrada neste capítulo procura responder ao problema desta dis-

sertação, que é a identificação de elementos patogénicos em células humanas cancerígenas.

Os casos de estudo utilizados ilustram a utilidade da plataforma desenvolvida. Através das

tabelas e gráficos é fácil a um patologista ver quais os vírus/bactérias mais expressos e avaliar a

sua perigosidade.

Assim sendo, com a realização da análise destes dois testes de estudo procuramos não só

para a validação da solução, mas também a exemplificação das funcionalidades da plataforma

desenvolvida.

48

Page 69: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Capítulo 5

Conclusões e Trabalho Futuro

Neste capítulo são apresentadas as conclusões retiradas ao longo do desenvolvimento do pro-

jeto e mencionadas algumas previsões de trabalho futuro.

5.1 Conclusões

Este projeto culminou com a implementação de uma plataforma Web para a análise de sequên-

cias genómicas, o genomeFactory, que visa a facilitar o trabalho de investigadores e biólogos mo-

leculares. Para tal foi necessário desenvolver uma plataforma dedicada a este tipo de estudo, tendo

em conta os recursos disponíveis e o software atual. A plataforma permite alinhar sequenciar tanto

genoma humano como genomas de vírus e bactérias. O objetivo é constituir uma base de dados

com as assinaturas virais e bacterianas de indivíduos saudáveis e com determinadas doenças de

origem vírica ou bacteriana e usar Machine Learning para prever novos casos descritos pelas suas

assinaturas virais e bacterianas.

Esta plataforma permite a criação de projetos, upload, download, conversão e análise de fi-

cheiros sendo apresentada uma interface Web bastante simples e intuitiva de forma a que qualquer

utilizador a possa usar independentemente do conhecimento informático. Os gráficos e tabelas

apresentados para cada análise permitem identificar com facilidade a distribuição da carga viral/-

bacteriana de modo a avaliar a sua perigosidade. A plataforma também permite a utilização de

genomas de referência e o mapeamento e alinhamento de sequências tendo estes índices como

base, sendo versátil o suficiente para a análise de outras espécies para além de Homo Sapiens e de

outros elementos que não os bacterianos e virais. Com isto esperamos que esta plataforma possa

ser uma mais valia no estudo do impacto de elementos patogénicos na origem do cancro e na sua

prevenção.

Não obstante o facto de os principais objetivos desta dissertação terem sido atingidos com o

desenvolvimento do projeto, há sempre aspetos e funcionalidades que podem ser melhorados ou

implementados.

49

Page 70: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Conclusões e Trabalho Futuro

5.2 Trabalho Futuro

Como foi referido na Secção 5.1 há aspetos que podem ser melhorados e funcionalidades que

podem ser implementadas numa futura continuação de desenvolvimento da plataforma:

• Implementar mais ferramentas - para esta dissertação foram criados vários containers

de ferramentas para o Docker, mas nem todos foram usados para a plataforma. No futuro

a implementação destas ferramentas pode tornar a plataforma mais útil e versátil para os

utilizadores.

• Adicionar repositórios de genes e proteínas - atualmente existem bastantes repositórios

online relacionados com genes como o Ensembl, KEGG e GenBank. Seria um grande up-

grade poder retirar informação destes repositórios para usar diretamente na plataforma.

• Adicionar técnicas de Data Mining - o uso de Data Mining para verificar a existência de

correlações entre genes e elementos de uma sequência tem muito a oferecer aos utilizadores.

A utilização de técnicas como clustering e algoritmos de Machine Learning usando modelos

preditivos e probabilísticos seria uma funcionalidade extra com bastante peso na análise de

resultados.

A principal razão destas funcionalidades não terem sido implementadas na plataforma deve-se

ao facto de não terem sido definidas nem consideradas prioridades inicialmente. Como não são

funcionalidades necessárias ao funcionamento base da plataforma, funcionam como funcionalida-

des extra que aumentariam o grau de utilidade da plataforma para o utilizador.

50

Page 71: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Referências

[AD13] Felix Schlesinger JorgDrenkow-Chris Zaleski Sonali Jha PhilippeBatut MarkChais-son e Thomas R. Gingeras Alexander Dobin, Carrie A. Davis. Star: ultrafast universalrna-seq aligner. Bioinformatics, 29:15–21, 2013. doi:10.1093/bioinformatics/bts635.

[AG00] S. Wessler e S. Carroll A. Griffiths. Introdução à Genética. Grupo Gen - GuanabaraKoogan, 10a edição edition, 2000.

[BL09] M. Pop e S. Salzberg B. Langmead, C. Trapnell. Ultrafast e memory-efficient align-ment of short dna sequences to the human genome. Genome Biology, 10(3):R25,2009. doi:10.1186/gb-2009-10-3-r25.

[CT09] Lior Pachter e Steven L Salzberg Cole Trapnell. Tophat: discovering splice junctionswith rna-seq. Bioinformatics, page 25(9), 2009. doi:10.1093/bioinformatics/btp120.

[Dea95] John Deacon. Model-view-controller (mvc) architecture. Computer Systems Deve-lopment, 1995. doi:10.1007/978-1-4302-5251-1_4.

[Dow09] Allen B. Downey. Python for Software Design: How to Think like a Computer Scien-tist. Cambridge University Press, 2009.

[eDP 1] Armando J. Pinho e Diogo Pratas. Mfcompress: a compression toolfor fasta and multi-fasta data. Bioinformatics, 30:117–118, 2014 Jan 1.doi:10.1093/bioinformatics/btt594.

[eLBK 1] Margot Carocci e Labib Bakkali-Kassimi. The encephalomyocarditis virus. Viru-lence, 3:351–367, 2012 Jun 1. doi:10.4161/viru.20573.

[eLSR70] Herbert T. Abelson e Louise S. Rabstein. Lymphosarcoma: Virus-induced thymic-independent disease in mice. Published August 1970. URL: http://cancerres.aacrjournals.org/content/30/8/2213.long.

[eMPW99] Walter P Blackstock e Malcolm P Weir. Proteomics: quantitative e physical map-ping of cellular proteins. Trends in Biotechnology, 17:121–127, March 1 1999.doi:10.1016/S0167-7799(98)01245-1.

[eSM11] D. Huson e S. Mitra. Comparative Metagenome Analysis Using MEGAN. Handbookof Molecular Microbial Ecology I, 2011. doi:10.1002/9781118010518.ch39.

[FN15] Ghulam Mujtabab e Shumaila Noreenc Faisal Nouroza, Sidra Shaheena. An overviewon hepatitis c virus genotypes and its control. Egyptian Journal of Medical HumanGenetics, 16:291–298, October 2015. doi:10.1016/j.ejmhg.2015.05.003.

51

Page 72: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

REFERÊNCIAS

[HL15] Alec Wysoker Tim Fennell Jue Ruan Nils Homer Gabor Marth Goncalo Abe-casis e Richard Durbin Heng Li, Bob Handsaker. The sequence alignment/-map format and samtools. Bioinformatics, 25:2078–2079, 2009 Aug 15.doi:10.1093/bioinformatics/btp352.

[KV07] Sonia Van Dooren Anne-Mieke Vandamme Guido Vanham e Eduardo Gotuzzo Kris-tien Verdonck, Elsa González. Human t-lymphotropic virus 1: recent knowledgeabout an ancient infection. The Lancet: Infectious Diseases, 7:266–281, April 2007.doi:10.1016/S1473-3099(07)70081-6.

[Mer14] Dirk Merkel. Docker: lightweight linux containers for consistent development anddeployment. Linux Journal, 2014(2), March 2014. URL: https://dl.acm.org/citation.cfm?id=2600241.

[MISa] Angularjs. Disponível em https://angularjs.org/, acedido a última vez em25 de Junho 2018.

[MISb] Bootstrap. Disponível em https://getbootstrap.com/, acedido a última vezem 25 de Junho 2018.

[MISc] Javascript. Disponível em https://www.javascript.com/, acedido a últimavez em 25 de Junho 2018.

[MISd] Nodejs. Disponível em https://nodejs.org/en/, acedido a última vez em 25de Junho 2018.

[MISe] Overview of docker hub. Disponível em https://docs.docker.com/docker-hub/, acedido a última vez em 28 de Maio 2018.

[MISf] Python. Disponível em https://python.org/, acedido a última vez em 25 deJunho 2018.

[MISg] The secure shell (ssh) authentication protocol. Disponível em https://tools.ietf.org/pdf/rfc4252.pdf, acedido a última vez em 19 de Maio 2018.

[MISh] Sepsis and cancer. Disponível em https://www.sepsis.org/sepsis-and/cancer/, acedido a última vez em 23 de Junho 2018.

[MISi] Sqlite. Disponível em https://www.sqlite.org/about.html, acedido a úl-tima vez em 25 de Junho 2018.

[MISj] What is docker. Disponível em https://www.redhat.com/en/topics/containers/what-is-docker, acedido a última vez em 15 de Junho 2018.

[Mou07] David W. Mount. Sequence database searching for similar sequences. Bioinformatics:Sequence e Genome Analysis, page Chapter 6, 2007. doi:10.1101/pdb.top17.

[PJACpr] Naohisa Goto Michael L. Heuer e Peter M. Rice Peter J. A. Cock, ChristopherJ. Fields. The sanger fastq file format for sequences with quality scores, andthe solexa/illumina fastq variants. Nucleic Acids Res, 38:1767–1771, 2010 Apr.doi:10.1093/nar/gkp1137.

[Sha06] S. Shabalina. A periodic pattern of mrna secondary structure created by the geneticcode. Nucleic Acids Research, 34(8):2428–2437, 2006. doi:10.1093/nar/gkl287.

52

Page 73: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

REFERÊNCIAS

[ZW09] M. Gerstein e M. Snyder Z. Wang. Rna-seq: a revolutionary tool for transcriptomics.Nature Reviews Genetics, 10(1):57–63, 2009. doi:10.1038/nrg2484.

53

Page 74: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

REFERÊNCIAS

54

Page 75: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Anexo A

Guião de Utilizador

Este guião de utilizador tem como princípio a exemplificação dos procedimentos relativos ao

serviço web, desde o registo do utilizador na plataforma até à visualização de resultados.

A.1 Página Inicial

Na página inicial da plataforma, Figura A.1, é visível uma breve descrição da plataforma. É

também a partir desta página que se acede ao registo e login de utilizadores para se obter acesso

ao resto da plataforma.

Figura A.1: Página inicial da plataforma online

A.2 Registo

Na Figura A.2 é apresentado o formulário de registo na plataforma (para se chegar a esta página

é necessário carregar no botão Sign Up no canto superior direito) com os seguintes campos:

55

Page 76: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Guião de Utilizador

• Firstname - primeiro nome do utilizador.

• lastname - último nome do utilizador.

• Email - email do utilizador, necessário para o login na plataforma.

• Password - password necessária para o login na plataforma.

Figura A.2: Formulário de registo na plataforma

A.3 Login

A Figura A.3 representa o login na plataforma, necessário para o acesso à totalidade da pla-

taforma e respetivas funcionalidades. Para se fazer o login com sucesso é necessário fornecer um

email e password válidos e registados na plataforma.

Figura A.3: Formulário de login na plataforma

56

Page 77: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Guião de Utilizador

A.4 Projetos

Na Figura A.4 é possível ver os projetos do utilizador, sendo também possível adicionar novos

projetos. Os projetos de cor verde são projetos em aberto(Open) e os de cor vermelha são projetos

dados como terminados(Closed).

Figura A.4: Vista geral dos projetos do utilizador

A.5 Novo Projeto

Na Figura A.5 apresenta-se o formulário para a criação de um novo projeto, nos quais existem

os seguintes campos:

• Nome - nome atribuído ao projeto, obrigatório.

• Descrição - descrição do projeto, obrigatório.

• Colaboradores - email dos utilizadores que serão adicionados como colaboradores ao pro-

jeto, opcional.

A.6 Projeto

A página de projeto é constituída por três partes:

• Detalhes - informações gerais do projeto constituídas pelo nome, descrição, estado, data de

criação e lista de colaboradores.

• Ficheiros - a lista de ficheiros de input e de output.

• Colaboradores - opção de adicionar colaboradores a partir do seu endereço de email.

Na Figura A.6 são apresentados a primeira parte, os detalhes, e os ficheiros de input e respeti-

vas operações disponíveis, as quais dependem do tipo de ficheiro. Também é visível uma lista de

cinco separadores, os quais representam as cinco fases de um determinado projeto:

57

Page 78: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Guião de Utilizador

Figura A.5: Formulário para a criação de um novo projeto

Figura A.6: Detalhes do projeto e lista de ficheiros de input na secção Pre-Processing

• Pre-Processing - permite a conversão de ficheiros FASTA para FASTQ e vice-versa, SAM

para BAM e vice-versa, BAM para FASTA e FASTQ, indexação de ficheiros FASTA e

BAM, sorting de ficheiros BAM e a análise de ficheiros FASTQ, SAM e BAM com recurso

à ferramenta FastQC, referida anteriormente na secção 2.3.3.

• Initial Build - permite a criação de índices de referência a partir de ficheiros FASTA e o

mapeamento de sequências no formato FASTQ contra o genoma de referência humano, ge-

noma de referência viral, genoma de referência bacteriano e genomas de referência criados

58

Page 79: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Guião de Utilizador

pelo utilizador, gerando dois ficheiros FASTQ, um com as sequências mapeadas e o outro

com as sequências não mapeadas.

• Middle Phase - permite a conversão de ficheiros FASTA para FASTQ e vice-versa, SAM

para BAM e vice-versa, BAM para FASTA e FASTQ, indexação de ficheiros FASTA e

BAM, sorting de ficheiros BAM e a análise de ficheiros FASTQ, SAM e BAM com recurso

à ferramenta FastQC.

• Final Run - permite a criação de índices de referência a partir de ficheiros FASTA e o ma-

peamento e alinhamento de sequências no formato FASTQ contra o genoma de referência

humano, genoma de referência viral, genoma de referência bacteriano e genomas de refe-

rência criados pelo utilizador, criando um ficheiros SAM.

• End Phase - permite a conversão de ficheiros FASTA para FASTQ e vice-versa, SAM para

BAM e vice-versa, BAM para FASTA e FASTQ, indexação de ficheiros FASTA e BAM,

sorting de ficheiros BAM e a análise de ficheiros FASTQ, SAM e BAM com recurso à

ferramenta FastQC.

Houve esta separação em cinco fases a pedido do Professor Rui Camacho que achou necessário

permitir aos utilizadores uma maior liberdade na gestão de ficheiros.

Figura A.7: Formulário de upload de um ficheiro

No canto inferior esquerdo da Figura A.6 é visível um botão de upload de ficheiro. Esse botão

abre uma classe modal, Figura A.7, com o seguinte formulário:

• Ficheiro - selecionar o ficheiro que se quer inserir na plataforma.

59

Page 80: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Guião de Utilizador

• Fase - escolher a fase na qual o ficheiro se insere (uma das cinco fases mencionadas anteri-

ormente).

• Descrição - descrição do ficheiro.

Na Figura A.8 são visíveis os ficheiros de output e a terceira parte, adicionar colaborado-

res(Add User). Na parte dos ficheiros existem botões tanto para enviar os ficheiros gerados para

os ficheiros de input(caso seja necessário por exemplo converter um ficheiro SAM para BAM, e

o BAM resultante para FASTQ) e para enviar os ficheiros gerados para a fase seguinte(enviar o

FASTQ gerado na fase Pre-Processing para a fase Initial Build para ser mapeado com genomas

de referência). Também é visível nos ficheiros gerados(output) que na área da descrição aparece o

nome do ficheiro inicial e o nome da ferramenta usada na sua criação.

Tanto na parte dos ficheiros de input como nos de output existem botões para eliminar e fazer

o download de um determinado ficheiro, como é visível em ambas as Figuras A.6 e A.8

Figura A.8: Lista de ficheiros de output na secção Pre-Processing

A.7 Visualização do Mapeamento Viral e Bacteriano

Na página de resultados, Figura A.9, existe na parte lateral esquerda um breve sumário do pro-

cesso de mapeamento e opção de pesquisa de elementos patogénicos segundo vários parâmetros

como string, total de reads, vírus e bactérias. Também existem gráficos disponíveis na mesma

página para todos os elementos encontrados (bacterianos e virais) como é demonstrado na Figura

A.10.

60

Page 81: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Guião de Utilizador

Figura A.9: Visualização dos resultados da análise de amostras

Figura A.10: Gráfico de todas as reads de elementos bacterianos de uma dada amostra

Para cada elemento na Figura A.9 existe um botão(Choose action) que permite a visualização

da respetiva sequência no site do NCBI e, o gráfico especifico desse dado elemento.

O gráfico específico, Figura A.11 contém os reads mapeados ao longo do genoma do elemento

patogénico visíveis com a linha azul, e a barra a preto e vermelho representa as posições de cada

gene.

61

Page 82: Pathogen identification in Human Cancer cells · Introdução Em 2012 surgiram mais de 14 milhões de novos casos de cancro e mais de 8 milhões de pessoas morreram no mundo inteiro

Guião de Utilizador

Figura A.11: Gráfico do resultado do mapeamento da amostra para cada elemento patogénico

62