Banco de Dados Biológicos conceitos básicos, indexação, VSTree

Documentos relacionados
Banco de Dados Biológicos

Tipos de Dados Biológicos e Multimídia

Bioinformática. Licenciaturas em Biologia, Bioquímica, Biotecnologia, Engenharia Biológica. João Varela

Bioinformática aplicada ao estudo e análise de Genes e Genomas Aula Teórico e Prá/ca

Busca em banco de dados

BANCO DE DADOS BIOLÓGICOS Aula 11

Lista de Exercícios. Av. Trabalhador São-carlense, 400. centro. São Carlos - SP cep Brasil.

Compressão de Textos. Introdução. Introdução. Introdução. O volume de informação textual disponível on-line é imenso:

Aula 15 Árvores Digitais / Trie

IBM1029 Introdução à Bioinformática. O Início da Bioinformática 27/03/2017. Aula 2. O Início. Bioionformática: definição

Módulo 5. Arquitetura do SQL Server. Estruturas de Armazenamento. Armazenamento físico e lógico. Páginas

ESTRUTURA DE DADOS. Árvores, árvores binárias e percursos. Cristina Boeres

Hashing Externo. SCC-503 Algoritmos e Estruturas de Dados II. Thiago A. S. Pardo M.C.F. de Oliveira Cristina Ciferri

Banco de Dados. Introdução. Profa. Flávia Cristina Bernardini

Bioinformática e Genética Animal. Pâmela A. Alexandre Doutoranda

PYTHON - Strings. Introdução à Programação SI1

Matemática Discreta 10

Turing to Norma, uma ferramenta para auxiliar o estudo da equivalência entre Máquina de Turing e Máquina Norma

BioJava. Análise e breve comparação com outras Bio* frameworks. Rui Marques. Bioinformática - MIERSI. Faculdade de Ciências da Universidade do Porto

Modelagem Multidimensional - Nível Lógico -

Linguagens Formais e Autômatos

Introdução à Programação Aula 02. Prof. Max Santana Rolemberg Farias Colegiado de Engenharia de Computação

Revisando Banco de Dados. Modelo Relacional

Introdução à Programação Estruturada Parte 3. Material da Prof. Ana Eliza

Notação Z - Predicados. Formas de montar predicados em Z

Compactação de Dados. Fonte de consulta: Szwarcfiter, J.; Markezon, L. Estruturas de Dados e seus Algoritmos, 3a. ed. LTC. Seção 12.5 em diante.

Tipos de Índices. Profa. Dra. Cristina Dutra de Aguiar Ciferri

UNIVERSIDADE FEDERAL RURAL DO SEMI-ÁRIDO CURSO: CIÊNCIA DA COMPUTAÇÃO. Prof.ª Danielle Casillo

Adriano Maranhão PROFISSIONAIS E ATIVIDADES ENVOLVIDAS EM UM SGBD

Estruturas de Dados. Prof.: Carlos Alberto Página da Disciplina:

GENÉTICA NA SALA DE AULA: ESTRATÉGIAS DE ENSINO E APRENDIZAGEM Departamento de Genética - Instituto de Biologia UFRJ

Aula 01 Conceito de Banco de Dados e SGBD

Computação Gráfica. Representação e Modelagem

Curso Básico de Programação Aula 11. Revisão Aula Anterior Laços de Repetição While; Do-While; For.

A matemática e o genoma. Resumo

TGR BCC Representação Computacional de Grafos. Prof. Ricardo José Pfitscher

Teoria da Computação. Máquinas Universais Máquina com Pilhas

CURSO BÁSICO DE PROGRAMAÇÃO AULA 11. Revisão Aula Anterior Vetores Cadeia de Caracteres

Bioinformática Aplicada ao Estudo e Análise de Genes e Genomas. Prof. Dr. Alessandro de M. Varani Dep. de Tecnologia - UNESP, FCAV

GRAFOS. Prof. André Backes. Como representar um conjunto de objetos e as suas relações?

Linguagens Regulares. Prof. Daniel Oliveira

