Unidade 1 - Banco de Dados

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 44

Programa

1. Tecnologia de BD
2. Modelo Entidade-Relacionamento
3. Modelos Relacionais
4. SQL
5. Projeto de Banco de Dados
6. Acesso a BD
7. Restrições de Integridade em BDR
8. Projeto Físico de Banco de Dados
2
1.1 Conceitos Básicos

•Dado: fato do mundo real que


possui um significado no
contexto de uma aplicação. Ex.:
data de nascimento.
•Informação: fato útil que pode
ser extraído a partir dos dados.
Exemplo: idade
3
1.1 Conceitos Básicos

•Definição:
•Um banco de dados é uma coleção
de dados operacionais
armazenados usados pelas
aplicações de uma determinada
organização.

C. J. Date
4
1.1 Conceitos Básicos

•Definição:
•Um banco de dados é uma coleção
lógica e coerente de dados com
algum significado inerente.

R. Elmasri e S. Navathe

5
1.1 Conceitos Básicos

•Exemplos de dados operacionais:


•Produtos, contas, clientes, pacientes,
alunos, professores, empregados, etc...
•Exemplos de aplicações de BD:
•Sistema de Reservas Aéreas, Sistema
Bancário, Sistema de Vendas, Sistemas de
Instituições de Ensino, Sistemas de Controle
de Estoque, etc.

6
1.2 Importância de Sistemas de BD
• Processamento de arquivos (anos 60 e 70)

7
1.2 Importância de Sistemas de BD

•Problemas com essa estrutura:


• Inconsistência e redundância de dados;
• Ex.: Um dado existe em vários arquivos e muda com o
tempo.
• Dificuldade de acesso aos dados;
• Ex.: Algumas solicitações não foram previstas no
projeto.
• Isolamento de dados;
• Ex.: Arquivos podem apresentar diferentes formatos.

8
1.2 Importância de Sistemas de BD

•Problemas com essa estrutura:


• Problemas de integridade;
• Ex.: Os valores dos dados devem satisfazer certas
condições.
• Problemas de atomicidade;
• Ex.: Algumas operações só podem ser feitas por
completo.
• Problemas no acesso concorrente;
• Insegurança.

9
1.2 Importância de Sistemas de BD

•Um SGBD (Sistema Gerenciador


de Banco de Dados) é constituído
por um conjunto de dados
associados a um conjunto de
programas que acessam esses
dados.

10
1.2 Importância de Sistemas de BD

•Objetivo: proporcionar um ambiente


eficiente para recuperar e armazenar
informações de um BD.
•Maior benefício: proporcionar uma
visão abstrata dos dados.
•Ex.: Oracle, MSQL-Server, Sybase, DB2.

11
1.2 Importância de Sistemas de BD
• Estrutura de um SGBD

12
1.2 Importância de Sistemas de BD

•Soluções:
•Eliminação de redundâncias e
inconsistências;
•Maior facilidade no acesso aos dados;
•Padronização no formato dos dados;
•Manutenção de integridade mais fácil;
•Controle de transações;
•Controle de acesso concorrente;
•Aplicação de restrições de segurança.
13
1.3 Arquitetura de Três Camadas

Descreve parte do BD, de forma a simplificar a visão do


usuário, mostrando apenas o que interessa.

Esquema Externo (Nível de Visão)


Visão 1 Visão 2 Visão 3

Descreve quais dados estão


armazenados e os Esquema
relacionamentos entre eles Lógico
(Nível Conceitual).

Esquema Descreve como os dados estão


Físico fisicamente ordenados.

14
1.3 Arquitetura de Três Camadas

•Instâncias x Esquemas
• Instância do BD (ou estado do BD):
• Conjunto de informações contidas em determinado
momento em um banco de dados;
• Os dados mudam ao longo do tempo.
• Esquema do BD:
• Projeto geral do banco de dados;
• Alterado com pouca freqüência.

15
1.3 Arquitetura de Três Camadas

