Anda di halaman 1dari 31

SCC-240 Bases de Dados

Profa. Elaine Parros Machado de Sousa

Introduo a Sistemas
de Banco de Dados

Tpicos da aula
Evoluo dos Sistemas de Informao
Arquitetura Cliente Servidor
Desenvolvimento de Sistemas de Banco
de Dados
Three-Schema Architecture
Ciclo de Vida

USP ICMC - GBDI

Tpicos da aula
Evoluo dos Sistemas de Informao
Arquitetura Cliente Servidor
Desenvolvimento de Sistemas de Banco
de Dados
Three-Schema Architecture
Ciclo de Vida

USP ICMC - GBDI

Evoluo dos Sistemas de Informao


Sistemas de Informao baseados em
gerenciamento de arquivos
programas e arquivos orientados a cada
unidade organizacional
rotinas especficas para tarefas especficas
dados armazenados em disco, usando uma
determinada estrutura de dados

USP ICMC - GBDI

Dados
Aplicaes
Arquivo 1

Arquivo 2

Arquivo 3

Dados
Aplicaes
Arquivo 1

PROBLEMAS?????

Arquivo 2

Arquivo 3

REDUNDNCIA
Aplicao de
Produo

Arquivos de Dados
de Produo

Aplicao de
Vendas

Aplicao de
Compras

Arquivos de Dados
de Vendas

Arquivos de Dados
de Compras

Produtos

Produtos

REDUNDNCIA
Aplicao de
Produo

Produtos

INCONSISTNCIA
Aplicao de
Vendas

Insere:

Insere:

Nome: Notebook
NroSerie:1111111

Nome: Notebook
NroSerie:1111111

Fabricante: Y

Fabricante: X

Arquivos de Dados
de Produo

Produtos

Arquivos de Dados
de Vendas

Produtos

Inconsistncia de Dados
Dados em estado inconsistente

informaes incorretas ou
contraditrias so fornecidas aos
usurios

USP ICMC - GBDI

Consistncia de Dados
Consistncia estado ou carter do
que coerente, do que tem solidez,
veracidade, credibilidade,
estabilidade, realidade.
se determinado dado redundante, seu
valor sempre o mesmo

USP ICMC - GBDI

10

SIs baseados em arquivos


Outros Problemas?

Dificuldade de acesso aos dados


Isolamento de dados
localizao
formato

Anomalias no acesso concorrente


Segurana

USP ICMC - GBDI

11

Alm disso...
SIs baseados em arquivos dados gravados em
disco usando ESTRUTURAS DE DADOS
Acesso requer conhecimento destas estruturas
DEPENDNCIA DE DADOS.

15
46
63
81
97

15
16

M
99

USP ICMC - GBDI

12

Dependncia dos Dados


Vrios programas compartilhando os mesmos
dados todos devem conhecer e manipular as
mesmas estruturas
E se houver uma alterao na estrutura de dados?

TODOS OS PROGRAMAS TERO QUE SER ALTERADOS

USP ICMC - GBDI

13

Independncia dos Dados


Como tornar os programas INDEPENDENTES da
estrutura de dados?
CRIANDO UM SISTEMA QUE GERENCIE A ESTRUTURA

Aplicao 1

Sistema
Gerenciador de
Dados
Compartilhados

15

15

46
63
81
97

16

M
99

Aplicao 2
USP ICMC - GBDI

14

Independncia dos Dados


Sistema de Gerenciamento de Bases (ou Banco) de Dados

SGBD

SGBD

Aplicao 1

15
46

15
16

63
81
97

99

Aplicao 2

USP ICMC - GBDI

15

SGBD
Sistema de Gerenciamento de Bases de
Dados
conjunto de dados
base (banco) de dados

conjunto de programas para acesso e


manipulao dos dados
USP ICMC - GBDI

16

SGBD
Sistema de propsito geral
armazenar grandes volumes de dados
permitir busca e atualizao dos dados
eficincia