ESTRUTURA DE DADOS. Arvore Binária Jose. Arvore Ternaria Direção

Aula 01 Revisão Geral Banco de Dados I Conceito de Banco de Dados e SGBD

DEFINIÇÕES EM EPIDEMIOLOGIA MOLECULAR E CONCEITOS BÁSICOS EM BIOLOGIA MOLECULAR

Matéria Introdutória. Banco de Dados Profa. Dra. Cristina Dutra de Aguiar Ciferri

Algoritmos. Algoritmos e Linguagem de Programação - Prof Carlos Vetorazzi

AULA 4 - FLUXOGRAMAS PARTE 1 Noções sobre a ferramenta Flowgorithm para construção de fluxogramas

Árvores. N-árias, Binárias, Busca. Vanessa Maia Berny Mestrado em Ciência da Computação

04 Recursão SCC201/501 - Introdução à Ciência de Computação II

Introdução a Bioinformática Curso de Verão Nivelamento na área de Biológicas

Árvores. SCC-214 Projeto de Algoritmos. Thiago A. S. Pardo. Um nó após o outro, adjacentes Sem relações hierárquicas entre os nós, em geral

Chaves. Acesso a Registros. Chaves Primária e Secundária. Chaves Primária e Secundária

SUMÁRIO. Fundamentos Árvores Binárias Árvores Binárias de Busca

Algoritmo e Programação Matemática

Arquitetura de um Ambiente de Data Warehousing

CÉLULAS 2/14/2017 FACULDADE EDUCACIONAL DE MEDIANEIRA COMPOSIÇÃO MOLECULAR DAS CÉLULAS COMPOSIÇÃO QUÍMICA DAS CÉLULAS COMPOSIÇÃO MOLECULAR DAS CÉLULAS

Estruturas de Dados Apresentação

Trabalho Prático. Descrição Considere os seguintes dados a respeito de uma pessoa:

Conceitos gerais Terminologia Forma de Representação de Árvores Árvores Binárias

SCC Algoritmos e Estruturas de Dados II. 6ª lista de exercícios

Árvores-B + SCC-503 Algoritmos e Estruturas de Dados II. Thiago A. S. Pardo Cristina Dutra de Aguiar Ciferri

AULA TEMÁTICA. DNA: uma análise bioquímica

Raiz, filho, pai, irmão, ancestral, descendente, folha.

Ácidos nucleicos (DNA e RNA) e os genes

Banco de Dados. Banco de Dados

Transcrição:

SCC0141 Bancos de Dados e suas Aplicações Banco de Dados Biológicos conceitos básicos, indexação, VSTree Felipe Alves da Louza Profª Cristina D. A. Ciferri

Conteúdo Conceitos básicos Banco de dados biológicos (BDBs) Indexação VSTree 2

Bioinformática A bioinformática é uma área da ciência que utiliza métodos da biologia, da matemática e da computação para solucionar questões relevantes a partir de dados biológicos 3

Bioinformática Pesquisas nessa área incluem o desenvolvimento de métodos para armazenamento, recuperação e análise de dados biológicos 4

Dados biológicos Dados biológicos são dados ou medidas coletadas a partir de fontes biológicas São armazenados em banco de dados biológicos (BDBs) através de arquivos ou de SGBDs 5

Dados biológicos A quantidade de dados biológicos coletados e armazenados em BDBs e disponíveis para análise tem aumentado exponencialmente 6

Dados biológicos 7

Conteúdo Conceitos básicos Banco de dados biológicos (BDBs) Indexação VSTree 8

Banco de dados biológicos BDBs podem ser divididos em três categorias a partir do tipo e do conteúdo dos dados neles armazenados Primário Secundário Especializados 9

Banco de dados biológicos BDBs Primários: armazenam informações biológicas originais sequências de nucleotídeos ou de proteínas 10

Banco de dados biológicos BDBs Primários: Utilizam-se basicamente arquivos de tipo texto simples (e.g, tipo fasta) para armazenar essas informações. Dentre os principais BDBs primários destacam-se o GenBank, o EMBL e o DDBJ (Xiong, 2006). 11

