BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ......

137
BANCO DE DADOS EM BIOINFORMÁTICA Márcio K. Oikawa UFSCar [email protected]

Transcript of BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ......

Page 1: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

BANCO DE DADOS EM BIOINFORMÁTICA

Márcio K. Oikawa

UFSCar

[email protected]

Page 2: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Palestrante

• Professor da Universidade Federal de São Carlos –campus Sorocaba;

• Formação na área de Ciência da Computação;

• Atuação em vários projetos relacionados a Bioinformática e Biologia Molecular Computacional;

• Material desta aula é baseado nos slides do prof. Luciano Vieira de Araújo (EACH-USP).

Page 3: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Objetivos

• Reconhecer as necessidades de um banco de dados;

• Aprender a resolver problemas usando bancos de dados;

• Explorar os recursos de ferramentas de bancos de dados relacionais;

• Reconhecer oportunidades de aplicar isso a projetos de Bioinformática.

Page 4: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Roteiro

• Introdução• Motivação;

• O que é banco de dados;

• Quando usar e não usar banco de dados.

• Um pouco sobre banco de dados• Modelo relacional;

• Consultas SQL;

• Data warehouse e Data mining.

• Pontos importantes a serem considerados em um projeto de pesquisa

• Aplicações em Bioinformática

• Desafios e oportunidades de pesquisa em banco de dados aplicado à Bioinformática

Page 5: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Dados – Informações – Conhecimento

ANGELONI, Maria Terezinha.2003

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)

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)

Page 6: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Dados – Informações – Conhecimento

ANGELONI, Maria Terezinha. Elementos intervenientes na tomada de decisão. Ci. Inf. [online]. 2003, v. 32, n. 1, pp. 17-22.

http://www.scielo.br/pdf/ci/v32n1/15969.pdf

Contexto

Conhecimen

to

O caminho da sociedade da informação

para a sociedade do conhecimento é o

caminho da informação para o

significado, da percepção para o

julgamento."

MARKL, Hubert.,1998

Page 7: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Vamos começar do começo!

• O que é um banco de dados?

Um conjunto de dados qualquer.

Page 8: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Banco de dados simples

• Para que serve um banco de dados?

• Guardar;

• Lembrar;

• Proteger;

• Zelar (garantir a qualidade).

• Este é um bom banco de dados?

Page 9: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

História do banco de dados

• Evolução do processamento e

armazenamento dos dados

Page 10: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Gerenciamento de dados - História

• Dados não armazenados nos discos

• Programador define tanto a estrutura lógica quanto física

dos dados (estrutura de armazenamento, métodos de

acesso, modos de I/O, etc)

• Um conjunto de dados por programa

• Alto nível de redundância

Gerenciamento

dos dados

PROGRAMA 1DATA SET 1

Gerenciamento

dos dados

PROGRAMA 2DATA SET 2

Page 11: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Processamento de arquivos - história(recente e atual)

• Dados armazenados em arquivos com interface entre o

programa e o arquivo

• Vários métodos de acesso disponíveis:

• Seqüencial, indexado, randômico, etc

• Um arquivo utilizado por vários programas

Gerenciamento

dos dados

PROGRAMA 1

Gerenciamento

dos dados

PROGRAMA 2

Gerenciamento

dos dados

PROGRAMA 3

Serviços

de

File

System

Arquivo 1

Arquivo 2

da

do

s

red

un

dan

tes

Page 12: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Funções do Sistema de Arquivos

• Mapeamento entre arquivos lógicos e físicos

• Arquivos lógicos: arquivo visto pelos usuários e

programas

• Programa manipula arquivos lógicos

• Arquivos físicos: arquivo realmente como

armazenado em um dispositivo

• Sistema operacional manipulam os arquivos físicos

• Um conjunto de serviços e uma interface

Gerenciamento

dos dados

PROGRAMA 1

Gerenciamento

dos dados

PROGRAMA 2

Gerenciamento

dos dados

PROGRAMA 3

Serviços

de

File

System

Arquivo 1

Arquivo 2

da

do

s

red

un

da

nte

s

Page 13: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Problemas com Sistemas de Arquivos

• Dados altamente redundantes

• Compartilhamento limitado e em nível de

arquivo

• Alto custo de manutenção

• Dependência dos dados

• Para garantir a consistência e controle de

acesso

• Granularidade de compartilhamento

• Dificuldades no desenvolvimento de novas aplicações

Page 14: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

A abordagem dos Bancos de Dados

PROGRAMA 1 PROGRAMA 2

SGBD

Processador de consultas

Gerenciador de transações

...

Base de Dados

Integrada

Page 15: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

O que é um SGBD?

• Uma grande coleção integrada de dados

• Modelos do mundo real

• Entidades (ex. estudantes, cursos)

• Relacionamentos (ex. Sivia está cursando PRBD)

Um Sistema de Gerenciamento de

Banco de Dados (SGBD) é um pacote

de software designado para guardar e

gerenciar um banco de dados

Page 16: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Estrutura do sistema

indexes

data files

catalog

Query Evaluation Engine

File & Access

Methods

Buffer Manager

Disk Space Manager

Reco

very

Man

ag

er DDL

CompilerTransaction

&

Lock

Manager

SGBD

Forms

Application

Front ends

DML/CLI

interface DDL

DBAPGMsusers

SQL commands

Page 17: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Um banco de dados oferece

• Consistência

• Eficiência

