Upload
phungnga
View
214
Download
0
Embed Size (px)
Citation preview
Curso de Verão 2012 - Bioinformática
Bancos de Dados Biológicos Márcio K. Oikawa - UFABC
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.