• Nenhum resultado encontrado

Prof.: Clayton Maciel Costa

N/A
N/A
Protected

Academic year: 2021

Share "Prof.: Clayton Maciel Costa"

Copied!
37
0
0

Texto

(1)

Programação com acesso a BD

Prof.: Clayton Maciel Costa

(2)

Modelos de Dados, Esquemas e

Instâncias

(3)

Modelo de dados: Conjunto de conceitos descrevem a estrutura

de um BD:

• Abstração de dados;

• Estrutura = tipos de dados + relacionamentos + restrições (+operações => recuperação e atualização).

Esquema: Descrição (textual ou gráfica) da estrutura de um BD

de acordo com um determinado modelo de dados

;

Instância: Conjunto de dados armazenados no BD em um

determinado instante de tempo.

Modelos de Dados, Esquemas e

Instâncias

(4)

Por exemplo:

Modelos de Dados, Esquemas e

Instâncias

4

Detalhes que não interessam a estes usuários não aparecem

Modelo 1

Modelo 2

(5)

Estrutura de um banco de dados: 5 B A N C O D E D A D O S

Modelos de Dados, Esquemas e

Instâncias

(6)

6

Modelos de Dados, Esquemas e

Instâncias

(7)

7

Modelos de Dados, Esquemas e

Instâncias

(8)

8

Esquema do BD:

Armazenado no catálogo;

Mudanças muito menos frequentes.

Estado do BD:

Dados do banco em qualquer ponto do tempo;

Inicialmente vazio;

Muda frequentemente;

Validade parcialmente garantida pelo SGBD.

Modelos de Dados, Esquemas e

Instâncias

(9)

9

Nos dados

A todo momento

Diagrama

de Esquema

Novas Versões

Alterações :

Instâncias :

Estado:

Vazio 101001001001010 101010010010010 100111101010101 001001010101010 Populado / Carregado

Modelos de Dados, Esquemas e

Instâncias

(10)

Categorias de Modelo de Dados

10

MODELOS CONCEITUAIS (Alto Nível)

Descrevem a estrutura de um BD de uma

forma mais

próxima da percepção dos usuários

;

Independente de aspectos de implementação;

Conceitos: entidades, atributos, relacionamentos;

Exemplos:

Modelo entidade-relacionamento (ER);

(11)

Categorias de Modelo de Dados

11

MODELOS REPRESENTACIONAIS (Nível Intermediário)

Descrevem a estrutura de um BD da forma

como será

manipulado através de SGBD

;

Mais dependente das estruturas físicas de

armazenamento de dados;

Exemplos:

Modelo relacional;

Modelo de rede (CODASYL);

(12)

Categorias de Modelo de Dados

12

MODELOS FÍSICOS (Baixo Nível)

Descrevem como os dados são fisicamente

armazenados;

Conceitos: formatos dos registros, ordenamento dos

registros, caminhos de acesso (eficiência);

(13)

13

Características do enfoque de BD:

Isolamento de programas e dados;

Suporte de visões múltiplas de usuários;

Catálogo para armazenar a descrição (esquema) do

BD.

Arquitetura de três níveis:

Mantém independência de dados e programas;

Suporta múltiplas visões.

(14)

14

Esquema Interno

:

Descreve como os dados estão fisicamente armazenados;

Exemplo:

• Organização de arquivo:

• seqüencial-indexado, hashing, seqüencial, heap.

• Alocação em disco:

• Contígua, lista encadeada, lista encadeada utilizando índice.

• Tipo de registro:

• Fixo, variável.

Esquema Conceitual

:

Descreve quais dados estão armazenados no banco de dados;

Descreve os relacionamentos entre os dados armazenados.

Esquema Externo

:

Descreve parte do banco de dados;

• Simplificar a visão do usuário;

• “Ver” só o que interessa;

• Segurança.

(15)

15 Esquema Externo 1 Esquema Externo 2 Esquema Externo n Esquema Conceitual Esquema Interno

(Banco de Dados armazenado)

Esquema Conceitual Esquema Interno (Físico) Esquema Externo

Arquitetura de um Sistema de BD

(16)

