Sei sulla pagina 1di 22

Conceitos de Bancos de Dados

Andr Luiz do Vale Soares

15/04/2010

Roteiro
Conceitos de BD e SGBD Caractersticas do Uso de BDs Papis em um ambiente de BDs Vantagem da Utilizao de SGBDs Esquemas, Instncias e Estado de um Banco de Dados Arquitetura Trs Esquemas para Bancos de Dados Linguagens de Bancos de Dados Arquiteturas de SGBDs Classificao de SGBDs
15/04/2010 2

Conceitos Fundamentais
Dado
fato do mundo real que est registrado e possui um significado implcito no contexto de um domnio de aplicao
Exemplos: endereo, data de nascimento, nome

Informao
fato til que pode ser extrado direta ou indiretamente a partir dos dados Exemplos: Qual a idade da pessoa ? Ela mora prximo instituio ?

15/04/2010

Banco de Dados
Coleo de dados inter-relacionados:
Persistentes Possuem significado implcito Representam algum aspecto do mundo real Possuem usurios com interesse nos dados, para gerao de informao

15/04/2010

Sistema Gerenciador de Bancos de Dados Conjunto de programas que permite a criao e manuteno de um ou mais bancos de dados Exemplos:
Oracle 10G, SqlServer 2005, MySql, etc.

Sistema de Banco de Dados: Banco de Dados + SGBD

15/04/2010

Caractersticas do Uso de Bancos de Dados Natureza Autodescritiva do Sistema de Banco de Dados: Metadados Isolamento entre Programas e Dados e Abstrao de Dados: Independncia Suporte para mltiplas vises dos dados Compartilhamento de dados Processamento de Transaes
Atomicidade Isolamento Persistncia

15/04/2010

Vantagens do Uso de SGBDs


Controle de Redundncia Restrio de Acesso Armazenamento de Estruturas para o processamento eficiente de consultas Cpia e Restaurao Representao de Relacionamentos Complexos entre os dados Restries de Integridade
15/04/2010 7

Quando no usar um SGBD ?


Aplicaes Simples
Lidam com poucos dados operacionais, que podem ser mantidos em arquivos

Aplicaes que fazem processamento pesado, mas no requerem gerenciamento dos dados operacionais
Exemplo: Aplicaes cientficas

Quando o custo alto e no compensa


Treinamento, aquisio de hardware e software

15/04/2010

Papis em um ambiente de SBD


Administradores de Bancos de Dados (DBAs)
Criam os bancos de dados nos SGBDs e mantm o esquema interno, alm de controlar o acesso aos bancos de dados

Projetistas de Bancos de Dados


Definem o esquema conceitual do banco de dados

Analistas de Sistemas e Programadores de Aplicao


Identificam e implementam as regras de negcio para manipulao dos dados no SBD

Administrador do Dado Usurios Finais


Mantm e utilizam os bancos de dados atravs de aplicativos

15/04/2010

Esquemas, Instncias e Estado


Esquema: descrio do banco de dados, sob um determinado contexto
Pode ser apresentado sob a forma de um diagrama esquemtico formado por construtores

Instncia: dados que cada um dos construtores possui em um determinado instante Estado: Conjunto de todas as instncias no banco de dados Define-se o Esquema de um banco de dados, para que os usurios finais possam incluir instncias para seus contrutores, alterando assim o estado do banco de dados a cada momento
15/04/2010 10

Exemplo de Estado de um BD
Estado do banco de dados CONCURSO

PROFESSOR Nome Joyce Martins Mendes Battaglia Jos Luiz de Souza Pio Ernande Ferreira de Melo Edjair de Souza Mota Denis Gabos Guiou Kobayashi
PROVAS_CANDIDATO Inscrio EST-0040 EST-0040 EST-0050 EST-0060 EST-0060
BANCA Area Computao Computao Matemtica Subarea 05.03.05 05.03.06 05.02.01

Titulao Doutora Doutor Mestre Doutor Doutor Doutor

CANDIDATO Inscrio Nome RG_numero RG_expedidor RG_UF EST-0040 Andr Luiz do Vale Soares 0999717-2 SSP AM EST-0050 Flvio Jos Mendes Coelho 1234567-8 SSP PA EST-0060 Danielle Pompeu Noronha 1112223-3 SSP AM Universidade UNIP/SP PRO VA A re a S u b a re a T ip o D a ta C o m p u ta o 0 5 .0 3 .0 5 E s c rita 0 2 /1 2 /2 0 0 7 UFAM C o m p u ta o 0 5 .0 3 .0 5 D id tic a 0 5 /1 2 /2 0 0 7 UEA C o m p u ta o 0 5 .0 3 .0 6 E s c rita 0 2 /1 2 /2 0 0 7 UFAM C o m p u ta o 0 5 .0 3 .0 6 D id tic a 0 6 /1 2 /2 0 0 7 USP M a te m tic a 0 5 .0 2 .0 1 E s c rita 0 9 /1 2 /2 0 0 7 UF do ABC M a te m tic a 0 5 .0 2 .0 1 D id tic a 1 1 /1 2 /2 0 0 7