• Controle de restrições

• Chave,

• Tipo de dados,

• Chave estrangeira,

• Unicidade,

• Possível qualidade de dados

• Como assim ?

Page 18: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Quando não usar banco de dados

• Existe algum caso ?

Page 19: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Porque usar um SGBD?

• Os dados constituem um bem para a organização e requerem controle integrado

• Acesso independente e eficiente a dados

• Redução no tempo de desenvolvimento da aplicação

• Integridade e segurança dos dados

• Administração uniforme dos dados

• Acesso concorrente (compartilhamento)

• Recuperação de “crashes”

• Produtividade para o programador Independência dos dados

Page 20: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Porque estudar Bancos de Dados?

• Mudança da computação para a informação

• Mundo heterogêneo – Diferentes tipos de aplicações e

complexidade

• Conjuntos de dados aumentando em diversidade e

volume

• Bibliotecas digitais, projeto do genoma humano,

uso da informação para o processo de tomada

de decisões das empresas (competitividade)

• Necessidade de bancos de dados cada vez

maiores

• SGBD permeia a maior parte da computação:

• SOs, linguagens, lA, multimidia, etc....

Page 21: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

SGBDs

• Comerciais

• Oracle

• Sybase

• Sql server

• DB2

• Access

• Gratuitos

• Mysql

• Postgresql

• Hsqldb

Page 22: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Tipos de banco de dados

• Quanto ao processamento de transações

• Centralizados

• Distribuídos

• Modelo de dados

• Relacional

• Orientado a objetos

• Especialização

• Geográficos

• Temporais

• Natureza dos dados

• Produção

• Analítico (Data warehouse)

Page 23: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Desafios da Bioinformática

• Conceitos em constante mudança

• Modelagem e gerenciamento dos dados

• Integração de banco de dados

• Rastreabilidade de dados

• Qualidade de dados

Page 24: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Exercício

• Desenhe um banco de dados para atender um sistema de

controle acadêmico (geração de histórico escolar) que

contemple:

• Dados sobre os alunos

• Dados sobre as diciplinas

• Dados sobre os professores

• Seus relacionamentos (qual a nota de cada aluno

nas disciplinas que cursa/cursou, qual professor

ministra cada disciplina etc.)

Discussão: quais as dificuldades encontradas?

Page 25: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Modelo de dados

• Um modelo de dados é uma coleção de

conceitos para descrever dados

• Um esquema é uma descrição de uma

coleção particular de dados, usando algum

modelo de dados

Page 26: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Modelo de dados

• O modelo de dados relacional é o modelo mais usado

hoje

• Principal conceito: relação, basicamente uma

tabela com linhas e colunas

• Toda relação tem um esquema, que descreve as

colunas, ou campos

• É um formalismo que define qual a estrutura dos

dados

• Dentro de um arquivo

• Entre arquivos

Page 27: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Níveis de Abstrações

• Muitas visões simples, esquema conceitual (lógico) e esquema físico

• Visões descrevem como usuários vêem o dado

• Esquema conceitual define a estrutura lógica

• Esquema físico descreve o arquivo e índices usados

Visão 1 ... Visão N

Esquema conceitual

Esquema físico

Page 28: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Características dos SGBDs

• Independência dos dados:

• Aplicações isoladas da maneira que os

dados são estruturados e armazenados

• Invisibilidade ou transparência dos detalhes

para o usuário (organização, estrutura de

armazenamento e estratégia de acesso)

• Transparência da estratégia lógica de acesso

• Transparência da organização física do

armazenamento e acesso

Page 29: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Características dos SGBDs

• Esquema integrado

• Usuários têm uma visão uniforme dos dados

• Usuários vêem apenas relações no modelo relacional

• Integridade declarativa e garantia de consistência

• 1.000 Salário 10.000

• Nenhum empregado pode ter um salário maior que

seu/sua gerente

• O usuário especifica e o sistema garante

• Visões individualizadas

• Restrições a certas relações

• Reorganização das relações por certas classes de

usuários

Page 30: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Características dos SGBDs

• Acesso declarativo

• Linguagem de consulta – SQL

• Esquemas são definidos usando uma DDL

• Dados são modificados/consultados usando

uma DML

• O sistema determina a execução

• Processador de consultas e otimizador

• Controle de concorrência

Page 31: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Controle de concorrência

• Execução da concorrência de processos é

essencial para uma boa performance do SGBD

• Acessos a discos são freqüentes e lentos, é

importante deixar a CPU alocada a diversos

processos concorrentemente

• Executar ações de diferentes processos pode

levar a contradições

• Ex.: o cheque compensado enquanto o

saldo é computado

• O SGBD evita tais problemas: usuários podem

fingir que estão usando um sistema único

Page 32: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Transações

• Execução das solicitações do usuário como uma

seqüência atômica de ações no BD (unidade de

leituras/gravações)

• Pode conter uma ou múltiplas consultas

• Cada transação, executada completamente, deve

deixar o BD em um estado consistente (se o BD é

consistente quando a transação começa)

• Usuários podem especificar alguma

restrições

• O SGBD não entende a semântica dos dados

Page 33: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Transações

• Transparência na concorrência:

• Múltiplos usuários podem acessar o banco

de dados, porém com uma visão pessoal

• Controle de concorrência

• Transparência nas falhas:

• Mesmo que ocorra uma falha, a consistência

da base de dados é garantida