Dados biológicos 12

Banco de dados biológicos BDBs Secundários: armazenam resultados de análises feitas a partir de dados primários a partir de sequências de nucleotídeos ou de proteínas armazenas em BDBs primários 13

Banco de dados biológicos BDBs Secundários: Dados são armazenados utilizando SGBDs O SWISS-Prot e o PIR (Protein Information Resources) são exemplos de BDBs secundários que armazenam informações referentes às proteínas, incluindo: anotações de funcionalidades estruturas tridimensionais e literatura associada 14

Dados biológicos 15

Banco de dados biológicos BDBs Especializados: são aqueles que atendem a um interesse particular de pesquisa. Dados são armazenados utilizando SGBDs ou arquivos Por exemplo, Flybase, HIV sequence database, e RDP (Ribossomal Database Project) são BDBs especializados para um particular organismo ou tipo de dado 16

Dados biológicos 17

Conteúdo Conceitos básicos Banco de dados biológicos (BDBs) Indexação VSTree 18

Consultas em BDBs Através de consultas por similaridade em BDBs pode-se responder perguntas como: 1. Qual parte do DNA é responsável por uma doença hereditária? 2. Quais genes do ser humano são parecidos com os do rato? 3. etc.. 19

Métodos de Acesso Problemas que envolvem buscas em banco de dados, na maioria das vezes, requerem como resposta apenas um subconjunto dos dados Dessa forma, a utilização de métodos de acesso visa reduzir o custo computacional destas buscas 20

Métodos de Acesso Um método de acesso (MA) é definido por: uma estrutura de dados, que pode ser armazenada em memória primária ou em memória secundária um conjunto de algoritmos, tais como construção, manipulação e busca, que são adaptados para essa estrutura de dados 21

Métodos de Acesso para BDBs Métodos de acesso para Banco de dados biológicos Primários (Sequências de Nucleotídeos): Nucleotídeos - adenina (A), citosina (C), timina (T) e guanina (G). Aminoácidos Estruturas 3D de Proteinas Identificação e anotação de Genes...

Métodos de Acesso para BDBs Métodos de acesso para Banco de dados biológicos Primários (Sequências de Nucleotídeos): ACATACACATTAGAGAATACA TACATGATAGAGAATACATAC ACATTAGAGAATACATACACA TTAGAGATGAAATACACATAA GAGAATACATACACATTTAAG GAATACATACACATTATAAGA

Métodos de Acesso para BDBs Métodos de acesso para Banco de dados biológicos Primários (Sequências de Nucleotídeos):... TGA ACATACACATTAGAGAATACA TACATGATAGAGAATACATAC ACATTAGAGAATACATACACA TTAGAGATGAAATACACATAA GAGAATACATACACATTTAAG GAATACATACACATTATAAGA

Métodos de Acesso para BDBs Métodos de acesso para Banco de dados biológicos Primários (Sequências de Nucleotídeos):... TGA ACATACACATTAGAGAATACA TACATGATAGAGAATACATAC ACATTAGAGAATACATACACA TTAGAGATGAAATACACATAA GAGAATACATACACATTTAAG GAATACATACACATTATAAGA

Dados biológicos Arquivo do tipo.fasta Um arquivo do tipo fasta possui na sua primeira linha um cabeçalho indicado pelo símbolo >. Este cabeçalho contém o nome da sequência armazenada e algumas informações extras separadas pelo símbolo. Cada linha da sequência é limitada a 68 caracteres. 26

Métodos de Acesso Existem vários trabalhos na literatura voltados à métodos de acesso para sequências de nucleotídeos Duas linhas estudadas: 1. Estruturas matriciais (MRS) 2. Árvores de sufixo 27

Métodos de Acesso A árvore de sufixo é um método de acesso utilizado por muitas aplicações que envolvem pesquisa em dados biológicos Sua estrutura permite que problemas que envolvem buscas por similaridade entre dados sejam resolvidos de forma eficiente 28

Sufixo e Prefixo Seja = {α 1, α 2,..., α n } um alfabeto com n caracteres Seja * um conjunto com todas as sequências que podem ser construídas a partir de 29

