Curso de Verão 2012 - Bioinformática - IME-USP · •Introdução: –O que são bancos de dados?...

Preview:

Citation preview

Curso de Verão 2012 - Bioinformática

Bancos de Dados Biológicos Márcio K. Oikawa - UFABC

marcio.oikawa@ufabc.edu.br

Agenda

• Introdução: – O que são bancos de dados?

– Por que são importantes?

• Bancos de dados biológicos: – Como tratar dados biológicos?

– Padrões de armazenamento e processamento de dados.

– Problemas comuns em bancos de dados biológicos.

• Desafios e oportunidades em pesquisa de bancos de dados e Bioinformática.

Introdução

• Dados, informação e conhecimento

Os dados são elementos brutos, sem significado, desvinculados da realidade.

"observações sobre o estado do mundo". Davenport, 1998. “descrição elementar”. Turban, 2007.

As informações são dados com significado - resultado do encontro de uma situação de decisão com um conjunto de dados "São dados dotados de relevância e propósito" (Davenport, 1998). Dados organizados, com valor para o receptor (Turban, 2007)

Introdução

• Dados, informação e conhecimento

O conhecimento pode então ser considerado como a informação processada pelos indivíduos – entendimento, experiência, aprendizagem acumulada e prática.

o "conhecimento é a informação mais valiosa (...) é valiosa precisamente porque alguém deu à informação um contexto, um significado, uma interpretação (...)". Davenport (1998)

Introdução

• O que são bancos de dados?

– Qualquer conjunto organizado de dados.

– O termo “organização de dados” é relacionado ao planejamento de seu armazenamento, à sua confiabilidade e à sua utilização.

Exemplos de bancos de dados

• São exemplos de bancos de dados:

– Lista de supermercado;

– Lista de alunos matriculados em uma disciplina;

– Lista de preços de uma loja;

– Lista de sequencias de um organismo;

– Lista de remédios;

– Lista de músicas de um CD;

– ...

Introdução

• Por que é importante organizar dados?

– Como vimos antes, a organização está ligada essencialmente a três elementos:

• Armazenamento;

• Confiabilidade;

• Utilização.

Introdução

• Armazenamento de dados: – Garantir que seus dados estão protegidos e

guardados em local seguro;

• Confiabilidade: – Garantir que seus dados estão corretos e

coerentes;

• Utilização: – Garantir que você poderá usá-los facilmente

quando precisar.

Introdução

• Problemas:

– Também relacionados às três características de organização de dados:

• Armazenamento: os dados não estão em local seguro;

• Confiabilidade: os dados podem estar errados;

• Utilização: os dados não são fáceis de manipular e usar.

Pergunta que não quer calar: “- Por que alguém faria um banco de dados inseguro, duvidoso e difícil de usar? Isso realmente existe?”

Introdução

• Estudo de caso: planilhas eletrônicas:

Planilhas eletrônicas

• Planilhas eletrônicas são sistemas de software amplamente difundidos para visualização e manipulação de dados.

• São sistemas poderosos, permitindo a criação de gráficos, automatização de cálculos e programação.

• Auto-explicativas e de fácil aprendizagem para operações básicas.

Planilhas eletrônicas

• Muito usadas para organizar dados de forma geral;

• Podem importar e exportar diversos formatos, permitindo integração com outros sistemas de software.

Planilhas eletrônicas

• Problemas: – Não há verificação de tipos de dados;

– A programação em planilhas não é difícil e pouco portável;

– Os mecanismos de segurança são limitados;

– Não há como registrar o histórico de modificações;

– Embora possível, a integração dos dados da planilha com outros sistemas de software requer muito esforço de integração.

Planilhas eletrônicas

• Problemas:

– Não há formas fáceis de eliminar redundância;

– É difícil manter a consistência dos dados;

– Planilhas com recursos de programação (macros) são de difícil manutenção.

Planilhas eletrônicas

• A questão chave é não confundir dois perfis de tratamento de dados:

– Visualização e manipulação (ótima em planilhas);

– Armazenamento, segurança e compartilhamento (deficiente em planilhas).

Arquivos estruturados

• Além de planilhas, arquivos estruturados representam uma forma muito usada para armazenamento de dados;

• Veja exemplos de arquivos estruturados:

– Arquivos FASTA;

– Arquivos GenBank;

– Arquivos CSV;

– ...

Arquivos estruturados

• Arquivos FASTA

– 1ª linha com comentário

– Sequência (nucleotídeos ou aminoácidos)

> seq1 This is the description of my first sequence.