• Mecanismos de logging e recuperação

Page 34: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

SGBD – Sistemas gerenciadores de banco de dados

Page 35: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Exemplos de dado em um banco de dados

Page 36: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

O lugar do SGBD no sistema

Sistema Operacional

SGBD

Hardware

Ferramentas de desenvolvimento

Programas de aplicação

Page 37: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Usuários do banco de dados

• Usuário final

• Usuário “leigo” ou casual

• Acessa o BD através de forms ou através de

front ends de aplicações

• Os mais sofisticados geram consultas adhoc

usando DML

• Programadores de aplicação/desenvolvedores

• Desenham e implementam aplicações que

acessam o BD (algumas podem ser utilizadas

pelos usuários finais)

Page 38: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Usuários do banco de dados

• Administradores de bancos de dados

(DBA – database administrator)

• Define e gerencia o esquema conceitual

• Define as visões para as aplicações e usuários

• Monitora e ajusta a performance do SGBD

(define/modifica esquema interno)

• Carrega e controla a base de dados

• Responsável pela segurança e confiabilidade

Page 39: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

O Modelo Entidade-Relacionamento

Page 40: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

O Modelo de dados Entidade-Relacionamento (ER)

• Descreve os dados do mundo real como

objetos e seus relacionamentos

• Amplamente utilizado para o desenho inicial

da base de dados

• Descrição informal descrição detalhada e

precisa que pode ser implementada em um

DBMS

Page 41: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

O Processo de Desenho do BD

1. Análise de requerimentos ou necessidades

2. Desenho conceitual do BD

3. Desenho lógico do BD

4. Refinamento do esquema

5. Desenho físico do BD

6. Desenho da segurança

MER - necessário principalmente nas etapas 2 e 3

Page 42: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

O Projeto do BD

• O projeto de um novo BD dá-se em duas

fases:

1. Modelagem Conceitual: o modelo conceitual é

construído na forma de um diagrama entidade-

relacionamento

2. Projeto Lógico: define como o banco de

dados será implementado em um SGBD

específico passando pelo refinamento do

esquema (normalização), onde verifica o

esquema relacional para redundâncias e

anomalias

Page 43: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Exemplo prático

• Estudo de caso...

Page 44: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Entidade

• Conjunto de elementos (objetos) do sistema

que possui vida própria e sobre os quais se

deseja armazenar informações no banco de

dados.

Page 45: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Relacionamento

Entidade

DEPARTAMENTO

Entidade

EMPREGADO

Relacionamento

LOTAÇÃO

p1

p2

p3

p4

p6

p7

p5

p8

p1,d1p2,d1

p4,d2

p5,d3

d1d2

d3

Obs: o relacionamento não necessariamente associa

entidades diferentes. Pode ocorrer um

auto-relacionamento

Page 46: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Classificação de relacionamentos binários

• Exemplos: relacionamentos 1:1

EMPREGADO

MESA

ALOCAÇÃO

1

1

PESSOA

CASAMENTO

marido esposa

1 1

(Relacionamento binário que

envolve apenas uma entidade)

Page 47: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Classificação de relacionamentos binários

• Exemplos: relacionamentos 1:n

CURSOINSCRIÇÃO

n 1

ALUNO

DEPENDENTE1 n

EMPREGADO

EMPREGADO

SUPERVISÃO

supervisor supervisionado

1 n

Page 48: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Classificação de relacionamentos binários

• Exemplos: relacionamentos n:n

PACIENTECONSULTA

n n

MÉDICO

FORNECEDORCAPACIDADE

n n

PEÇA

PRODUTO

COMPOSIÇÃO

composto componente

n n

PROJETOALOCAÇÃO

n n

ENGENHEIRO

Page 49: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Exercício

• Explique cada caso de cardinalidade

1

1

n

1

n

n

Page 50: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Cardinalidade de Relacionamentos

Cardinalidade (mínima, máxima) de entidade

em relacionamento

=

número (mínimo, máximo) de ocorrências de

entidade associadas a uma ocorrência da

entidade em questão através do

relacionamento

Page 51: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Cardinalidade de Relacionamentos

DEPARTAMENTO EMPREGADOLOTAÇÃO

1 n

Expressa que a uma ocorrência de

EMPREGADO (entidade do lado

oposto da anotação) pode estar

associada ao máximo uma (“1”)

ocorrência de DEPARTAMENTO

Expressa que a uma ocorrência de

DEPARTAMENTO (entidade do lado

oposto da anotação) podem estar

associadas ao máximo muitas (“n”)

ocorrências de EMPREGADO

Page 52: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Cardinalidade Mínima

• Representa o número mínimo de

ocorrências de entidade que são associadas

a uma ocorrência de uma entidade através

de um relacionamento

• Para o projeto de BD considera-se apenas

as cardinalidades mínimas 0 e 1

Page 53: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Cardinalidade Mínima

• A cardinalidade mínima 1 também é

chamada de “associação obrigatória”, pois

indica que o relacionamento deve

obrigatoriamente associar uma ocorrência

de entidade a cada ocorrência da entidade

em questão

• A cardinalidade mínima 0, seguindo o

mesmo raciocínio, recebe a denominação

de “associação opcional”

Page 54: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Cardinalidade Mínima

Exemplo:

e1

e2

e3

e4

e1,m1e2,m2

e3,m6

e4,m4

m1m6

m4m2

m5

m3

ALOCAÇÃO

(1,1)

