Curso de Verão 2012 -
Bioinformática
Bancos de Dados Biológicos
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.
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
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.
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
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;
Introdução
• Por que é importante organizar dados?
– Como vimos antes, a organização está ligada essencialmente a três elementos:
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:
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:
Introdução
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.
Planilhas eletrônicas
• Muito usadas para organizar dados de forma
geral;
• Podem importar e exportar diversos formatos,
permitindo integração com outros sistemas de
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
Planilhas eletrônicas
• Problemas:
– Não há formas fáceis de eliminar redundância; – É difícil manter a consistência dos dados;
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
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
Arquivos estruturados
• Arquivos CSV (Comma Separated Values)
– Padrão usado para armazenar tabelas em arquivos texto;
Arquivos estruturados
• Problemas:
– Nem sempre é fácil automatizar o seu uso;
– Não é fácil pesquisar informações, normalmente demandando bastante esforço manual;
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;
Bancos de dados relacionais
• Considere o seguinte exemplo:
– Banco de dados acadêmico
Aluno N. USP Sexo Dt_nasc Disciplina Nota Faltas
Bancos de dados relacionais
• Problemas:
– Redundância;
– Dados sem regras de controle de qualidade.
Aluno N. USP Sexo Dt_nasc Disciplina Nota Faltas
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
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
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
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
Bancos de dados relacionais
• A maioria esmagadora das instituições utiliza
bancos de dados relacionais, em todos os
Bancos de dados relacionais
• Alguns gerenciadores de bancos de dados
Bancos de dados relacionais
• O que os bancos de dados relacionais
oferecem?
– Segurança sobre os dados; – Consistência;
– Velocidade;
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;
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;
Bancos de dados relacionais
• Velocidade:
– Os dados são armazenados em arquivos binários otimizados, construídos para acelerar ao máximo as consultas;
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
Bancos de dados relacionais
• Baseado em relações:
– Entidades;
Modelo relacional
• Entidades
– Elementos com significado próprio dentro do modelo de dados;
– Necessário identificar as características principais (atributos);
Bancos de dados relacionais
• Entidades como tabelas:
Nome N. USP CPF Sexo Dt_nasc
cadeia inteiro cadeia caracter data ALUNO
Nome
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.
Bancos de dados relacionais
• Relacionamentos
– Estabelecem o vínculo entre duas (ou mais) entidades;
Bancos de dados relacionais
Nome N. USP CPF Sexo Dt_nasc
ALUNO
Nome
DISCIPLINA
Nome N. USP Nota Faltas
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
Bancos de dados relacionais
Nome
Fitopatologia Estatística
Biologia Celular N. USP Disciplina Nota Faltas
Bancos de dados relacionais
• A modelagem é essencial para grandes
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,
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
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” é
Bancos de dados biológicos
• Os bancos de dados disponíveis na internet
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
Bancos de dados biológicos
• Escala de
crescimento
do Genbank:
Bancos de dados biológicos
• EMBL (European Molecular Biology
Laboratory)
– Primeiro banco de dados de bases de nucleotídeos da Europa (1997);
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.
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;
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;
Curso de Verão 2012 -
Bioinformática
Bancos de Dados Biológicos
Márcio K. Oikawa