Você está na página 1de 37

Banco de Dados

Introdução

Maria Salete Marcon Gomes Vaz

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 1


Sistema Gerenciador de Banco de Dados

Coleção de Dados Inter-relacionados

Conjunto de Programas para acessar os dados

SGBD contêm informações sobre um empresa em


particular

SGBD provê um ambiente tanto conveniente quanto


eficiente para tratamento das informações do banco de
dados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 2


Visão Geral de SGBD
Descreve Estado

Atualiza Valores
Mundo Real Mini-mundo

Organiza Define Descreve


Observa idéias
Modelo Conceitual
BD
Modelo Lógico

Cria
Administrador de Modelo Físico
Banco de Dados
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 3
Visão Geral de SGBD
Gerenciamento de Dados
Envolve definição de estruturas e mecanismos para manipulá-las

Um sistema Gerenciador de Banco de dados consiste de:


Coleção de programas que permite ao usuário criar e manter um Banco
de Dados

Aplicação de BD - programa que permite recuperar, ver e atualizar as


informações armazenadas pelo SGBD

Consiste em uma coleção de dados inter­relacionados e de


um conjunto de programas para acessá­los

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 4


Visão Geral de SGBD
Coleção de Dados Contém Informações
sobre um
empreendimento
particular
Banco de Dados

Conjunto de Programas para:


Descrever
Armazenar
Manipular
Interrogar e Tratar

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 5


Visão Geral de SGBD
Abstração de Dados
Simplifica a Interação do Usuário com o Sistema

Visão 1 Visão 2 ... Visão n

Visão Conceitual

Visão de Armazenamento

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 6


Visão Geral de SGBD
Arquitetura ANSI/SPARC

Esquema Esquema Esquema Nível


Externo 1 Externo 1 ... Externo 1 Externo

Nível
Esquema Conceitual
Conceitual

Esquema Físico Nível


Interno

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 7


Visão Geral de SGBD

Níveis de Abstração

 Nível Físico – descreve como um registro é armazenado

 Nível Lógico – descreve os dados armazenados no banco de dados e


os relacionamento entre os dados

 Nível de Visão – programas de aplicação que escondem detalhes dos


tipos de dados
 Visões podem esconder informação por questões de segurança

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 8


Visão Geral de SGBD
Objetivo dos SGBD
Prover um ambiente que seja conveniente e eficiente para
recuperar e armazenar informações de Bancos de Dados
Eliminar ou Reduzir
Redundância e Inconsistência de Dados
Controle de redundância - garantindo consistência
Dificuldade no Acesso aos Dados
Isolamento dos Dados
Permitir o compartilhamento dos dados
Anomalias de Acesso Concorrente
Problemas de Segurança
Fornecer Backup e Recuperação

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 9


Visão Geral de SGBD
Funções desempenhadas
Integridade
Recuperação,
Concorrência,
Segurança
Alguns Conceitos
Transação: execução de um programa que acessa ou modifica o
conteúdo de um BD
Propriedades Desejáveis das Transações:
Atomicidade: ou a transação foi ou não foi executada
Consistência: execução de uma transação deve tornar o BD em
um estado consistente

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 10


Visão Geral de SGBD
Modelo de Dados Baseados em Objetos
Uma Coleção de Ferramentas Entidade-
Conceituais para Descrição de Relacionamento (E-R)
Dados, Relacionamentos entre Semânticos
eles, a Semântica dos Dados e Orientados a Objetos
Restrições de Consistência

Modelos Lógicos
Baseados em Registros
Hierárquico
Em Rede
Relacional

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 11


Visão Geral de SGBD
Instâncias
Coleção de Informações armazenadas no banco de
dados em um determinado instante
Esquema
Projeto geral do BD
Independência de Dados
Habilidade de modificar a definição de um esquema
em um nível sem afetar a definição do esquema em
um nível mais alto
Independência Física de Dados
Independência Lógica de Dados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 12


Visão Geral de SGBD
Linguagens
Linguagem de Definição de Dados - DDL
Especifica o Esquema do BD

Linguagem de Manipulação de Dados - DML


Manipula os dados organizados por um modelo de dados apropriado

Linguagem de Consulta - QL
Porção da linguagem de manipulação que envolve a recuperação de
informações

Linguagem de 4a Geração
Combina estruturas de controle de Linguagens de Programação com
estruturas para manipulação de elementos de um Banco de Dados
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 13
Evolução dos SGBDs

Com
2 4
Consulta

Sem
Consulta 1 3

Dados Simples Dados Complexos


2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 14
Evolução dos SGBDs
Gerenciador de Arquivos

Com
Consulta 2 4
Bom desempenho
Inconsistência
Redundância e ReplicaçãoSem Gerenciador
Segurança Consulta de arquivos 3
Integridade
Isolamento dos dados Dados Simples Dados Complexos
Dificuldade de acesso aos dados
Anomalias no acesso concorrente
Utilização de linguagens de programação como COBOL e PL1

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 15