Sufixo e Prefixo Seja S Є * uma string com m caracteres, S = m Seja S[i:j] (1 i j m) uma substring entre (inclusive) o i-ésimo e j-ésimo caracteres de S Define-se a substring S[1:j] como um prefixo de S a substring S[i:m] como um sufixo de S 30

Exemplos S = AGT S = 3 Prefixos de S: S[1:1] = A S[1:2] = AG S[1:3] = AGT = S Sufixos de S: S[3:3] = T S[2:3] = GT S[1:3] = AGT = S 31

Árvore de Sufixo Seja S Є * uma string com m caracteres, ou seja S = m A árvore de sufixo Ts, é uma árvore com exatamente m folhas numeradas de 1 a m 32

Árvore de Sufixo Seja S Є * uma string com m caracteres, ou seja S = m A árvore de sufixo Ts, é uma árvore com exatamente m folhas numeradas de 1 a m S = AGAGAT S = 6 33

Árvore de Sufixo Cada nó interno, exceto a raiz, tem pelo menos 2 filhos S = AGAGAT 34

Árvore de Sufixo Cada aresta da árvore é rotulada com uma subsequência de S não vazia S = AGAGAT S[6:6] = T 35

Árvore de Sufixo Duas arestas que saiam do mesmo nó não podem ter seus rótulos começando com o mesmo caractere S = AGAGAT 36

Árvore de Sufixo Para cada folha i, a concatenação dos rótulos que estão no caminho da raiz até a folha i, forma o sufixo de S que começa na posição i S = AGAGAT S[3:6] = AGAT 37

Árvore de Sufixo Sufixos que possuem prefixos em comum fazem parte de uma mesma subárvore S = AGAGAT S[2:6] = GAGAT S[4:6] = GAT 38

Árvore de Sufixo Árvores prefixadas: S = TAGAGA$ P = A P = TA P = GA 39

Árvore de Sufixo No entanto as propriedades acima não garantem a existência de uma árvore de sufixo para qualquer string S O problema é que se um sufixo de S for prefixo de outro sufixo de S, então o caminho para esse sufixo pode terminar em um nó não folha 40

Árvore de Sufixo S = TAGAGA S[5:6] = GA S[3:6] = GAGA Esta não é uma árvore de sufixo 41

Árvore de Sufixo Este problema não acontece quando o último caractere de S não ocorre em nenhum outro ponto de S S = AGAGAT 42

Árvore de Sufixo Para solucionar este problema, adiciona-se a S um caractere terminal, que não pertença ao conjunto dos caracteres de, normalmente $ S = TAGAGA + $ = S = TAGAGA$ 43

Árvore de Sufixo Dessa forma nenhum sufixo de S será prefixo de outro sufixo de S S = TAGAGA$ 44

Algoritmo de Construção Trivial Inicialmente é criado uma aresta para representar o sufixo de maior tamanho Em seguida são adicionados os outros sufixos da string 45

Algoritmo de Construção Trivial A cada iteração, conforme necessário, as arestas são particionadas de forma a preservar a propriedade de não existir arestas que saiam do mesmo nó com prefixos comuns S[4:6] = AGA$ 46

Busca na árvore A busca por uma subsequência em uma árvore de sufixo é feita de forma simples e direta Uma vez que as arestas de um mesmo nó não compartilham prefixos comuns 47

Conteúdo Conceitos básicos Banco de dados biológicos (BDBs) Indexação VSTree 48

Visual SuffixTree 49

Visual SuffixTree Funcionalidades: Construção interativa a partir de uma string fornecida pelo usuário, a partir do algoritmo de construção trivial Busca interativa por uma substring fornecida pelo usuário Entre outras.. 50

Visual SuffixTree A ferramenta foi desenvolvida na linguagem JAVA Utiliza a biblioteca JGraph que é baseada na arquitetura MVC 51

SCC0141 Bancos de Dados e suas Aplicações FIM Felipe Alves da Louza Profª Cristina D. A. Ciferri