EMPREGADO

MESA

(0,1)

Cada empregado dever ter a ele alocada obrigatoriamente uma mesa (cardinalidade

mínima 1) e que uma mesa pode existir sem que a ela esteja alocado um funcionário

(cardinalidade mínima 0)

Page 55: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Exemplo de uso de entidades e relacionamentos

DER para o controle acadêmico de uma universidade:

RESPONSÁVEL(1,1)

DEPARTAMENTO DISCIPLINA(0,n)

INSCRIÇÃO(0,n)

ALUNO CURSO(1,1)

DISC-CURSO

(0,n)

(0,n)

PRÉ-REQUIS

liberadoraliberada

(0,n) (0,n)

Page 56: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Explique o significado das cardinalidades

0,n

0,nalunos cursos

matricula

1,n

0,nalunos cursos

matricula

0,1

0,nalunos cursos

matricula

0,1

1,1alunos cursos

matricula

1)

2)

3)

4)

Page 57: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Atributos

• O modelo ER permite a especificação de

propriedades de entidades, como:

• participar de um relacionamento

• possuir atributo(s)

atributo

=

dado que é associado a cada ocorrência de

uma entidade ou de um relacionamento

Page 58: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Atributos

• São representados conforme diagrama

abaixo:

• Na prática, atributos não são representados

graficamente, para não sobrecarregar os diagramas.

Pode-se utilizar uma representação textual dos

atributos

PROJETO

nome

códigotipo

Page 59: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Atributos

• Exemplo: atributo de relacionamento n:n

PROJETOATUAÇÃO

(0,n) (0,n)

ENGENHEIRO

NomeCódigo Código Título

Função

Obs: um engenheiro pode atuar em diversos projetos,

exercendo diferentes funções

Page 60: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Identificando entidades

• Cada entidade deve possuir um identificador

• Identificador é um conjunto de um ou mais

atributos (e possivelmente relacionamentos)

cujos valores servem para distinguir uma

ocorrência da entidade das demais

ocorrências da mesma entidade

Page 61: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Identificando entidades

• No exemplo abaixo, o atributo código é

identificador

• Cada pessoa possui um código diferente

• O atributo código é um identificador simples

PESSOACódigo

Nome

Endereço

Page 62: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Identificando entidades

• Exemplo de identificador composto:

• considera-se o almoxarifado de uma empresa de

ferragens

• os produtos ficam armazenados em prateleiras

• estas prateleiras encontram-se em armários

organizados em corredores

• para cada prateleira deseja-se saber sua capacidade

em metros cúbicos

PRATELEIRAnúmero do corredor

número da prateleira

capacidade

Page 63: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Identificando entidades

• O identificador de uma entidade (simples ou

composto, ou composto por identificadores

externos) deve obedecer duas propriedades:

• o identificador deve ser mínimo - retirando um dos

atributos ou relacionamentos que o compõe, ele deixa

de ser identificador.

• Exemplo:

código+nome poderia ser usado como identificador mas não

atende ao requisito descrito acima, pois não formam um

identificador mínimo

(código é suficiente para distinguir as ocorrências de PESSOA)

PESSOACódigo

Nome

Endereço

Page 64: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Esquemas gráficos de modelos ER

• Símbolos usados na construção de esquemas ER:

Entidade

Relacionamento

Atributo

Atributoidentificador

Relacionamento identificador

(entidade fraca)

(1,1)

Generalização/especialização

Entidade associativa (agregação)

Page 65: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

SQL – Structured Query Language

Page 66: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

SQL

STRUCTURED QUERY LANGUAGE

• Semelhante ao inglês falado

• Fácil de escrever, ler e entender

Page 67: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Componentes do SQL

• DDL - Data Definition Language

• CREATE

• ALTER

• DROP

• DML - Data Manipulation Language

• SELECT

• UPDATE

• INSERT

• DELETE

• DCL – Data Control Language

• GRANT

• REVOKE

Page 68: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Exemplo de um banco de dados para pacientes

• Tabela (conjunto de registros/linhas/tuplas

com os mesmos atributos)

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostras

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 69: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Relacionamento entre tabelas

1,1 0,n 0,1 0,n

Pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

I

I

A1

A100

A100

<M>Amostras

Id_Amostra

Data

Pais_Coleta

Origem_Amostra

I

D

A100

A100

<M>

Possui

Sequencia

Id_Sequencia

Regiao_Genoma

Tamanho

Fasta

I

A100

I

LBIN

<M>

Origina

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 70: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Id_Paciente Idade Sexo

o

Cidade Pais

1 15 M São Paulo Brasil

2 28 F São Paulo Brasil

3 19 M Campinas Brasil

Id_Amostra Id_Paciente

(FK)

Data Pais

origem

Origem

1 2 01/01/99 Brasil Sangue

2 3 05/03/99 Françae Pele

3 2 07/08/99 Brasil Sangue

Id_Sequencia Id_Amostra

(FK)

Regiao

genoma

Tamanho Fasta

1 2 Pol 200 ACCTTAT...AACT

2 1 Gag 300 TCATTAA...CACA

3 2 Env 250 CCCTTCA...TACG

Conteúdo das tabelas

Paciente

Amostra

Sequencia

Page 71: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Criar Tabela - Create Tabela

Sintaxe do comando:

Create Table Nome da Tabela