AGTACGTAGTAGCTGCTGCTACGTGCGCTAGCTAGTACGTCA

CGACGTAGATGCTAGCTGACTCGATGC

>gi|129295|sp|P01013|OVAX_CHICK GENE X PROTEIN

QIKDLLVSSSTDLDTTLVLVNAIYFKGMWKTAFNAEDTREMP

FHVTKQESKPVQMMCMNNSFNVATLPAEKMKILELPFASGDL

SMLVLLPDEVSDLERIEKTINFEKLTEWTNPNTMEKRRVKVY

LPQMKIEEKYNLTSVLMALGMTDLFIPSANLTGISSAESLKI

SQAVHGAFMELSEDGIEMAGSTGVIEDIKHSPESEQFRADHP

FLFLIKHNPTNTIVYFGRYWSP

Arquivos estruturados

• Arquivos GenBank

Arquivos estruturados

• Arquivos CSV (Comma Separated Values)

– Padrão usado para armazenar tabelas em arquivos texto;

– Reconhecido por quase todos os sistemas de planilhas eletrônicas.

Arquivos estruturados

• Problemas:

– Nem sempre é fácil automatizar o seu uso;

– Não é fácil pesquisar informações, normalmente demandando bastante esforço manual;

– Tem os mesmos problemas de segurança de planilhas eletrônicas.

Bancos de Dados Relacionais

• Bancos relacionais representam a maior parte das implementações em uso no mercado;

• Há muitas ferramentas muito bem sucedidas;

• Sistemas poderosos já foram construídos e encontram-se em produção;

• É capaz de eliminar alguns dos problemas que vimos anteriormente em planilhas.

Bancos de dados relacionais

• Considere o seguinte exemplo:

– Banco de dados acadêmico

Aluno N. USP Sexo Dt_nasc Disciplina Nota Faltas

Alan José 101222 M 01/01/1990 Fitopatologia 9,0 5

Alan José 101222 M 01/01/1990 Estatística 7,5 4

Ana Maria 304211 F 03/02/1991 Fitopatologia 9,5 0

Ana Maria 304211 F 03/02/1991 Estatística 8,5 0

Ana Maria 304211 F 03/02/1991 Biologia Celular 8,0 1

Antonio Jr. 331215 M 11/04/1989 Fitopatologia 6,7 4

Antonio Jr. 331215 M 11/04/1989 Biologia Celular 5,9 7

Bancos de dados relacionais

• Problemas:

– Redundância;

– Dados sem regras de controle de qualidade.

Aluno N. USP Sexo Dt_nasc Disciplina Nota Faltas

Alan José 101222 M 01/01/1990 Fitopatologia 9,0 5

Alan José 101222 M 01/01/1990 Estatística 7,5 4

Ana Maria 304211 F 03/02/1991 Fitopatologia 9,5 0

Ana Maria 304211 F 03/02/1991 Estatística 8,5 0

Ana Maria 304211 F 03/02/1991 Biologia Celular 8,0 1

Antonio Jr. 331215 M 11/04/1989 Fitopatologia 6,7 4

Antonio Jr. 331215 M 11/04/1989 Biologia Celular 5,9 7

Bancos de dados relacionais

• Passos para eliminar os problemas:

– Separar as tabelas em unidades lógicas;

Aluno N. USP Sexo Dt_nasc

Alan José 101222 M 01/01/1990

Alan José 101222 M 01/01/1990

Ana Maria 304211 F 03/02/1991

Ana Maria 304211 F 03/02/1991

Ana Maria 304211 F 03/02/1991

Antonio Jr. 331215 M 11/04/1989

Antonio Jr. 331215 M 11/04/1989

Disciplina Nota Faltas

Fitopatologia 9,0 5

Estatística 7,5 4

Fitopatologia 9,5 0

Estatística 8,5 0

Biologia Celular 8,0 1

Fitopatologia 6,7 4

Biologia Celular 5,9 7

Bancos de dados relacionais

• Passos para eliminar os problemas:

– Separar as tabelas em unidades lógicas;

– Elimina as redundâncias.

Aluno N. USP Sexo Dt_nasc

Alan José 101222 M 01/01/1990

Ana Maria 304211 F 03/02/1991

Antonio Jr. 331215 M 11/04/1989

Disciplina Nota Faltas

Fitopatologia 9,0 5

Estatística 7,5 4

Fitopatologia 9,5 0

Estatística 8,5 0

Biologia Celular 8,0 1

Fitopatologia 6,7 4

Biologia Celular 5,9 7

Bancos de dados relacionais

