Você está na página 1de 26

DIM0434

Conceitos e
Arquitetura
Marcel Oliveira

Na aula de hoje...
Terminologia e conceitos bsicos
Modelos de dados, conceitos,
instncias
Arquitetura de SGBD
Tipos de interface e linguagens
oferecidas por um SGBD
Viso geral de tipos de arquiteturas
cliente/servidor
Classificao dos tipos de pacotes
SGBD

Modelos de Dados
Permite abstrao de dados
Ocultam detalhes do armazenamento
dos dados

Conjunto de conceitos usados para


descrever a estrutura e as
operaes bsicas de um BD
Tipos de dados
Relacionamentos
Restries

Modelo de Dados
Informaes adicionais
Operaes bsicas
Recuperao e atualizao

Aspectos dinmicos (comportamento)


Operaes definidas pelos usurios
CALCULE_IRA

Modelos de Dados
Categorias
Modelos de dados conceituais
Alto nvel
Descrevem os dados como os usurios os
percebem

Modelos de dados representacionais


Implementao
Podem ser estendidos e utilizados pelos
usurios finais
No esto distante do modelo fsico

Modelos de dados fsicos


Baixo nvel
Descrevem os detalhes de como os dados
esto armazenados no computador

Modelos de Dados
Conceituais
Utiliza conceitos como:
Entidades
Atributo
Relacionamentos
Generalizao/Especializao

Modelos de Dados de
Implementao
So os mais utilizados pelos SGBD
comerciais
Exemplos
Modelo de dados
relacional
Modelos legados
Rede
Hierrquico

Modelo de dados OO
Mais prximos dos modelos conceituais, sendo
usado algumas vezes como tal

Modelos de Dados Fsicos


Descrevem
Como os dados esto armazenados
em arquivos no computador
Formato do registro
Ordem dos registros
Rotas de acesso

Esquemas, Instncias e
Estados de BD
Esquema de BD (Inteno)
Descrio do BD definida durante o projeto
do BD
Dada ao SGBD na construo do BD
Poucas alteraes
Diagrama esquemtico
Nome dos tipos de registro, itens de
dados, e restries
Construtores

Tipos e Relacionamentos ???

Esquemas, Instncias e
Estados de BD
Estado do BD (Extenso)
Snapshot em um determinado
momento dos dados que esto no BD
Inicialmente vazio
Conjunto corrente de instncias
Estado Final

Estado Inicial

Insero
Remoo
Alterao
T1

T2

Esquemas, Instncias e
Estados de BD
Estado do BD (Extenso)
SGBD responsvel por verificar que
cada estado vlido
SGBD armazena descrio dos
construtores e restries
Estado Final

Estado Inicial

Insero
Remoo
Alterao
T1

T2

Esquemas, Instncias e
Estados de BD
Evoluo do esquema
Alterao do esquema do BD
Evoluo dinmica suportada pela
maioria dos BDs modernos

Arquitetura de Trs
Esquemas
Revendo caractersticas da
abordagem BD
Separao de programas e dados
Suporte a mltiplas vises de
usurios
Uso de catlogo para armazenar
esquema do BD

Arquitetura trs esquemas


Proposta para auxiliar a realizao e
visualizao dessas caractersticas

Arquitetura de Trs
Esquemas
Esquemas
Descreve estrutura de
de armazenamento
do
externos
BD para
(vises
todosde
os
fsico do BD
usurios
usurios)
- Entidades
- Tipos de dados
- Conexes
- Operaes
- Restries
Geralmente utiliza
modelo de dados
representacional

Arquitetura de Trs
Esquemas
A maioria dos SGBDs no separa
os trs nveis completamente, mas
oferecem suporte aos trs nveis
de alguma maneira
Detalhes do nvel fsico no esquema
conceitual
Esquemas externos especificados no
mesmo modelo do nvel conceitual

Arquitetura de Trs
Esquemas
Esquemas so apenas descries
dos dados
O nvel fsico que existe
Mapeamentos

Independncia de Dados
Independncia lgica
Capacidade de alterar o esquema
conceitual sem alterar o esquema
externo ou programa

Expanso do BD
Alterao de
restries
Reduo do BD

Independncia de Dados
Lgica
Exemplo

Nvel Externo
Nvel Conceitual
ALTERAR
Definio da viso
Mapeamentos

Independncia de Dados
Independncia fsica
Capacidade de alterar o esquema
interno sem alterar o esquema
conceitual

Reorganizao dos
arquivos fsicos
para melhorar
desempenho

Independncia de Dados
Mapeamentos geram overhead em
consultas
Poucos SGBDs tm sido
implementado dessa maneira

10

Linguagens de SGBD
Linguagem de Definio de Dados
(DDL)
Usada pelos DBA e pelos projetistas para
definir os esquemas conceitual e interno do
BD

Linguagem de Definio de
Armazenamento (SDL)
Usada em BDs que separam claramente o
esquema conceitual do interno para
especificar o ltimo

Mapeamentos entre esquema


conceitual e interno feito usando
quaisquer uma dessas linguagens

Linguagens de SGBD
Linguagem de Definio de Vises
(VDL)
Seria usada para especificar vises e
seus mapeamentos
Porm na maioria dos SGBD a DDL
usada na definio dos esquemas
conceitual e externo

Linguagem de Manipulao de
Dados (DML)
Usada para manipular o BD
Recuperao, insero, remoo e
modificao

11