( Coluna1 Tipo de dado [ Not Null] [Primay Key],

Coluna2 Tipo de dado [ Not Null],

...

ColunaN Tipo de dado [Not Null] );

[] – Indica termo opcional

Page 72: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Tipos de dados

• char[(n)] – Sequência de caracteres com tamanho fixo. n indica a quantidade de caracteres. Tamanho ocupado n bytes.

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

(2,147,483,647). Tamanho ocupado 4 bytes.

• smallint – Inteiro de -215 (-32,768) até 215 - 1 (32,767). Tamanho ocupado 2 bytes.

• datetime – Armazena data e horário de Janeiro. Tamanho ocupado 8 bytes

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

Page 73: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Criar Tabela - Create Tabela

Create Table Pacientes

( Id_Paciente int8 not null primary key,

Idade int2,

Sexo char(1),

Cidade varchar(100),

Pais varchar(100))

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

Page 74: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Criar tabelas com relacionamentos

Constraint Fk_IdPaciente Foreign Key (Id_Paciente )

References Paciente (Id_Paciente)

Constraint Nome_da_restricao ConstraintType (Nome_atributo )

References Nome_tabela (Nome_atributo)

O relacionamento entre duas tabelas é indicado pela

restrição de integridade chamada Chave Estrangeira

(Foreign Key).

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 75: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Id_Paciente Idade Sexo

o

Cidade Pais

1 15 M São Paulo Brasil

2 28 F São Paulo Brasil

3 19 M Campinas Brasil

Id_Amostra Id_Paciente

(FK)

Data Pais

origem

Origem

1 2 01/01/99 Brasil Sangue

2 3 05/03/99 Françae Pele

3 2 07/08/99 Brasil Sangue

Id_Sequencia Id_Amostra

(FK)

Região do

genoma

tamanho Fasta

1 2 Pol 200 ACCTTAT...AACT

2 1 Gag 300 TCATTAA...CACA

3 2 Env 250 CCCTTCA...TACG

Conteúdo das tabelas

Paciente

Amostra

Sequencia

Page 76: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Criar tabelas com relacionamentos

Create Table amostras

( Id_Amostra int not null primary key,

Id_Paciente int,

Data DateTime,

Pais_Coleta varchar(100),

Origem_Amostra varchar(100),

Constraint Fk_IdPaciente Foreign Key (Id_Paciente)

References pacientes (Id_Paciente) )

Indica que a tabela amostras

possui relacionamento com a

tabela pacientes

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 77: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Criar tabelas com relacionamentos

Create Table Sequencias

( Id_Sequencia int not null primary key,

Id_Amostra int,

Regiao_Genoma varchar(100),

Tamanho int,

Fasta Text,

Constraint Fk_IdSequencia Foreign Key (Id_Amostra )

References Amostras (Id_Amostra) )

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 78: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Inserir dados nas tabelas

• Comando para inserir dados:

INSERT INTO Nome_Tabela (Col 1, ..., Col N)

VALUES (Val 1, ..., Val N)

insert into Paciente (Id_Paciente, idade, Sexoo, cidade, pais)

values (1, 18,‟M‟, „São Paulo‟,„Brasil‟)

• Example:

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 79: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Inserir dados - tabela Amostras

insert into amostras (Id_Amostra,Id_Paciente, Data,Pais_Coleta, Origem_Amostra)

values (1, 1,‟25/03/02‟, „Brasil‟,„Sangue‟)

• Exemplo:

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

• Comando para inserir dados:

INSERT INTO Nome_Tabela (Col 1, ..., Col N)

VALUES (Val 1, ..., Val N)

Page 80: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Insert into – Tabela Sequencias

insert into Sequencia (Id_Sequencia, Id_Amostra,Regiao_Genoma, Tamanho,

Fasta) values

(1, 1,‟Env‟, 200,

„>AA0001 Paciente1 Amostra1

ACTGAATCGAACTGAATCGAACTGAATCGAACTGAATCGA

ACTGAATCGAACTGAATCGAACTGAATCGAACTGAATCGA

ACTGAATCGAACTGAATCGAACTGAATCGAACTGAATCGA‟)

• Example:

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 81: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Entrada de de dados• Além do Insert, existem

outros comeos para entrada de dados. Ex.: Copy, Select into, etc

• Uma interface para entrada de dados torna o processo mais simples e transparente.

INSERT INTO Nome_Tabela (Col 1, ..., Col N) VALUES (Val 1, ..., Val N)

Id_Paciente Idade Sexoo Cidade Pais

1 15 M São Paulo Brasil

2 28 F São Paulo Brasil

3 19 M Campinas Brasil

Paciente

Page 82: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Consulta de dados - Select

SELECT <lista de atributos>

FROM <lista de tabelas>

[WHERE <condições>]

[ ] – Indica termo opcional

Page 83: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Consultar os dados inseridos

SELECT *

FROM Pacientes

SELECT *

FROM Amostras

SELECT *

FROM Sequencias

SELECT *

FROM Nome_Tabela Indica todos os campos da tabela

Page 84: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Evite erros de sintaxe

• Use virgulas para separar nomes de tabelas e atributos.

Select Id_Paciente, Idade, Sexo

Where Cidade = „São Paulo‟ Where Cidade = São Paulo

Diferença entre símbolos

Normal SQL Simbolos

= <>

>=

<=

• Use aspas simples para indicar valores alfanuméricos

Select Id_Paciente Idade Sexo

Page 85: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Consultas básicas em SQL