Manuteno de um conjunto lgico e


organizado de dados
completamente autnomo em relao s
aplicaes
USP ICMC - GBDI

17

SGBDs
Requisitos Fundamentais:
Segurana
Fsica
Lgica
Usernames e passwords
Perfis de usurio

USP ICMC - GBDI

18

SGBDs
Requisitos Fundamentais (cont):
Integridade
consistncia
validade

Nome: Joaquim Pereira


Cargo: Vigia
Salrio:R$ 230.000,00

Arquivos de
Dados

?????

Restries de Integridade!!!
USP ICMC - GBDI

19

SGBDs
Requisitos Fundamentais (cont):
Recuperao / Tolerncia a falhas
Transaes atmicas
unidades lgicas de trabalho, em geral
envolvendo vrias operaes

Registros de Log
Backup

Controle da concorrncia
gerenciamento transaes concorrentes
USP ICMC - GBDI

20

10

Por que usar SGBDs?


Vantagens:
armazenamento persistente de dados e
estruturas de dados
INDEPENDNCIA DE DADOS
CONSISTNCIA DE DADOS
acesso compartilhado (multiusurio e
concorrente) informao
distribuio de informaes

USP ICMC - GBDI

21

Por que usar SGBDs?


Vantagens:
reduz complexidade das aplicaes
segurana
controle de acesso aos dados
backup
utilizao de padres

USP ICMC - GBDI

22

11

Por que usar SGBDs?


Desvantagens
Custo pode ser alto
Um sistema a mais a ser aprendido e gerenciado

USP ICMC - GBDI

23

Curiosidades...
Dcada de 1950:
Primeiros computadores.
Programao em linguagem de mquina
Surgimento de Sistemas Operacionais e
Linguagens de Programao
Sistemas de arquivos com acesso no
sequencial
1959: Sistema RAMAC (IBM)

USP ICMC - GBDI

24

12

Curiosidades...
Dcada de 1960:
CODASYL
Conference on Data System Languages

Conceituao de SGBD e modelos de dados


Proposta do Modelo de Rede
Primeiro SGBD comercialmente disponvel Modelo Hierrquico.
IMS IBM

USP ICMC - GBDI

25

Curiosidades...
Dcada de 1970:
Proposta do Modelo Relacional.
Surgimento de prottipos de SGBDR
INGRES (UC Berkeley)
Sistema R (IBM)

Proposta do Modelo Entidade Relacionamento (MER)

USP ICMC - GBDI

26

13

Curiosidades...
Dcada de 1980:
Primeiro SGBDR de grande porte disponvel
DB2 IBM

Surge a linguagem SQL vinculada ao Sistema R


SQL torna-se padro
Modelos Orientados a Objetos

USP ICMC - GBDI

27

Curiosidades...
Dcada de 1990 em diante:
SGBDs orientados a objetos
O2
ObjectStore
Objectivity/DB
Jasmine

SGBDs objeto-relacionais
Oracle8, Oracle9, Oracle10g, Oracle 11g
PostGreSQL (open source)
Informix (IBM)

USP ICMC - GBDI

28

14

Tpicos da aula
Evoluo dos Sistemas de Informao
Arquitetura Cliente Servidor
Desenvolvimento de Sistemas de Banco
de Dados
Three-Schema Architecture
Ciclo de Vida

USP ICMC - GBDI

29

USP ICMC - GBDI

30

Evoluo

15

Evoluo

PC

USP ICMC - GBDI

31

USP ICMC - GBDI

32

Evoluo

16

Arquitetura Cliente/Servidor

Aplicaes

Dados e
Regras

SGBD

Servidor

Cliente

USP ICMC - GBDI

33

Arquitetura Cliente/Servidor
Duas camadas (two-tiers)
Aplicaes

Dados e
Regras

SGBD

Servidor
BD + parte (pequena)
da lgica de negcio