Linguagens de SGBD
Nos SGBDs atuais, os tipos de
linguagens so consideradas
linguagens no distintas
Linguagens integradas
Exemplo: SQL
DDL + VDL + DML + Comandos para...
Restries, evoluo de esquema, etc

SDL foi removida da SQL para mant-la


apenas nos nveis conceitual e externo

Linguagens de SGBD
Tipos de DML
Baixo nvel
Embutida em uma LP de propsito geral
Comando DML precisa ser embutido na
LP
Devem ser identificados, extrados e
processados pelo SGBD

Recuperam um registro por vez


Precisam usar construtores da LP como
loops para processar conjunto de
registros

12

Linguagens de SGBD

Linguagens de SGBD
Tipos de DML
Alto nvel
Usadas para especificar operaes
complexas no BD
Muitos SGBD oferecem interfaces para
execuo interativa
Comando DML podem ser embutidos em
uma LP
Recuperam conjuntos de registro por vez
Chamadas declarativas
Declara quais dados recuperar

13

Linguagens de SGBD
Embutindo a DML em uma LP
LP
Linguagem hospedeira

DML
Sublinguagem de dados
Linguagem de consulta (se usada de
maneira iterativa e isoladamente)

Interfaces do SGBD
Interfaces baseadas em menu para
clientes Web

14

Interfaces do SGBD

Interfaces baseadas em
formulrios
Exibio de formulrios para
cada usurio
Alguns SGBDs possuem
linguagens para especificao
de formulrios
Exemplo: formulrios do Access

Interface grficas para


usurios (GUI)
Exibe esquema para usurio
para formulrio diagramtico
Usurio especifica consulta
manipulando o diagrama

Interfaces do SGBD
Interfaces com linguagem natural
Query em linguagem natural
Tentativa de interpretao
Inicial
Iterativa

Interface para usurios parametrizveis


Interface especial para cada tipo de
usurios permitindo uso mnimo de teclas
Exemplo
caixas de banco
ATM para clientes do banco

Interface para o DBA

15

Mdulos Componentes do
SGBD

Utilitrios do SGBD
Carregamento
Usado para carregar arquivo de
dados existentes para dentro do BD
Ferramentas de converso

DATA

CONVERSOR

Formato do Arquivo Fonte

Estrutura do BD

16

Utilitrios do SGBD
Backup
Dumping
Incremental

Reorganizao
Busca melhora de desempenho

Monitoramento de desempenho
Estatsticas de desempenho e uso

Classificao e
Compresso de dados

Outras Ferramentas
Ferramentas CASE para fase de
projeto
http://www.databaseanswers.org/mod
elling_tools.htm
Modelo E-R

BRModelo
ERWin
Dia
Lucid Chart

17

Outras Ferramentas
Relacional

Microsoft Access
PhPMyAdmin
Quantum DB
MySQL Workbench

http://en.wikipedia.org/wiki/Comparison_of_database_tools

SGBDs
Access

DB2
Firebird

PostgreSQL

Fonte em 19/02/2013 : http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems

18

SGBDs

Fonte em 08/02/2010 : http://en.wikipedia.org/wiki/Comparison_of_relational_database_management_systems

Outras Ferramentas
Ambiente de desenvolvimento
Plug-ins eclipse
http://quantum.sourceforge.net/

19

Outras Ferramentas
Softwares de comunicao
Permitem a comunicao remota com o BD
Usurio <> BD
BD <> BD

DB/DC (DataBase/Data Communication)

Evoluo dos SGBDs


Evoluo reflete tendncias da
computao em geral
Mainframes

PCs / Workstations
Clientes

Redes de Comunicao

Servidores

BD Monolticos

WEB

PRINTER

FILES

BD Modulares

20

Arquitetura SGBD
Centralizada
Motivada pelo alto custo das
mquinas

Arquitetura ClienteServidor
Grande nmeros de componentes
computacionais conectados via
rede

21

Arquitetura ClienteServidor Duas Camadas


Interface com Usurio / Aplicaes

Padro ODBC
Open Database Connectivity

Conexo

Servido de Consultas/Transaes
(Servidor SQL)

Arquitetura ClienteServidor Duas Camadas


Cliente
Aplicao
JDBC-ODBC Bridge

Driver ODBC
DB API

Servidor
Servidor de Consultas/Transaes
(Servidor SQL)

22

Arquitetura ClienteServidor Duas Camadas

Arquitetura ClienteServidor Trs Camadas

Regras de negcio
Incremento de
segurana

23

Classificao dos SGBD


Vrios critrios so utilizados
Modelo de dados
Modelo Relacional
Mais utilizado

Modelo de Objetos
No muito difundido

Modelo Objeto-Relacional
Evoluo do relacional

Modelo Hierrquico
Modelo em Rede

Classificao dos SGBD


Nmero de usurios
Mono-usurio
Multi-usurio

Nmero de stios
Centralizado
Distribudo
Homogneos: usam o mesmo software
de SGBD em todos os stios
Heterogneos: tendncia atual

Confederado: SGBD fracamente


acoplados com autonomia local

24

Resumo
Introduo aos principais conceitos de
sistemas de BD
Modelos de dados e seus nveis

Intenso x Extenso
Arquitetura em trs esquemas
Interno, Conceitual, Externo
Mapeamentos

Tipos de linguagem de BD
SDL, DDL, VDL, DML

Tipos de interface do SGBD


Mdulos componentes do SGBD
Arquiteturas para aplicaes de BD
Classificao de BD

Leitura
Captulo 2

25

26