• Encontre Identificador, Idade, Sexo e Cidade

de todos pacientes.

SELECT Id_Paciente, Idade, Sexo, Cidade

FROM Pacientes

SELECT <Lista_Atributos>

FROM <Lista_tabelas>

[WHERE <Condições>]

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 86: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Consultas básicas em SQL

• Encontre Idade e Cidade de todos pacientes

com Idade menor que 17 anos.

SELECT Idade,Cidade

FROM Pacientes

WHERE Idade > 17

SELECT <Lista_Atributos>

FROM <Lista_tabelas>

[WHERE <Condições>]

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 87: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Consultas básicas em SQL

• Encontre Idade e Cidade de todos os pacientes do sexo feminino com Idade menor que 17 anos de idade.

SELECT Idade,Cidade

FROM Pacientes

WHERE Idade > 17 and Sexo = ‘F’

SELECT <Lista_Atributos>

FROM <Lista_tabelas>

[WHERE <Condições>]

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 88: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Junção - Consultar mais de uma tabela

• A junção de tabelas é representada na clausula

Where

Tabela1.Atributo_Junção= Tabela2. Atributo_Junção

• Exemplo:

Pacientes.Id_Paciente = Amostras.Id_Paciente

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 89: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Consultas básicas em SQL - Tabela Join

• Encontre o pais do paciente que possui a amostra com

identificador 2.

SELECT <Lista_Atributos>

FROM <Lista_tabelas>

[WHERE <Condições>]

SELECT Paciente.Pais

FROM Pacientes, Amostras

WHERE Amostras.Id_Amostra = 2 and

Pacientes.Id_Paciente = Amostras.Id_Paciente

Condição de junção

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 90: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Consultas básicas em SQL - Join

• Encontre o sexo do paciente, pais onde a amostra foi coletada e região do Genoma das sequências que possuem tamanho menor que 200 bp

SELECT Pacientes.Sexo, Amostras.Pais_Coleta, Sequencia.Regiao_Genoma

FROM Pacientes, Amostras, Sequencias

WHERE Sequencias.Tamanho > 200 and

Pacientes.Id_Paciente = Amostras.Id_Paciente and

Amostras.Id_Amostra = Sequencias.Id_Amostra

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 91: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Consultas básicas em SQL - Join

• Encontre o Sexo do paciente, pais de coleta da amostra e Região do Genoma das sequências cujo tamanho seja menor que 200 bp

SELECT P.Sexo, S.PaisOrigin, Se.Regiao_Genoma

FROM Pacientes P, Amostras S, Sequencias Se

WHERE Se.Tamanho > 200 and

P.Id_Paciente = S.Id_Paciente and

S.Id_Amostra = Se.Id_Amostra

P, S, Se

São os apelidos

das tabelas

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 92: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Consultas básicas em SQL – Order by

Como mudar a ordem dos dados que aparecem no

resultado de uma consulta?.

SELECT Idade,Cidade

FROM Pacientes

WHERE Idade > 17

ORDER BY Idade

Ordem numérica

SELECT Idade,Cidade

FROM Pacientes

WHERE Idade > 17

ORDER BY Cidade

Ordem alfabética

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 93: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Exercicíos - Consultas básicas em SQL

• Encontre Idade e Pais de todos pacientes do

sexo masculino.

SELECT Idade,Pais

FROM Pacientes

WHERE Sexo = ‘M’

SELECT <Lista_Atributos>

FROM <Lista_tabelas>

[WHERE <Condições>]

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 94: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Exercícios - Consultas básicas em SQL

• Encontre todas Sequencias (FASTA ) da região do

genoma chamada Pol e cujo Tamanho seja menor

que 200 bp SELECT Fasta

FROM Sequencias

WHERE Tamanho > 200 and

Regiao_Genoma = ‘Pol’

SELECT <Lista_Atributos>

FROM <Lista_tabelas>

[WHERE <Condições>]

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 95: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Exercícios - Consultas básicas em SQL

• Encontre a cidade e idade dos pacientes cujas amostras foram coletadas no dia 01/03/99, mostre o resultado em ordenado pela idade do paciente

SELECT Paciente.Cidade, Paciente.Idade

FROM Pacientes, Amostras

WHERE Amostras.Date = ‘01/03/99’ and

Pacientes.Id_Paciente =

Amostras.Id_Paciente

ORDER BY Pacientes.Idade

SELECT <Lista_Atributos>

FROM <Lista_tabelas>

[WHERE <Condições>]

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 96: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Remover dados das tabelas

• Comando:

Delete from Nome_Tabela

[Where <Condições>]

• Exemplo:Remove todos os dados da Tabela

Pacientes.Delete from Pacientes

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Atenção!! Sempre é perigoso

remover dados. Preste atenção nas

condições do comando “delete”.

Page 97: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

• Exemplo:

Remove da Tabela Sequencias todas as sequências

com Tamanho > 200

Delete from Sequencias

where Tamanho > 200

Remover dados das tabelas

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 98: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Remover tabela do banco de dados

• Comando:

Drop Table Nome_Tabela

• Example:Remove a Tabela

Paciente.Drop Table Pacientes;

Atenção!! Sempre é perigoso remover dados.

Preste atenção nas condições do comando

“delete”.

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 99: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Remover tabela do banco de dados

• Ordem para remover as tabelas do

banco de dados:

A restrição de integridade não permite a

