Sistemas de Banco de Dados

Propaganda
Sistemas de Banco de Dados
Fundamentos em Bancos de Dados Relacionais
Wladmir Cardoso Brandão
www.wladmirbrandao.com
Departamento de Ciência da Computação (DCC)
Instituto de Ciências Exatas e Informática (ICEI)
Pontifícia Universidade Católica de Minas Gerais (PUC Minas)
Agradecimento pelo apoio na elaboração:
Adriane de Jesus Miranda Gomes e Victor Theles da Silva Costa
Introdução à Banco de Dados
Conceitos e Propriedades
Taxonomia e Abordagens
Projeto de Banco de Dados
Atores em Bancos de Dados
Sistema Gerenciador de Banco de Dados (SGBD)
Banco de Dados (BD)
I
Coleção de dados estruturados
I
Atende as necessidades de grupos de usuários
I
Dados → Símbolos, sinais, códigos passíveis de registro
I
Essencial na vida moderna
Presente em diferentes ambientes de negócio:
I
I
I
I
I
Saque ou depósito de dinheiro no banco
Reserva de hotel
Reserva de livros na biblioteca
Compra de produtos em supermercado
Exemplo de Aplicação de Banco de Dados
Amazon.com
I
Milhões de livros, CDs, vídeos, DVDs, jogos eletrõnicos,
roupas e outros produtos
I
Dezenas de milhões de acessos diários para efetivação de
compras
Atualização constante de:
I
I
I
I
I
Clientes cadastrados
Pedidos de compra
Produtos em estoque
Vendas de produtos
Propriedades de Banco de Dados
I
Reflete a realidade do “mundo real” dos usuários
I
“Mundo real” → Minimundo ou Universo de Discurso
I
Construído e abastecido (populado) para uma finalidade
específica
I
Coerência na coleção lógica dos dados
I
Provê compartilhamento de dados
Taxonomia de Banco de Dados: Utilização
I
Manual
I
I
I
Criado e mantido sem o uso de computadores
Exemplo → Lista telefônica
Computadorizado
I
I
Criado e mantido por um grupo de programas
Exemplo → The Human Genome Database (GDB)
Taxonomia de Banco de Dados: Aplicação
I
Tradicional → Dados na forma textual ou numérica
I
Multimídia → Imagens, áudios e vídeos
I
Geográficos → Mapas, imagens de satélite e registros
climáticos.
I
Data Warehouse → “Armazém” de dados utilizados no
processamento analítico online (OLAP) para auxílio à
tomada de decisão
I
Ativo e de Tempo Real → Processos industriais de
manufatura
Abordagens de Banco de Dados
I
Processamento em arquivo
I
I
Usuário define e implementa os arquivos necessários para
uma aplicação específica como parte da programação da
aplicação.
Sistema Gerenciador de Banco de dados (SGBD)
I
I
I
I
I
I
I
Repositório único → Dados definidos uma vez e depois
acessados por vários usuários.
Abstração de dados
Compartilhamento de dados
Isolamento entre programas e dados
Natureza autodescritiva
Suporte à múltiplas visões dos dados
Processamento de transação multiusuário
Projeto de Banco de Dados
I
Construção de modelos para implementação de bancos
de dados
I
Modelos → Representações de objetos e eventos do
mundo real
Etapas na implementação de bancos de dados:
I
1.
2.
3.
4.
5.
I
Especificação → Descrição do minimundo
Análise de requisitos → Restrições de operação
Projeto conceitual → Estruturas e restrições conceituais
Projeto lógico → Estruturas e restrições lógicas
Projeto físico → Estruturas e restrições físicas
BDs devem ser implementados, alimentados e mantidos
continuamente para refletir o estado do minimundo
Atores em Bancos de Dados
I
Administradores → DataBase Administrators (DBAs)
I
Projetistas
I
Analistas
I
Programadores
I
Usuários
Sistema Gerenciador de Banco de Dados (SGBD)
I
Coleção de programas que permitem aos usuários criar e
manter um banco de dados
I
Definição de BD → Especificar tipos, estruturas e
restrições armazenadas sob a forma de metadados no
catálogo (dicionário) do sistema
I
Construção de BD → Armazenar dados em meio
controlado pelo SGBD
I
Manipulação de BD → Consulta, atualização, inserção e
exclusão de dados
I
Compartilhamento de BD → Acesso simultâneo por
múltiplos usuários ao banco de dados
SGBD: Componentes Básicos
SGBD: Vantagens de Utilização
I
Controle de Redundância → Dados armazenados uma
única vez, sem duplicatas
SGBD: Vantagens de Utilização
I
Controle de Redundância → Dados armazenados uma
única vez, sem duplicatas
SGBD: Vantagens de Utilização
I
Backup e recuperação
I
Múltiplas interfaces ao usuário
I
Representação de relacionamentos complexos entre os
dados
I
Restrições de acesso
I
Restrições de integridade
SGBD: Vantagens de Utilização
I
Disponibilidade de dados atualizados
I
Economias de escala
I
Flexibilidade
I
Potencial para garantia de padrões
I
Tempo reduzido para desenvolvimento de aplicações
SGBD: Quando não utilizar?
I
Monousuário → Acesso por múltiplos usuários não
requerido
I
Baixa complexidade → Aplicações de BD muito simples e
bem definidas
I
Requisitos rigorosos → Aplicações de tempo real e
sistemas embarcados com capacidade de
armazenamento limitada
I
Alta especialização → Aplicações que demandam
recursos que a generalidade que um SGBD oferece para a
definição e processamento de dados não suporta. Por
exemplo, funções de segurança sofisticadas
I
Custo proibitivo → Alto investimento inicial em hardware,
software e treinamento
Referências Bibliográficas I
Elmasri, Ramez; Navathe, Sham
Sistemas de banco de dados - 6a edição.
Pearson, 2011.
Silberschatz, Abraham; Korth, Henry F.; Sudarshan, S
Sistemas de banco de dados - 6a edição.
Elsevier, 2012.
Date, Christopher J
Introdução a sistemas de bancos de dados.
Elsevier, 2004.
Obrigado!
Perguntas?
Wladmir Cardoso Brandão
www.wladmirbrandao.com
“Science is a way of thinking...
much more than it is a body of knowledge.”
Carl Sagan
Download