•Independência de dados
•Independência física de dados
• Capacidade de modificar o esquema físico
sem modificar o esquema lógico
•Independência lógica de dados
• Capacidade de modificar o esquema lógico
sem modificar o esquema de visão

16
1.4. Modelo de Dados

•Conjunto de ferramentas
conceituais para descrição de
dados, relacionamentos de dados,
semântica de dados e regras de
consistência

17
1.4. Modelo de Dados

•Um modelo de dados é composto de:


•Notação para descrição dos dados
•Conjunto de operadores para manipular
os dados
•Conjunto de regras de integridade

18
1.5. Classificação

•Quanto ao Modelo de Dados


•Modelos Lógicos com Base em Objetos
•Modelos Lógicos com Base em Registros
•Modelos Físicos

19
1.5. Classificação

•Quanto ao Modelo de Dados


•Modelos Lógicos com Base em
Objetos
•Modelo Entidade-Relacionamento
•Modelo Orientado a Objetos

20
1.5. Classificação

•Modelo Entidade-Relacionamento
• Tem por base a percepção do mundo real como
um conjunto de objetos básicos, chamados
entidades e do relacionamento entre estes
objetos.
• Uma entidade é uma “coisa” ou um “objeto” do
mundo real que pode ser identificado por outros
objetos.
• Atributos são características das entidades.

21
1.5. Classificação

•Modelo Orientado a Objetos


• Também tem por base um conjunto de objetos.
• Um objeto contém valores armazenados em
variáveis instâncias e conjuntos de códigos que
operam esse objeto, os métodos.
• Objetos que contêm os mesmos tipos de valores
e métodos são agrupados em classes.

22
1.5. Classificação

•Quanto ao Modelo de Dados


•Modelos Lógicos com Base em
Registros
•Modelo Relacional
•Modelo de Rede
•Modelo Hierárquico

23
1.5. Classificação

•Modelo Relacional
•Utiliza um conjunto de elementos
chamados de tabelas para representar
tanto os dados como a relação entre esses
dados.

24
1.5. Classificação

•Modelo de Rede
•Nesse modelo, os dados são representados
por um conjunto de registros e as relações
entre estes registros são representadas por
links (ligações), as quais podem ser vistas
pelos ponteiros.

25
1.5. Classificação

•Modelo Hierárquico
•Difere do Modelo de Rede porque tem
os registros armazenados em árvores em
vez de gráficos arbitrários.

26
1.5. Classificação

•Modelos Físicos
•Usados para descrever os dados no seu
nível mais baixo.
•Há poucos modelos físicos de dados em
uso. Os mais conhecidos são o modelo
unificado (unifying model) e o modelo de
partição de memória (frame-memory
model).

27
1.5. Classificação

•Quanto à Arquitetura
• Centralizada
• BD Centralizado
• Distribuída
• BD Cliente-Servidor - distribuição de funções
• BD Paralelo – distribuição do controle de funções
• BD Distribuído - distribuição de dados
• BD Heterogêneo - distribuição de dados
• BD Móvel - distribuição de funções e dados

28
1.6. Estrutura do Sistema

Alterações de Consultas Atualizações


Esquema

Processador de
Consultas
Gerenciador de
Transações
Sistema de
Armazenamento

Dados + metadados

29
1.6. Estrutura do Sistema
• Sistema de Armazenamento
• Gerenciador de Buffer
• Recupera dados em disco e os carrega na
memória principal como páginas
Alterações de
• 1 bloco (disco) = 1 página (buffer) Esquema Consultas Atualizações
• Gerenciador de Arquivos
• Controla o armazenamento físico em disco
Processador de
• Gerencia a alocação de espaço em disco Consultas Gerenciador de
Transações

Sistema de
Armazenamento

Dados + metadados

30
1.6. Estrutura do Sistema
• Processador de consulta
• Pré-compilador DML
• traduz comandos DML inseridos em
programas de aplicação
Alterações de
• Compilador DML Esquema Consultas Atualizações
• traduz comandos DML em instruções de
baixo nível, compreendidas pelo componente
de execução de consultas Processador de
Consultas Gerenciador de
Transações