Evolução dos SGBDs
SGBD
SGBD Relacionais Com
Relacionais
Consulta 4

Pobre semanticamente
Linguagem de consulta Sem Gerenciador
Segurança Consulta de arquivos 3
Ferramentas de interfaces
Aplicação Comercial Dados Simples Dados Complexos
Dados representados segundo tabelas
Modelo formal apoiado na teoria dos conjuntos
Tecnologia relacional
Exemplos: DB2, INFORMIX, SYBASE, INGRES

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 16


Evolução dos SGBDs
SGBD Orientados a Objetos
Com SGBD
Consulta Relacional 4
Rico semanticamente
Abstração
Novas aplicações Sem Gerenciador SGBD Orientado
Multimídia Consulta de arquivos a Objetos
hipertexto
Herança e reusabilidade Dados Simples Dados Complexos
Grande integração com uma linguagem de programação
Melhor ligação analista x usuário
Exemplos: ObjectStore, Orion, Ontos, O2 e Iris

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 17


Evolução dos SGBDs
SGBD Objeto­Relacional

Objetos Complexos Linguagem de Consulta

Otimizador de consultas
Extensão de tipo básico em Com SGBD SGBD Objeto­
Contexto SQL Consulta Relacional Relacional
Herança em Contexto SQL
Linguagem de consulta estendida à
objetos complexos (SQL3)
Suporte para regras Sem Gerenciador SGBD Orientado
Consulta de arquivos
Exemplos: DB2/6000 C/S, a Objetos
ILLUSTRA, ORACLE
Dados Simples Dados Complexos

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 18


Evolução dos SGBDs
Classificação
A partir
Fim dos Fim dos do meio da
anos 60 anos 70 década de 80

Primeira Geração Segunda Geração Terceira Geração


Hierárquico Relacional Semânticos
Rede Relacionais Estendidos
Orientados a Objetos

Banco de Dados Convencionais Banco de Dados Não


Convencionais

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 19


Modelo de Dados
Dados
Fatos registrados de fenômenos sobre os quais obtemos
informações do mundo real

Informações
Conhecimento que pode ser inferido dos dados

Registro de dados
Um meio de comunicação
Figura, linguagem
Um meio de armazenamento
Pedra, papel, bits

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 20


Modelos de Dados
Uma coleção de ferramentas para descrever
 Dados e Relacionamentos de dados
 Semântica de dados
 Restrições de consistência dos dados

Modelos lógicos baseados em objetos


 Modelo Entidade/Relacionamento
 Modelo Orientado a Objetos
 Modelo Semântico
 Modelo Funcional

Modelos Lógicos baseados em registros


 Modelo Relacional
 Modelo de Rede
 Modelo Hierárquico

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 21


Modelo de Dados
Transformar aspectos do mundo real em um modelo de dados
formal
Principais modelos de dados
Genéricos: Entidade/Relacionamento (E/R)
Específicos: Relacional, Orientados a Objetos
Componentes de um Modelo de dados
Uma coleção de tipos de objetos
Blocos básicos de construção de modelos (estruturas)
Exemplos: relações, domínio (modelo relacional)
Uma coleção de operadores
Meio de manipular e atualizar os tipos de objetos
Exemplo: Álgebra relacional
Uma coleção de regras de integridade
Restringem o conjunto de estados válidos dos tipos de objetos
Exemplo: valores de chave primária devem ser únicos e não nulos

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 22


Modelo de Dados
Estruturas
Representam atributos cujos valores são interpretações de objetos
do mundo real e suas propriedades

Inteiro Domínio

Idade Quantidade Número de veículos

Atributos

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 23


Modelo de Dados
Operações
Especificam uma ação - O que é para ser feito
acessar
Inserir
Remover
Atualizar
Transformam um estado de Banco de dados em outro estado

Preservando Propriedades do Esquema do BD


e do Modelo de Dados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 24


Modelo de Dados
Restrições
Razões Semânticas
Permitem que os esquemas reflitam mais precisamente as situações
do mundo real
De integridade
Permitem que o SGBD restrinjam os estados possíveis do BD àqueles
que respondem às restrições
Tipos básicos
Inerentes
Parte integral das estruturas do modelo
Exemplo: conjunto e relações (ausência de duplicidade e ordem)
Explícitas
Estática: expressam regras para determinar estados válidos do BD
Dinâmicas: especificam que transições de estados são permitidos
(dirigidas a operações)

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 25


Modelo de Dados
Ciclo de Desenvolvimento de Sistemas de Banco de Dados
Investigação dos
Dados

Modelagem dos
Dados

Projeto

Implementação

Monitoramento e
Manutenção

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 26


Modelo Entidade/Relacionamento
Exemplo

TRABALH
CHEFIA
A fone
chefe
codd nomd
subordinado 1
1 N datai

EMPREGADO DEPARTAMENTO
N 1 1

1 N GERENCIA 1
code
nome
POSSU
I CONTROLA
datan
nomedp horas
codp nomp
N
N
DESENVO
DEPENDENTE LV
E M PROJETO

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 27