Area Computao Computao Computao Matemtica Matemtica

Subarea 05.03.05 05.03.05 05.03.06 05.02.01 05.02.01

Tipo Escrita Didtica Escrita Escrita Didtica

BANCA_MEMBROS Area Computao Computao Computao Computao Matemtica Matemtica

Subarea 05.03.05 05.03.05 05.03.05 05.03.06 05.02.01 05.02.01

Membro Joyce Martins Mendes Battaglia Ernande Ferreira de Melo Jos Luiz de Souza Pio Edjair de Souza Mota Denis Gabos Guiou Kobayashi

Presidente Joyce Martins Mendes Battaglia Edjair de Souza Mota Denis Gabos

PROVA_ESCRITA_QUESTOES Area Computao Computao Computao Matemtica

Subarea 05.03.05 05.03.05 05.03.06 05.02.01

Tipo Questao Enunciado Escrita 1 Fale sobre Modelos Escrita 2 Exemplifique modelos Escrita 1 Fale sobre QuickSort Escrita 1 Prove que P = NP

AVALIACAO

15/04/2010

Professor Jos Luiz de Souza Pio Edjair de Souza Mota Edjair de Souza Mota Denis Gabos Guiou Kobayashi

Area Computaao Computaao Computaao Matemtica Matemtica

Subarea 05.03.05 05.03.06 05.03.06 05.02.01 05.02.01

Inscrio EST-0040 EST-0050 EST-0050 EST-0060 EST-0060

Tipo Escrita Escrita Didtica Escrita Didtica

Nota 6,0 7,0 8,5 9,2 8,4

11

Arquitetura de Trs Esquemas para SBDs


Usurios Finais Viso Externa Viso Externa

Nvel Externo
Mapeamento externo/conceitual

Nvel Conceitual
Mapeamento conceitual/interno

Esquema Conceitual

Nvel Interno

Esquema Interno

15/04/2010

Banco de Dados Armazenado

12

Independncia de Dados
Independncia Lgica
Capacidade de alterar o esquema conceitual sem mudar o esquema externo ou os programas

Independncia Fsica
Capacidade de mudar o esquema interno sem alterar esquema conceitual (nem o externo, consequentemente)
15/04/2010 13

Linguagens de SGBD:
DDL (Data Definition Language)
Linguagem de Definio de Dados Utilizada para definir o esquema conceitual

VDL (View Definition Language)


Linguagem de Definio de Vises Utilizada para definir o esquema externo

SDL (Storage Definition Language)


Linguagem de Definio de Armazenamento Utilizada para definir o esquema interno

DML (Data Manipulation Language)


Linguagem de Manipulao de Dados

15/04/2010

14

Arquiteturas de SGBDs
Arquitetura SGBD Centralizada

15/04/2010

15

Arquiteturas de SGBDs
Arquitetura SGBD Centralizada

15/04/2010

16

Arquiteturas de SGBDs
Arquitetura SGBD Centralizada
Funcionalidades do SGBD, Execues dos programas e Processamento de interface com o usurio em uma mesma mquina Utilizada em computadores de grande poder de processamento (mainframes)

15/04/2010

17

Arquiteturas de SGBDs
Arquitetura Cliente/Servidor de Duas Camadas para SGBDs

15/04/2010

18

Arquiteturas de SGBDs
Arquitetura Cliente/Servidor de Duas Camadas para SGBDs
Programas e interface com o usurio processadas na mquina cliente Funcionalidades do SGBD processadas em uma mquina servidora (geralmente referenciado como servidor de dados ou servidor SQL)

15/04/2010

19

Arquiteturas de SGBDs
Arquitetura Cliente/Servidor de Trs Camadas para Aplicaes Web

15/04/2010

20

Arquiteturas de SGBDs
Arquitetura Cliente/Servidor de Trs Camadas para Aplicaes Web
Interface com o usurio (e algumas regras de negcio especficas) processadas na mquina cliente Regras de negcio (genricas), conexo com o SGBD e verificao de credenciais do usurio processadas em um servidor de aplicaes Funcionalidades do SGBD processadas no servidor de dados

15/04/2010

21

Classificao dos SGBDs


Quanto ao modelo adotado
Relacional, Orientado a Objeto, Objeto-Relacional, etc.

Quanto distribuio dos dados


Centralizados ou Distribudos

Quanto autonomia
Homogneos ou Heterogneos

Quanto ao uso
Propsito Geral ou Propsito Especial (Transacional, Analtico, etc.)

Quanto ao Custo
Freeware (para uso particular), de baixo custo (para uso restrito), de alto custo (para uso corporativo ou para sistemas web)

15/04/2010

22