Cliente
Interface + maior parte
da lgica de negcio
USP ICMC - GBDI

34

17

Arquitetura Cliente/Servidor
Trs camadas (three-tiers)
Servidor de Aplicao

Dados e
Regras

Aplicaes-Cliente

SGBD

Servidor
BD + parte comum da lgica
de negcio

Cliente
Interface + parte
especfica da lgica
de negcio
35
USP ICMC - GBDI

Arquitetura Cliente/Servidor
Quatro camadas
Servidor de
Aplicao

Dados e
Regras

Servidor de
Interface

Aplicaes-Cliente

SGBD

Servidor

Cliente

Navegador

USP ICMC - GBDI

36

18

Tpicos da aula
Evoluo dos Sistemas de Informao
Arquitetura Cliente Servidor
Desenvolvimento de Sistemas de Banco
de Dados
Three-Schema Architecture
Ciclo de Vida

USP ICMC - GBDI

Aplicao

Aplicao

37

Aplicao

SGBD
Definio da base de
dados armazenada

Base de dados
armazenada

ESQUEMA

INSTNCIA

19

Esquema e Instncia
Banco de dados:
Esquema
Definio
Esttico (ou quase!)

Esquema

Instncia

Instncia

Manipulao
Dinmica

Esquema
Esquema pode ser definido em 3 nveis

Three-Schema Architecture

20

Three-Schema Architecture
Nvel Externo
ou de Viso

Viso 1

Viso 2

...

Viso N

Sub-Esquemas
Esquema Conceitual
e/ou Esquema Lgico

Esquema Fsico

Nvel Conceitual
ou Lgico

Nvel Interno ou Fsico

Three-Schema Architecture
Nvel Interno esquema fsico
descreve estrutura fsica de
armazenamento da base de dados
como os dados esto armazenados

21

Three-Schema Architecture
Nvel Conceitual esquema conceitual
e/ou lgico
descreve a estrutura da base de dados sem
detalhes de estrutura de armazenamento fsico
quais dados esto armazenados e como esto
relacionados

descrio do esquema conceitual/lgico:


modelo conceitual (ex: MER)
modelo de implementao (ex: Modelo Relacional)

Three-Schema Architecture
Nvel Externo sub-esquemas
define as vises dos usurios
descreve a parte da base de dados em que cada
grupo de usurios tem interesse

descrio de sub-esquemas:
modelo conceitual (ex: MER)
modelo de implementao (ex: Modelo Relacional)

22

Three-Schema Architecture
Nvel Externo
ou de Viso
mapeamento
externo/conceitual
mapeamento
conceitual/interno

Viso 1

Viso 2

...

Viso N

Nvel Conceitual
ou Lgico

Nvel Interno ou Fsico

Three-Schema Architecture
Visualizao de nveis de esquema
em sistemas de banco de dados
ABSTRAO
escondendo detalhes e complexidade
nos diferentes nveis
viso mais geral ou mais especfica

23

Arquitetura de Trs Esquemas


Three-Schema Architecture (ou
arquitetura ANSI/SPARC)
realizao e visualizao de caractersticas
importantes da filosofia de bases de dados
mltiplas vises para os usurios OK!!!!
????

armazenamento da descrio da base de dados


(esquema) em diferentes nveis de abstrao OK!!!!
independncia de dados

Independncia de Dados
Independncia de dados na arquitetura
de trs esquemas capacidade de
modificar o esquema em determinado
nvel sem afetar o esquema do nvel
superior
SGBD pode suportar:
independncia fsica
independncia lgica

24

Independncia de Dados
Nvel Externo
ou de Viso

Viso 1

Viso 2

...

Viso N

Nvel Conceitual
ou Lgico

Independncia
Fsica???

Nvel Interno ou Fsico

Independncia de Dados
Independncia fsica de dados
modificaes no esquema interno no
provocam alteraes nos esquemas lgico e
externo
por que modificar esquema interno?
quando os esquemas em nveis superiores
teriam que ser alterados?