Remoção de dados usados por outras tabelas.

1) Drop Table Sequencias;

2) Drop Table Amostras;

3) Drop Table Pacientes;

FK_APFK_S_A

pacientes

Id_Paciente

Idade

Sexo

Cidade

Pais

INT8

INT2

CHAR(1)

VARCHAR(100)

varchar(100)

<pk>

amostras

Id_Amostras

Id_Paciente

Data

Pais_Coleta

Origem_Amostra

Int8

INT8

DATE

VARCHAR(100)

Varchar(100)

<pk>

<fk>

sequencias

Id_Sequencia

Id_Amostra

Regiao_Genoma

Tamanho

Fasta

INT8

Int8

VARCHAR(100)

INT2

TEXT

<pk>

<fk>

Page 100: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Data warehouse

Page 101: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Alguns Conceitos

• Características dos Sistemas Analíticos

• OLTP X OLAP

• Data Warehouse e Data Marts

• Bancos de Dados Dimensionais

• Terminologia

• Formas de Armazenamento

• Data Mining

• Tarefas Típicas

• Algoritmos

• Modelos

Page 102: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

OLTP X OLAP

OLTP

• Mais freqüentes

• Detalhes

• Poucos dados

• Dados atuais

• Baixa complexidade

• Consistência microscópica

• CRM, ERP, Supply Chain

• Linhas e Colunas

OLAP

• Menos freqüentes

• Agrupamento

• Muitos dados

• Dados históricos

• Alta complexidade

• Consistência global

• MIS

• Dimensões e Fatos

Page 103: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Transformando dados em conhecimento

Network

Dados Informação Conhecimento

Page 104: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Transformando dados em conhecimento

Dados

Operacionais

Cubes

Data

Warehouse

Data Marts

ETLRelacionalProdução

BD Especial

Page 105: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

O modelo dimensional

PRODUTO

produto_keyproduto_desctipocategoria

CLIENTE

cliente_keycódigo_clientenome

TEMPO

tempo_keydatamêsmês_desctrimestreano

LOJA

loja_keyloja_descloja_endereçovendedorcidadeestadoregião

FATO_VENDA

produto_keydata_venda_keyloja_keycliente_keyvalormargemcustoquantidade

• Chaves primárias• Hierarquias• Atributos descritivos

Page 106: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Mês

1 2 3 4 76 5

Pro

du

to

Cadeira

Suco

Cola

LeiteCreme

Sabonete

OS

N

Dimensões: Produto, Região, Tempo

Caminhos de Sumarização

Hieráquica

Produto Região Tempo

Indústria País Ano

Categoria Região Trimestre

Produto Cidade Mês Semana

Escritório Dia

Online Analytical Processing (OLAP)Exemplo

Page 107: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Processo de KDD

Armazenamento e

recuperação de dados

Cruzamento

Page 108: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Data Mining

• Data Warehouses / Data Marts – Oferecem fonte de dados e um conjunto de análise.

• Data mining

• Busca encontrar padrões novos/desconhecidos em um conjunto de dados

• Não é um DW, o Data mining pode ser usado em um DW

• Usa um conjunto de ferramentas estatístiva para encontrar e avaliar os padrões.

Page 109: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Data mining – Tipos de Análises

• Classificação

• Atribui elementos a classes

• Análise de riscos (Potencial bom pagador)

• Regressão

• Previsão de Taxas de seguros, clima/temperatura

• Segmentação

• Agrupa casos semelhantes

• Associação

• Busca relações entre os dados

• Previsão

• Análise de Desvio

• Identificação de fraudes

• Visualização

• Representação visual dos padrões

Page 110: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Ciclo da informação

Eficiência Gerencial

(planejamento,

controle,

comunicação e

tomada de decisão)

Coleta de dados

Armazenamento

Distribuição e o uso de

dados

Recuperação de dados

Page 111: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

APLICAÇÕES DE BANCO DE DADOS EM BIOINFORMÁTICA

Page 112: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados
Page 113: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Pesquisas em HIV/AIDS

• Como modelar um vírus?

• Diferentes possibilidades de representação e

relacionamento entre os dados

Rambaut et al., Nature Reviews Genetics, 2004

Page 114: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

• Portais com

informações

genéticas e

ferramentas

para análise de

dados

Aplicações em Bioinformática

Page 115: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

• Bancos de dados especializados

• Microarray, plasmoDB

• Especialização dos bancos

– Protein Disease Database

– SWISS-2DPIdade

Aplicações em Bioinformática

Page 116: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

• Integração de dados de bancos de dados públicos

• Importação de dados de diferentes fontes públicas

• Esquemas de integração

• Limitações

• Escopo de dados abrangem somente

seqüências genéticas e suas anotações

• Qualidade dos dados disponíveis

Aplicações em Bioinformática

Page 117: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Dicas para o seu projeto

Page 118: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Processo integrado

• Quanto maior a capacidade das tecnologias da informação

e da comunicação, maior a capacidade de inter-

relacionamentos e a capacidade de aprender e lucrar com

o compartilhamento da informação e do conhecimento.

• Tecnologia: comunicação e armazenamento dos dados,

das informações e dos conhecimentos como na integração

dos tomadores de decisão. ANGELONI, Maria Terezinha.2003

Page 119: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Ciclo de Vida de um projeto

Page 120: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Orçamentos não resistem a erros

• Tecnologia ágil

• cliente e desenvolvedor juntos