Modelo Relacional
Exemplo

EMPREGADO(code,nome,codd,codc)
DEPARTAMENTO(codd,nomd,code,datai)
FONE_DEPARTAMENTO(code,fone)
PROJETO(codp,nomp,codd)
DESENVOLVE(code,codp,horas)
DEPENDENTE(code,nomedp,datan)

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 28


Linguagem de Definição de Dados – DDL

Especificação da Notação para definição do esquema de Banco de


Dados

Compilador DDL gera um conjunto de tabelas armazenadas em um


dicionário de dados

Dicionário de dados contém metadados – Dados que descrevem dados

Armazenamento de dados e linguagem de definição – tipo especial da


DDL no qual as estruturas de armazenamento e os métodos de acesso
usados pelo SGBD são especificados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 29


Linguagem de Manipulação de Dados – DML

Linguagem para acesso e manipulação de dados organizados por um modelo de


dados apropriado

Duas classes de linguagem


Procedural – usuário especifica quais dados são requeridos e como
recuperar esses dados

Não Procedural – usuário especifica quais dados são requeridos sem


especificar como recuperar esses dados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 30


Gerenciamento de Transações

Uma transação é uma coleção de operações que realiza uma função lógica em
uma aplicação de banco de dados

Componente de gerenciamento de transação – assegura que o banco de dados


fica consistente, resolvendo falhas do sistema e falhas de transações

Gerenciador de Controle de Concorrência – controla a interação entre transações


concorrentes para assegurar a consistência do banco de dados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 31


Gerenciamento de Armazenamento

O gerenciador de armazenamento é um módulo do programa que provê uma


interface entre os dados de baixo nível armazenados no BD e os programas de
aplicação e consultas submetidas para o sistema

O gerenciador de armazenamento é responsável pelas seguintes tarefas:


Interação com o gerenciador de arquivos

Armazenamento, recuperação e atualização eficiente dos dados

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 32


Administrador de Banco de Dados - DBA

Coordena todas as atividades do SGBD

Tem um entendimento ótimo das necessidades e recursos de


informações da empresa

Funções de um DBA
Definir esquemas
Definir estrutura de armazenamento e métodos de acesso
Modificar esquemas e organização física
Fornecer autorização de acesso ao sistema
Especificar restrições de integridade
Monitorar o desempenho e responder a trocas em requisitos

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 33


Usuários do Banco de Dados

Usuários são diferenciados de como eles interagem com o BD

Programadores de Aplicação – interagem com o sistema através de chamadas


da DML

Usuários sofisticados – formam requisitos na linguagem de consulta do BD

Usuários especializados – escrevem aplicações de banco de dados


especializadas que não são tratadas em um ambiente de processamento de
dados tradicional

Usuários navegantes – invocam um dos programas de aplicação que tem sido


escrito previamente

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 34


Visão Geral de SGBD
Usuários Programador Administrador de BD
Especialistas
Interface dos Programa de Esquema de
Consultas
Aplicativos Aplicação Banco de Dados

Programas de Pré-Compilador Compilador Interpretador


Aplicações em DML DML DDL
Código Objeto
Componente
de Execução
de Consulta

Gerenciador
Gerenciador de
de Buffer Dicionário
Transações
Índices de Dados

Gerenciador Dados
Arquivos
de Arquivos Estatísticos
de Dados
2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 35
Exercícios
1. Quais são as quatro principais diferenças entre um sistema de processamento de
arquivos e um SGBD?

2. Quais as vantagens e desvantagens de um SGBD?

3. Explique a diferença entre independência de dados lógica e física?

4. Liste cinco responsabilidades de gerenciador de banco de dados. Para cada


responsabilidade, explique os problemas que poderiam ser originados se esta
responsabilidade fosse descartada.

5. Quais as principais funções do administrador de banco de dados (DBA)?

6. Relacione os seis principais passos quem você seguiria para definir os banco de
dados de uma empresa em particular.

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 36


Bibliografia Básica
Livro Texto
Sistema de Banco de Dados. A. Silberschatz; H. F. Korth; S. Sudarschan.
Makron Books, Terceira Edição, 2006.
Livros Auxiliares
Fundamentos de Bancos de Dados. W. P. Alves. Editora Érica, 2004.
Projeto de Banco de Dados – Uma visão pratica. Felipe Machado e Maurício
Abreu. Editora Érica, 9a. Edição, 1996.
Implementação de Sistemas de Banco de Dados. H. Garcia-Molina, J. D.
Ullman e J. Widom. Editora Campus, 2001.
Fundamentos de Banco de dados – modelagem, projeto e linguagem SQL.
C. C. Guimarães. Editora Unicamp, 2003.
Introdução a Sistemas de Bancos de Dados. C. J. Date. Tradução da 8a.
Edição Americana. Editora Campus, 2003.

2007 @ Profa. Dra. Maria Salete Marcon Gomes Vaz 37

Você também pode gostar