• Passos para eliminar os problemas:

– Cria o relacionamento entre as tabelas.

Aluno N. USP Sexo Dt_nasc

Alan José 101222 M 01/01/1990

Ana Maria 304211 F 03/02/1991

Antonio Jr. 331215 M 11/04/1989

N. USP Disciplina Nota Faltas

101222 Fitopatologia 9,0 5

101222 Estatística 7,5 4

304211 Fitopatologia 9,5 0

304211 Estatística 8,5 0

304211 Biologia Celular 8,0 1

331215 Fitopatologia 6,7 4

331215 Biologia Celular 5,9 7

Bancos de dados relacionais

• O que há de novo?

Aluno N. USP Sexo Dt_nasc

Alan José 101222 M 01/01/1990

Ana Maria 304211 F 03/02/1991

Antonio Jr. 331215 M 11/04/1989

N. USP Disciplina Nota Faltas

101222 Fitopatologia 9,0 5

101222 Estatística 7,5 4

304211 Fitopatologia 9,5 0

304211 Estatística 8,5 0

304211 Biologia Celular 8,0 1

331215 Fitopatologia 6,7 4

331215 Biologia Celular 5,9 7

Não há mais redundância

Posso exigir que o CPF seja único, prevenindo cadastramentos

errados.

Quem usa sistemas de bancos de dados?

Bancos de dados relacionais

• A maioria esmagadora das instituições utiliza bancos de dados relacionais, em todos os setores da sociedade: – Governos;

– Bancos;

– Escolas;

– Empresas;

– Sites de serviços;

– Etc.

Bancos de dados relacionais

• Alguns gerenciadores de bancos de dados relacionais:

Bancos de dados relacionais

• O que os bancos de dados relacionais oferecem?

– Segurança sobre os dados;

– Consistência;

– Velocidade;

– Flexibilidade e portabilidade para diferentes plataformas e aplicações.

Bancos de dados relacionais

• Segurança:

– Controle de acesso em nível de usuário (ou grupos de usuários);

– Os dados não são visíveis em arquivos texto, mas organizados em estruturas especiais que também melhoram o desempenho de consultas;

– Há muita flexibilidade na configuração de controle de acesso;

Bancos de dados relacionais

• Consistência:

– Todos os campos de tabelas tem associação forte com tipos de dados específicos;

– Pode-se configurar domínios dos dados;

– Pode-se construir regras especiais para validação de dados (física e semântica).

Bancos de dados relacionais

• Velocidade:

– Os dados são armazenados em arquivos binários otimizados, construídos para acelerar ao máximo as consultas;

– Capacidade de oferecer acesso a várias requisições simultâneas de usuários.

Bancos de dados relacionais

• Portabilidade:

– Todo gerenciador de banco de dados relacional adota a linguagem padrão SQL (Structured Query Language);

– É relativamente fácil migrar bancos de dados inteiros de uma plataforma para a outra;

– Sistemas construídos em SQL não precisam ser alterados na mudança de versão do banco de dados;

– Facilita a integração de bancos de dados diferentes.

Bancos de dados relacionais

• Baseado em relações:

– Entidades;

– Relacionamentos entre entidades.

Modelo relacional

• Entidades

– Elementos com significado próprio dentro do modelo de dados;

– Necessário identificar as características principais (atributos);

– Necessário identificar os atributos obrigatórios.

Bancos de dados relacionais

• Entidades

Bancos de dados relacionais

• Entidades como tabelas:

Nome N. USP CPF Sexo Dt_nasc

cadeia inteiro cadeia caracter data

ALUNO

Nome

cadeia

DISCIPLINA

Bancos de dados relacionais

• Tipos de dados: – char[(n)] – Sequência de caracteres com tamanho

fixo. n indica a quantidade de caracteres.

– int – Inteiro – Valores possíveis de -231 (-2,147,483,648) até 231 (2,147,483,647).

– smallint – Inteiro de -215 (-32,768) até 215 - 1 (32,767).

– datetime – Armazena data e horário.

– text – Sequência de caracteres de tamanho variado.

Bancos de dados relacionais

• Relacionamentos

– Estabelecem o vínculo entre duas (ou mais) entidades;

– Não tem existência própria dentro do modelo.

Bancos de dados relacionais

Bancos de dados relacionais

Nome N. USP CPF Sexo Dt_nasc ALUNO

Nome DISCIPLINA

Nome N. USP Nota Faltas MATRÍCULA

Bancos de dados relacionais

Nome N. USP Sexo Dt_nasc

Alan José 101222 M 01/01/1990