16

Esquema conceitual

:

Estudantes (eid: string, nome: string, login: string, idade: integer,

gpa:real);

Cursos (cid: string, cnome:string, creditos:integer);

Matricula (eid:string, cid:string, nota:string).

Esquema Físico

:

Relações guardadas como arquivos desordenados;

Índices na primeira colunas de estudantes.

Esquema externo (Visão)

:

Info_Curso(cid:string, horário:string).

Arquitetura de um Sistema de BD –

Exemplo 1

(17)

17

Arquitetura de um Sistema de BD –

Exemplo 2

(18)

Capacidade de se alterar o esquema em um

determinado nível

sem

alterar o esquema (ou

esquemas) do nível imediatamente mais alto.

VANTAGEM:

Imunidade dos programas em relação a mudanças na

estrutura do banco de dados;

Um dos maiores benefícios de usar SGBD.

18

(19)

19

Independência de Dados

Habilidade de modificar

o

esquema físico

sem

causar redefinição dos

programas de aplicação

Modificações são

necessárias para

melhorar

desempenho

Habilidade de modificar

o

esquema lógico

sem

causar redefinição dos

programas de aplicação

Modificações são

necessárias quando a

estrutura lógica

da

base é alterada

(20)

20

(21)

Linguagens de Banco de Dados

Finalidade:

• garantir a especificação do esquema de um banco de dados;

• permitir consultas e atualizações sobre o banco de dados.

Componentes:

DDL - Data Definition Language:

• Utilizada para especificar o esquema de um BD;

• Expressões da DDL:

• Interpretadas (compilados) gerando a especificação de um conjunto de tabelas;

• A especificação das tabelas é armazenada no catálogo do banco de dados.

• Exemplo (SQL):

create table Empregado