Page 121: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Ser realista

• Definir prioridades

Page 122: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Coleta de dados

• Definição de quais dados devem ser coletados.

• Avaliar se o dado é realmente importante

• Qual o objetivo da coleta desse dado?

• Em que tipo de análise o dado estará envolvido?

• Qual a viabilidade de coletá-lo?

• Com que qualidade/confiabilidade conseguiremos esse dado?

Page 123: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Coleta de dados

• Qual a representação natural do dado?

• Alfanumérica, Númerica

• Qual o tamanho do campo necessário para

armazenar o dado? Ex.: 100 caracteres

• Existe um padrão de medida/representação?

• Ex.: ºC, Km/h, m, cm, mm

Page 124: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Coleta de dados

• Quais regras envolvem esse dado?• Faixa de valores.

• Ex.: 0<x < 50

• Valores específicos. • Ex.: Dias da semana, Sexo,

• Dependência de outras informações

• Gravidez e licença maternidade só podem ser atribuídos em caso de Sexo feminino.

• Regras de negócio

• O exame deve ser coletado ate 24 horas após a internação.

• Existem exceções ?

• Qual a importância de avaliar tais regras?• Existe uma relação custo benefício favorável a validação das

regras?

Page 125: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Coleta de dados

• Qual o melhor formato para armazenar o

dado?

• Sexo

• (0 – feminino, 1 – masculino)

• (f – feminino, m – masculino)

• (feminino, masculino)

• Número de medicamentos em uso

• [0,10]

• [0,100]

• (nenhum, ate 2, entre 3 a 5, acima de 5)

Page 126: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Coleta de dados

• Idade ou data de nascimento?

• Endereço

• Campo para digitação com 200 caracteres,

• Campo para digitação de rua, bairro, cidade, estado, pais

• Uso do CEP

• Campo para seleção de bairro, cidade, estado, pais

Page 127: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Áreas para pesquisa

Page 128: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Áreas de pesquisa

• Criação de banco de dados para estudos

específicos

• Ontologias, modelagem de dados

• Banco de dados flexíveis

• Acompanham as modificações

• Estruturas para representação e análise de dados

• Data mining

• Armazenamento/integração de dados secundários

• Os resultados das análises integrados ao banco.

Page 129: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Áreas de pesquisa

• Integração de bases de dados existentes

• Esquemas de integração de dados

• Data warehouse

• Banco de dados distribuídos

• Consultas distribuídas

• Transações distribuídas

• Procedência de dados

• Acompanhamento do dado e suas transformações

• Rastrear a informação

Page 130: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Migração de dados - procedência

BD2

PA

PC

PB

PD

BD3 BD4

BD6

BD1

BD5

Page 131: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Ambiente integrado para descoberta de conhecimento em Biologia

Computação de alto-desempenho

Seleção de dados:

OLAP e Relacional

Métricas:

Vetor de características

Transformação de dados

Procedimento de

projeto

Processos de

mining

Núcleo do

mining

Leitura de

dadosDados primários

Base de dados relacional

Base de dados

de

Objetos complexos

Mundo Real

Ligação entre dados

primários e

objetos complexos

Conceito:

Subconjunto de

instâncias

Page 132: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Conclusão

• Trate com cuidado do que é essencial

• Os Dados

• Softwares mudam e são trocados

• Os dados permanecem

• Desafios

• Representação

• Armazenamento

• Análise

• Evolução

• Necessita de um profissional com:

• Conhecimentos sólidos

• E mais algumas habilidades…

Page 133: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Entender o que é trabalhar em equipe

Page 134: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Com Capacidade de Gestão

Construção do Euro túnel

Page 135: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Versátil

Page 136: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

Bibliografia Básica

- ELMASRI, R. e NAVATHE, S.B. Sistemas de Banco de Dados, Fundamentos e Aplicações. Rio de Janeiro: Editora LTC, 2002.

- Ramakrishnan R., Database Management Systems, WCB McGraw-Hill, 2002.- FERREIRA, J. E. e FINGER, M. Controle de Concorrência e Distribuição de

Dados: a teoria clássica, suas limitações e extensões modernas. São Paulo: Escola Brasileira de Computação, 2001.

- EfraimTurban, R. Rainer Jr, Richard Potter, Introdução a Sistemas de Informação – Uma abordagem gerencial. Campus – 2007

- Fiddy, S., et al., An integrated system for genetic analysis. BMC Bioinformatics, 2006. 7: p. 210.

- Shah, S.P., et al., Atlas - a data warehouse for integrative bioinformatics. BMC Bioinformatics, 2005. 6: p. 34.

- Shafer, R.W., Rationale and uses of a public HIV drug-resistance database. J Infect Dis, 2006. 194 Suppl 1: p. S51-8.

- Lee, T.J., et al., BioWarehouse: a bioinformatics database warehouse toolkit.BMC Bioinformatics, 2006. 7: p. 170.

- Buneman, P., S. Khanna, and W.-c. Tan, Why and Where: A Characterization of Data Provenance. Proc. of the Intl. Conf. on Database Theory (ICDT), 2001: p. 316-330.

Page 137: BANCO DE DADOS EM BIOINFORMÁTICA - IME-USP · SQL commands. Um banco de dados oferece ... •Modelagem e gerenciamento dos dados

BANCO DE DADOS EM BIOINFORMÁTICA

Márcio K. Oikawa

UFSCar

[email protected]