Ana Maria 304211 F 03/02/1991

Antonio Jr. 331215 M 11/04/1989

N. USP Disciplina Nota Faltas

101222 Fitopatologia 9,0 5

101222 Estatística 7,5 4

304211 Fitopatologia 9,5 0

304211 Estatística 8,5 0

304211 Biologia Celular 8,0 1

331215 Fitopatologia 6,7 4

331215 Biologia Celular 5,9 7

ALUNO

MATRICULA

Bancos de dados relacionais

Nome

Fitopatologia

Estatística

Biologia Celular

N. USP Disciplina Nota Faltas

101222 Fitopatologia 9,0 5

101222 Estatística 7,5 4

304211 Fitopatologia 9,5 0

304211 Estatística 8,5 0

304211 Biologia Celular 8,0 1

331215 Fitopatologia 6,7 4

331215 Biologia Celular 5,9 7

MATRICULA

DISCIPLINA

Bancos de dados relacionais

• A modelagem é essencial para grandes projetos, que buscam mapear características complexas da informação.

Bancos de dados relacionais

• SQL:

– Linguagem de definição e manipulação de dados em sistemas gerenciadores de bancos de dados;

– Linguagem declarativa;

– Idealizada para ser de fácil compreensão, relativamente próximo da linguagem natural.

Bancos de dados relacionais

• Exemplo de consulta:

– Selecionar todos os nomes e CPFs dos alunos matriculados na disciplina ‘Biologia Celular’

• Em SQL:

– select ALUNO.NOME, ALUNO.CPF from ALUNO, MATRICULA, DISCIPLINA where ALUNO.NUSP = MATRICULA.NUSP and MATRICULA.NOME = DISCIPLINA.NOME and NOME = ‘Biologia Celular’

Bancos de dados biológicos

• Algumas considerações:

– Bancos de dados biológicos são bancos de dados com conteúdo de caráter biológico.

– O termo “banco de dados biológico” é confundido, em alguns casos, com sites de acesso a sequências e informações biológicas.

Bancos de dados biológicos

• Os bancos de dados disponíveis na internet estão associados, muitas vezes, a programas que realizam operações sobre os dados.

Bancos de dados biológicos

• GenBank

– Banco de dados de sequências do NIH (National Institute of Health), operando desde 1982;

– Aproximadamente 126.551.501.141 bases em 135.440.924 sequências depositadas;

Bancos de dados biológicos

• Escala de crescimento do Genbank:

http://www.ncbi.nlm.nih.gov/genbank/genbankstats.html

Bancos de dados biológicos

• EMBL (European Molecular Biology Laboratory)

– Primeiro banco de dados de bases de nucleotídeos da Europa (1997);

– Compõe parte do consórcio internacional entre GenBank, EMBL e DDBJ.

Bancos de dados biológicos

• DDBJ (DNA Data Bank of Japan)

– Banco de dados central de sequências da Ásia

http://www.ddbj.nig.ac.jp/breakdown_stats/prop_bp.html#prop_bp-graph

Projetos

• Alguns projetos em andamento:

– Bancos de dados especializados;

– Algoritmos de geração de relatórios e cruzamento de dados;

– Modelagem de redes complexas;

– Análise estatística de dados;

– ...

Sugestões de leitura

• Livros introdutórios de bancos de dados: – ELMASRI, R.; NAVATHE, S. B. [Trad.]. Sistemas de

bancos de dados. Traduzido do original: FUNDAMENTALS OF DATABASE SYSTEMS. São Paulo: Pearson(Addison Wesley), 2005. 724 p. ISBN: 85-88639-17-3.

– Korth, H.; Silberschatz, A. Sistemas de Bancos de Dados. 3a. Edição, Makron Books, 1998.

– Raghu Ramakrishnan e Johannes Gehrke, Database Management Systems, Second Edition, McGraw-Hill, 2000.

Considerações finais

• Tenha cuidado especial com seus dados (você precisará deles um dia... ou todos os dias!)

• O software muda, mas os dados ficam.

• Desafios:

– Modelagem;

– Armazenamento;

– Análise;

– Evolução

Considerações finais

• Nem sempre é preciso usar gerenciadores de dados. Eles oferecem poder e escalabilidade, mas demandam esforço para modelar e trabalhar os dados;

• Profissionais da área de bancos de dados são muito valorizados no mercado devido a seu nível de responsabilidade e especialização.

Curso de Verão 2012 - Bioinformática

Bancos de Dados Biológicos Márcio K. Oikawa

marcio.oikawa@ufabc.edu.br

Recommended