25

Independncia de Dados
Nvel Externo
ou de Viso

Viso 1

Viso 2

...

Viso N

Nvel Conceitual
ou Lgico

Independncia
Lgica???

Nvel Interno ou Fsico

Independncia de Dados
Independncia lgica de dados
modificaes no esquema lgico no
provocam alteraes nos esquemas externos
aplicativos no precisam ser reescritos

por que modificar esquema lgico?


quando os esquemas em nveis superiores
teriam que ser alterados?

26

Nveis de Abstrao
Nvel Externo
ou de Viso

Viso 1

Viso 2

...

Viso N

Nvel Conceitual
ou Lgico

Analogia com
Linguagens de
Programao???

Nvel Interno ou Fsico

Sistemas de Banco de Dados


Ciclo de Vida
Mundo Real

Requisitos
de Dados

Coleta/Especificao
de Requisitos

Projeto Conceitual

Projeto Lgico

Anlise Funcional

Prottipo

Projeto Fsico

SGBD

Requisitos
Funcionais

Projeto

Implementao

Dados e
Metadados

Aplicao

27

Sistemas de Banco de Dados


Desenvolvimento de Software
Mundo Real

Requisitos
de Dados

Requisitos
Funcionais

Coleta/Especificao
de Requisitos

Projeto Conceitual

Anlise Funcional

Projetistas de
Interface

Projeto Lgico

Projeto

Prottipo
DBA
Pessoal de Suporte e
Operao

Projeto Fsico

SGBD

Implementao

Aplicao
Dados e
Metadados

Analistas de
Sistemas
Programadores

Usurios
Operadores de Aplicao

Sistemas de Banco de Dados


Desenvolvimento de
Sistemas de Banco de Dados

Ciclo de Vida

Mundo Real
Projetistas

de BD
Requisitos
de Dados

Coleta/Especificao
de Requisitos

Projeto Conceitual

Projeto Lgico

Projeto Fsico

SGBD

Projetistas de
Interface

Prottipo
DBA
Pessoal de Suporte e
Operao
Dados e
Metadados

Requisitos
Funcionais
Anlise Funcional

Projeto

Implementao

Aplicao
Usurios
Operadores de Aplicao

28

Desenvolvimento de Sistemas de Banco de


Dados [Elmasri]

Projeto conceitual
esquema conceitual para a base de dados
nveis conceitual/lgico e externo
baseado nos requisitos de dados
objetivos:
estrutura da base de dados
semntica
relacionamentos
restries

Desenvolvimento de Sistemas de Banco de


Dados [Elmasri]

Projeto conceitual (cont.)


independente do SGBD
pode incluir especificao em alto nvel
de:
aplicaes
caractersticas funcionais das transaes

modelo conceitual ex: MER

29

Desenvolvimento de Sistemas de Banco de


Dados [Elmasri]

Projeto lgico
esquema lgico
nveis conceitual/lgico e externo

mapeamento do modelo conceitual para


o modelo do SGBD
ex: Modelo Relacional

Desenvolvimento de Sistemas de Banco de


Dados [Elmasri]

Projeto lgico (cont.)


Passo1 mapeamento independente de
um SGBD especfico
mas... dependente do paradigma (relacional, OO,
relacional-objeto)

Passo 2 ajustes de acordo com as


caractersticas e restries do modelo
implementado por um SGBD especfico

30

Desenvolvimento de Sistemas de Banco de


Dados [Elmasri]
Projeto fsico
esquema fsico
nvel interno

estruturas fsicas de armazenamento


organizao de registros fsicos
ndices
.

critrios:
tempo de resposta
espao utilizado
nmero de transaes

Sugesto de leitura:

Captulos introdutrios dos livros citados


na bibliografia bsica da disciplina

USP ICMC - GBDI

62

31