(matr integer not null,

nome varchar(35), salario real,

(22)

Linguagens de Banco de Dados

Componentes (cont.)

DML - Data Manipulation Language:

• Utilizada para permitir:

• Consultas sobre um BD

• Exemplo (SQL)

select nome from Empregado where salario > 7000

• Inserções em uma tabela

• Exemplo (SQL)

insert into Empregado values(123, “Bárbara”, 5000.00)

• Remoções em uma tabela

• Exemplo (SQL)

delete from Empregado where matr=14

• Atualizar valores de atributos de uma tabela

• Exemplo (SQL)

update Empregado set salário=salário*1.15 where salário<1500.00

22 DML

Procedural

- requer a especificação de quais dados devem ser acessados e como devem ser acessados

Não procedural

- requer somente a especificação de quais dados devem ser acessados

(23)

Linguagens de Banco de Dados

Componentes (cont.)

VDL – View Definition Language:

Utilizada para criar visões de usuários

Exemplo (SQL):

Create View Info_Renda_Emp as

Select nome, salario From Empregado;

(24)

Interfaces do SGBD

24

Baseadas em menus:

Apresenta

uma lista de menus que

conduzem através da formulação

de uma solicitação.

Baseadas em formulários:

Os

usuários podem preencher as

entradas do formulário.

(25)

Interfaces do SGBD

25

Interfaces gráficas:

Exibe um

esquema para o usuário na

forma de diagramas. A consulta

é construída manipulando o

(26)

Interfaces do SGBD

26

Para usuários leigos:

Aplicações desenvolvidas por

analistas e programadores

(27)

Interfaces do SGBD

27

Para o DBA:

Ambiente onde o

DBA pode colocar em prática

todos os detalhes técnicos

definidos nos modelos, usando

comandos ou opções do

(28)

Módulos Componentes do SGBD

28

SGBD

Processador de Consultas + Sistema de Armazenamento

Processador de Consultas

Compilador DML

• Analisa sintaticamente e semanticamente comandos DML expressos em uma linguagem de consulta (ex. SQL);

• Traduz estes comandos para uma das formas de representação interna de consultas (ex. álgebra relacional).

Pré-Compilador DML

• Traduz comandos DML em chamadas a procedimentos (rotinas) na linguagem hospedeira.

Interpretador DDL

• Interpreta comandos DDL e os armazena no catálogo:

• Tabelas e descrição do banco de dados  Esquema

Mecanismo de Consultas

• Responsável pela otimização e geração de planos de execução de consultas.

(29)

Módulos Componentes do SGBD

29

SGBD

Sistema de Armazenamento

Gerenciador de Transações

• Controle de concorrência;

• Recuperação do banco de dados após falhas.

Gerenciador de Buffer

• Responsável para recuperar objetos em disco e carregá-los na memória principal em forma de páginas;

• SGBD possui uma área de buffer em memória principal.

Gerenciador de Arquivo (File System)

Responsável pelo armazenamento físico em disco; Gerencia a alocação de espaço em disco.

(30)

Módulos Componentes do SGBD

30

BD

Arquivos de dados + Índices + Catálogo

Arquivos de dados

• Armazena os dados.

Índices

• Estruturas de índices para os arquivos de dados.

Catálogo

• Armazena esquema do banco de dados (meta-dados): • Nomes das tabelas;

• Atributos de cada tabela;

• Definição de índice para uma tabela, etc…

• Armazena informações estatísticas: • Exemplo:

• Cardinalidade de uma tabela.

(31)

Módulos Componentes do SGBD

31 Esquema Consulta Programa Aplicativo Gerenciador de Transações Mecanismo de Consultas Gerenciador de Buffer Gerenciador de Arquivo Compilador DML Pre-compilador DML Sistema de Armazenamento Processador de Consultas SGBD SBD Código Objeto

aplicativos índices Arquivos de dados Catálogo BD

DBA/Projetista Usuário experiente

Programadores

Interpretador DDL

(32)

Carga (loading)

Arquivos dados  Banco de Dados.

Cópia de segurança (backup)

Para restaurar em caso de falhas.

(Re-)Organização de arquivos

Melhorar o desempenho.

Monitoramento do desempenho

Fornece estatísticas para o DBA: informações sobre

desempenho  reorganização

Utilitários do Sistema de Banco de

Dados

(33)

Ferramentas, Ambientes de Aplicações e

Facilidades de Comunicações

33

Software de comunicação

: Utiliza os recursos disponíveis na rede.

Ferramentas

: SQL Power Architect, DbDesigner , PowerDesigner, etc...

(34)

Classificação dos SGBDs

34

Quanto ao modelo de dados adotado:

• De rede;

• Hierárquicos;

Relacionais;

• Orientados a objetos;

• Objeto-relacionais.

Quanto ao número de usuários suportados:

• Monousuários;

• Multiusuários.

Quanto à localização dos dados:

• Centralizados;

(35)

35

Monousuário

x

Multiusuário

(36)

Exemplo de um BD relacional

(37)

FIM

Referências

Documentos relacionados

Por exemplo, um usuário no sistema auxiliar cria uma solicitação, conhecida como consulta, de dados do banco de dados, e a aplicação auxiliar envia a solicitação através da

O Plano Municipal de Emergência de Proteção Civil de Vila Franca de Xira (PMEPCVFX) é um plano geral, da responsabilidade da Câmara Municipal de Vila Franca de Xira

Conjunto de dados estruturados que identificam os dados de um determinado documento e que podem fornecer informação sobre o modo de.. descrição, administração, requisitos legais de

O empregador ou o trabalhador titular de contas vinculadas FGTS, podem obter, via Internet, no endereço eletrônico www.caixa.gov.br os extratos, informação de saldo e informação

Para esta dissertação será utilizado algum hardware de eletrónica de potência previamente desenvolvido no GEPE, e o sistema de controlo será implementado no DSP

Tome cuidado enquanto estiver a tomar Mirtazapina Aurobindo em associação com: Antidepressivos, tais como ISRS, venlafaxina e L-triptofano, ou triptanos (usados para o tratamento

Na tela de Imóveis o corretor poderá consultar os imóveis fazendo a combinação de busca que desejar, buscar todas as fichas, assim como fazer o cadastro e alteração da ficha

Para criar uma assinatura, cadastre um contrato para o cliente com o Plano do tipo Antivírus Saiba mais sobre criação de contrato em Criar Contrato. Ativação de licenças