Sistema de
Armazenamento

Dados + metadados

31
1.6. Estrutura do Sistema
• Processador de consulta
• Interpretador DDL
• interpreta os comandos DDL e registra-os em
um conjunto de tabelas que contêm os
metadados (dados capazes de descrever Alterações de
outros dados ) Esquema Consultas Atualizações

• Mecanismo de consultas
• executam instruções de baixo nível geradas Processador de
pelo compilador DML Consultas Gerenciador de
Transações

Sistema de
Armazenamento

Dados + metadados

32
1.6. Estrutura do Sistema
• Gerenciador de Transação
• Garante que o banco de dados
permaneça em estado consistente
(correto) a despeito de falhas no
Alterações de
sistema Esquema Consultas Atualizações
• Assegura que todas as transações
executem corretamente Processador de
• Propriedades ACID Consultas Gerenciador de
Transações

Sistema de
Armazenamento

Dados + metadados

33
1.6. Estrutura do Sistema
• Outras estruturas
• Arquivo de dados
• Armazena os dados do BD
• Dicionário de dados Alterações de
• Armazena os metadados relativos a Esquema Consultas Atualizações
estrutura do BD
• Índices Processador de
• Proporcionam acesso mais rápido aos itens Consultas Gerenciador de
de dados Transações
• Estatística de dados
Sistema de
Armazenamento

Dados + metadados

34
1.6. Estrutura do Sistema

Arquitetura de um SGDB. Fonte: Prof. Angelo Brayner 35


1.7. Linguagens de BDs

• DML
•Procedurais: exigem a definição de
quais dados são necessários e
como obtê-los.
•Não-procedurais: exigem apenas a
definição de quais dados são
necessários
36
1.7. Linguagens de BDs

•Linguagens de Definição de Dados


(DDL)
•define os esquemas conceitual e externo
•permite a criação / remoção / alteração
de tabelas e elementos associados
• CREATE TABLE
• DROP TABLE
• ALTER TABLE
37
1.7. Linguagens de BDs

•Linguagens de Manipulação de
Dados (DML)
•usada para recuperar dados
• SELECT * FROM <tabela>

38
1.7. Linguagens de BDs

•Linguagens de Manipulação de
Dados (DML)
•usada para inserir dados
• INSERT INTO <tabela>
VALUES ...

39
1.7. Linguagens de BDs

•Linguagens de Manipulação de
Dados (DML)
•usada para atualizar dados
• UPDATE <tabela> SET ...

40
1.7. Linguagens de BDs

•Linguagens de Manipulação de
Dados (DML)
•usada para remover dados
• DELETE FROM <tabela>

41
1.7. Linguagens de BDs

•Consulta
• Solicitação para recuperação de
informações. A parte de uma DML
responsável pela recuperação de
informações é chamada de linguagem de
consultas (query language).

42
1.8. Gerenciamento de Transações
• Transação: coleção de operações que desempenha uma
função única em uma aplicação do SGBD.
• Atomicidade: uma transação deve ser executada por inteiro;
• Consistência: uma transação só executa se o estado do BD
permanecer consistente após seu fim;
• Isolamento: a intercalação de várias transações simultâneas
não pode gerar um estado inconsistente;
• Durabilidade: após a execução com sucesso de uma
transação, as novas informações devem persistir, mesmo se
houver falha no sistema.

43
1.8. Gerenciamento de Transações

•Exemplo
• Transação: transferência de fundos (débito na
conta A e crédito na conta B).
• Atomicidade: crédito e débito devem ser
efetuadas;
• Consistência: a soma de A e B deve continuar o
mesmo;
• Isolamento: outras transações podem ser
efetuadas no mesmo instante;
• Durabilidade: após a transferência, os novos
valores de A e B devem persistir.
44

Você também pode gostar