Você está na página 1de 47

Banco de Dados

Professor Jefferson Pereira da Silva


Instituto Federal de Brasília
http://www.ifb.edu.br/

Banco de dados I Conceitos gerais e SGBD 1 / 47


Banco de Dados

Conceitos e SGBD

Banco de dados I Conceitos gerais e SGBD 2 / 47


Definições Básicas
• Alguns termos típicos:
• Dados: Fatos que podem ser armazenados
– Nomes, telefones, endereços
• Base de dados: Coleção de dados inter-relacionados
logicamente
– Pedido de serviço(Clientes e Serviços)
• Sistema de Gerência de base de dados (SGBD)
– Coleção de programas que permite a criação e gerência de
bases de dados, também chamado de Sistema de Banco de
Dados
• Banco de Dados:
– Nome genérico para software SGBD, a base de dados e as
vezes os programas aplicativos, todos combinados ou
isolados.

Banco de dados I Conceitos gerais e SGBD 3 / 47


SGBD – Sistema de Gerência de banco de dados
Usuários/programadores

Software de
Banco de Programas de Aplicação/Consultas
dados

Software de
SGBD Software para processar
consultas/programas

Software para acessar dados


armazenados

Definição do banco
de dados Banco de dados
armazenado armazenado
(metadados)

Banco de dados I Conceitos gerais e SGBD 4 / 47


Função básica do SGBD

• Simplificar o desenvolvimento de aplicações


caracterizadas por uso intensivo de DADOS
• Como?
– Provendo serviços que diminuem o tempo de
desenvolvimento
– Através de ferramentas o usuário pode:
• Realizar entrada de dados
• Examinar dados
• Manipular dados de acordo com a aplicação

Banco de dados I Conceitos gerais e SGBD 5 / 47


Função básica do SGBD

Gerência Controles
de Operacionais
Dados

SGBD

Modelagem
de Usuários
Dados

Banco de dados I Conceitos gerais e SGBD 6 / 47


Função básica do SGBD

Gerência Controles
de Operacionais
Dados

SGBD

Modelagem
de Definir a Base de Dados Usuários
Dados Em termos de:
Tipos de dados,
Estruturas e
restrições

Banco de dados I Conceitos gerais e SGBD 7 / 47


Função básica do SGBD
Manipular a Base de dados:
Consultar,
Geração de relatório,
Gerência Controles
Inserção, remoção e
de Operacionais
Modificação do seu conteúdo
Dados

Construir ou Carregar a base de


dados no armazenamento
SGBD

Modelagem
de Usuários
Dados

Banco de dados I Conceitos gerais e SGBD 8 / 47


Função básica do SGBD
Processamento Concorrente
e Compartilhamento

Gerência Controles
de Operacionais
Dados

Usuários e programas,
Porem mantendo
SGBD todos os dados
válidos e
consistentes

Modelagem
de Usuários
Dados

Banco de dados I Conceitos gerais e SGBD 9 / 47


Função básica do SGBD

Gerência Controles
de Operacionais
Dados

SGBD
Projetistas da aplicação

Modelagem
de Usuários
Dados

Projetistas do SGBD

Banco de dados I Conceitos gerais e SGBD 10 / 47


Função básica do SGBD
Construir ou Carregar a base de Processamento Concorrente
dados no armazenamento e Compartilhamento

Gerência Controles
de Operacionais
Dados
Manipular a base de dados

SGBD
Projetistas da aplicação

Modelagem
de Usuários
Dados

Definir a base de dados Projetistas do SGBD

Banco de dados I Conceitos gerais e SGBD 11 / 47


Funções Típicas do SGBD

• Outras características:
– Medidas de proteção ou segurança para prevenir
acesso não autorizado
– Processamento “Ativo” para promover ações
internas sobre os dados
– Apresentação e visualização dos dados

Banco de dados I Conceitos gerais e SGBD 12 / 47


Camadas Funcionais de um SGBD
Programas de aplicação

Interface com usuário / Gerência de visões

Controle semântico / Verificação de autorização

Decomposição da consulta e otimização

Execução da Consulta

Gerência de buffer / Métodos de acesso

Controle de Concorrência / Controle de Reconstrução (logging)

Base de
dados

Banco de dados I Conceitos gerais e SGBD 13 / 47


Problemas do ambiente de arquivos tradicional

• Redundância de dados
• Dependência programa-dados
• Falta de flexibilidade
• Baixo nível de segurança
• Falta de compartilhamento e disponibilidade
dos dados

Banco de dados I Conceitos gerais e SGBD 14 / 47


Sistema de Arquivos
Emissão de ordens de
Emissão de guias de
fornecimento
cobrança

Cadastro Contas a Cadastro de Cadastro de


de clientes receber fornecedores itens

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Banco de dados I Conceitos gerais e SGBD 15 / 47


Sistema de Arquivos
Emissão de ordens de
Emissão de guias de
fornecimento
cobrança Cada programa possui
Em seu código a sua
Descrição de dados
Cadastro Contas a Cadastro de Cadastro de
de clientes receber fornecedores itens

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Banco de dados I Conceitos gerais e SGBD 16 / 47


Sistema de Arquivos
Emissão de ordens de
Emissão de guias de
fornecimento
cobrança

Cadastro Contas a Cadastro de Cadastro de


de clientes receber fornecedores itens
Redundância
De dados

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Banco de dados I Conceitos gerais e SGBD 17 / 47


Sistema de Arquivos
Emissão de ordens de
Emissão de guias de
fornecimento
cobrança

Cadastro Contas a Cadastro de Cadastro de


de clientes receber fornecedores itens
Redundância
De dados

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Banco de dados I Conceitos gerais e SGBD 18 / 47


Sistema de Arquivos

Inclusão de Emissão de ordens de


Emissão de guias de
fornecimento
cobrança Novo fornecedor

Segurança:
Esta autorizado?
Cadastro Contas a Cadastro de Cadastro de
de clientes receber fornecedores itens

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Banco de dados I Conceitos gerais e SGBD 19 / 47


Sistema de Arquivos

Inclusão de Emissão de ordens de


Emissão de guias de
fornecimento
cobrança Novo fornecedor

Cadastro Contas a Cadastro de Cadastro de


de clientes receber fornecedores itens

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Banco de dados I Conceitos gerais e SGBD 20 / 47


Sistema de Arquivos
Emissão de ordens de
Emissão de guias de
fornecimento
cobrança

Cadastro Contas a Cadastro de Cadastro de


de clientes receber fornecedores itens

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Mudança nas informações


dos fornecedores
Banco de dados I Conceitos gerais e SGBD 21 / 47
Sistema de Arquivos
Emissão de ordens de
Emissão de guias de
fornecimento
cobrança

Cadastro Contas a Cadastro de Cadastro de


de clientes receber fornecedores itens
Precisa ser
propagada

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Mudança nas informações


dos fornecedores
Banco de dados I Conceitos gerais e SGBD 22 / 47
Sistema de Arquivos
Emissão de ordens de
Emissão de guias de
fornecimento
cobrança
Precisa ser
propagada
Cadastro Contas a Cadastro de Cadastro de
de clientes receber fornecedores itens
Dependência
Programa-dados

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Mudança nas informações


dos fornecedores
Banco de dados I Conceitos gerais e SGBD 23 / 47
Sistema de Arquivos
Emissão de ordens de
Emissão de guias de
fornecimento
cobrança

Cadastro Contas a Cadastro de Cadastro de


de clientes receber fornecedores itens

Sem redundância de dados

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Banco de dados I Conceitos gerais e SGBD 24 / 47


Sistema de Arquivos
Emissão de ordens de
Emissão de guias de
fornecimento
cobrança

Cadastro Contas a Cadastro de Cadastro de


de clientes receber fornecedores itens

Sem redundância de dados

Emissão de contas a pagar Emissão de pedidos de Emissão de folha de


compra pagamento

Cadastro de Cadastro de Cadastro de Cadastro de Cadastro de


fornecedores pedidos clientes itens empregados

Falta de compartilhamento
e disponibilidade dos dados
Banco de dados I Conceitos gerais e SGBD 25 / 47
Sistema de banco de dados
Aplicações de BD SGBD Base de dados
Emissão de guias
de cobrança

Emissão de contas Base de dados


a pagar Descrição
Manipulação
Emissão de pedidos Controle Fornecedores
de compra . Clientes
. Itens
. Pedidos
Emissão de ordens . Contas a receber
de fornecimento
Empregados

Emissão de folha
de pagamento

Banco de dados I Conceitos gerais e SGBD 26 / 47


Definição de Base de dados

• Coleção auto descritiva de registros integrados


– Uma base de dados representa um modelo da
realidade
– Uma base de dados contém a definição de sua
própria estrutura
– Uma base de dados contém dados, metadados,
índices e dados sobre as aplicações que a utiliza

Banco de dados I Conceitos gerais e SGBD 27 / 47


Principais características da Abordagem SGBD

• Natureza Auto descritiva do SGBD


– O catálogo do SGBD armazena a descrição da base
de dados
– A descrição é chamada de metadados
– Permite que o software SGBD trabalhe com bases
de dados diferentes
• Isolamento entre programas e dados
– Chamado de Independência de Dados-Programa
– Modificações nas estruturas de armazenamento
como inclusão de um novo atributo não afetam os
programas de acesso ao SGBD.

Banco de dados I Conceitos gerais e SGBD 28 / 47


Principais características da Abordagem SGBD

• Abstração de dados
– Um modelo de dados é usado para esconder
detalhes de armazenamento e apresentam aos
usuários uma visão conceitual da base de dados
• Permite múltiplas visões dos dados
– Cada usuário pode enxergar uma visão diferente
da base de dados, a qual descreve apenas os
dados que interessam àquele usuário

Banco de dados I Conceitos gerais e SGBD 29 / 47


Principais características da Abordagem SGBD

• Compartilhamento de dados e processamento


de transações multiusuário:
– Permite que um conjunto de usuários
concorrentes acesse e modifiquem a base de
dados
– Controle de concorrência no SGBD garante que
cada transação é executada corretamente ou
interrompida por completo
– OLTP (Online Transaction Processing), por exemplo
sistemas de reservas são as principais aplicações
de SGBDs.

Banco de dados I Conceitos gerais e SGBD 30 / 47


Compartilhamento e visões
BANCO DE DADOS
INTEGRADO DE
RH Programas
Aplicativo Departamento
De pessoal
de pessoal
Empregados
Nome
Endereço
CPF

Sistema de Programas Departamento


Folha de pagamento
Horas trabalhadas gerenciamento de aplicativos de folha De folha
Remuneração banco de dados de pagamento de pagamento
Imposto

Benefícios Programas
Seguro Departamento
aplicativos de
Plano de saúde de benefícios
aposentadoria benefícios

Banco de dados I Conceitos gerais e SGBD 31 / 47


Características - Resumo

• Dados e metadados na base


• Independência de Dados-Programas
• Abstração de dados
• Múltiplas visões
• Compartilhamento de dados e processamento
de transações multiusuários

Banco de dados I Conceitos gerais e SGBD 32 / 47


Usuários de SGBD

• Usuários podem ser divididos entre aqueles


que de fato usam e controlam o conteúdo
(chamado “Atores em cena”) e aqueles que
fazem com que a base de dados possa ser
desenvolvida e o software SGBD possa ser
projetado e implementado (chamado
“Trabalhadores por trás das cenas”)

Banco de dados I Conceitos gerais e SGBD 33 / 47


Usuários de SGBD

• Projetistas da aplicação (atores em cena)


– Administrador do banco de dados
– Projetista da base de dados
– Usuário final
– Analistas de sistemas e programadores de
aplicação
• Projetistas do SGBD (trabalhadores por trás da
cena)
– Projetistas e implementadores do SGBD
– Desenvolvedores de ferramentas
– Pessoal de suporte

Banco de dados I Conceitos gerais e SGBD 34 / 47


Usuários de SGBD
• Atores em cena
– Administrador do Banco de Dados (DBA), responsável por:
• Autorizar o acesso à base de dados
• Coordenar e monitorar o uso da base de dados
• Definir a aquisição de software e recursos de hardware
• Controlar o uso dos recursos e
• Monitorar a eficiência das operações
– Principais atividades:
• Instalação e Configuração do SGBD
• Monitoração do SGBD
• Ajuste do SGBD (Tunning)
• Controle de Segurança
• Parte do Projeto Físico (organização interna dos dados, estruturas
de acesso – índices)
• Backup e Recuperação

Banco de dados I Conceitos gerais e SGBD 35 / 47


Usuários de SGBD

• Atores em cena
– Projetista da base de dados ou Administrador de
Dados(AD), responsável por:
• Definir o conteúdo da base de dados
• Definir a estrutura da base de dados
• Definir as restrições da base de dados
• Definir as transações sobre a base de dados
• Interagir com os usuário finais para levantar requisitos
• Responsáveis por auxiliar os Analistas na criação do
projeto lógico das bases de dados.
• Mantenedor do Projeto de Banco Corporativo
• Responsável pelos Dados da Organização

Banco de dados I Conceitos gerais e SGBD 36 / 47


Usuários de SGBD

• Atores em cena
– Usuários finais:
• Usam os dados para consultas, relatórios e alguns
chegam a modificar o conteúdo da base de dados
– Casual:
• Acessa a base de dados eventualmente, quando
necessário.
– Produção
• Correspondem à maior parte dos usuários
• Utilizam funções pré-definidas como transações de
produção sobre a base de dados
– Contadores, operadores de reservas, funcionários com
atividades que se repetem durante o expediente

Banco de dados I Conceitos gerais e SGBD 37 / 47


Usuários de SGBD

• Atores em cena
– Sofisticado:
• Analistas de negócio,
• Cientistas,
• Engenheiros,
• Usuários familiares com as capacidades do sistema
• Muitos usam ferramentas como pacotes de software
que operam intimamente ligadas aos dados
armazenados na base de dados
– Independente:
• Em geral, mantém bases de dados pessoais usando
aplicações já prontas, tipo pacotes.

Banco de dados I Conceitos gerais e SGBD 38 / 47


Vantagens em usar a abordagem SGBD

• Controlar a redundância:
– No armazenamento de dados, no esforço de
desenvolvimento e de manutenção.
• Compartilhar dados entre vários usuários
• Restringir o acesso não autorizado aos dados
• Usar estruturas de armazenamento eficientes
para o acesso aos dados, por exemplo,
processamento de consultas.

Banco de dados I Conceitos gerais e SGBD 39 / 47


Vantagens em usar a abordagem SGBD

• Oferece serviços de cópia de segurança e


restauração em caso de falhas
• Oferece várias interfaces para diversas classes
de usuários
• Representa relacionamentos complexos entre
dados
• Verifica restrições de integridade sobre a base
de dados
• Otimiza o processamento de consultas
• Usa regras para gerar inferências e ações

Banco de dados I Conceitos gerais e SGBD 40 / 47


Consequências vantajosas do uso do SGBD

• Potencial para reforçar o uso de padrões


– Isso é muito importante para o sucesso das
aplicações de SGBDs em grandes empresas
– Padrões estão ligados a nomes de itens de dados,
formatos de impressão, telas, estruturas de
relatórios, metadados (descrição de dados) etc
• Redução no tempo de desenvolvimento da
aplicação
– O tempo adicional para acrescentar novas
aplicações é reduzido

Banco de dados I Conceitos gerais e SGBD 41 / 47


Consequências vantajosas do uso do SGBD

• Flexibilidade para mudar estruturas de dados


– Estruturas de dados podem evoluir à medida em
que novos requisitos são definidos
• Informações atualizadas disponíveis
– Muito importante para sistemas de transação on-
line tais como reservas em: cias aéreas, hotéis,
locadoras de automóveis
• Economia de escala
– Ao consolidar dados e aplicações através de
departamentos pode-se evitar a redundância de
recursos e funcionários.

Banco de dados I Conceitos gerais e SGBD 42 / 47


Extensões de características dos SGBD
• Novas funções vem sendo incorporadas ao SGBD
nas seguintes áreas:
– Aplicações científicas
– Gerência e armazenamento de imagens
– Gerência e armazenamento de áudio e vídeo
– Mineração de dados
– Gerência de dados espaciais
– Gerência de séries temporais e dados históricos
• As funções acima vem gerando novos produtos,
desenvolvimento e pesquisas ao incorporar novos
tipos de dados, estruturas de dados complexos,
novas operações e esquemas de armazenamento
e indexação em sistemas de banco de dados.

Banco de dados I Conceitos gerais e SGBD 43 / 47


Quando NÃO usar um SGBD
• Principais impedimentos (custos) em usar um
SGBD
– Investimento inicial alto, em geral: hardware extra
– Sobrecarga do software SGBD influi no desempenho
por ser genérico e prover: segurança, controle de
concorrência, reconstrução e funções de integridade
• Considerar situações não favoráveis:
– A base de dados e as aplicações são simples, bem
definidas e sem perspectivas de mudanças
– Requisitos de tempo real que podem não ser
atendidos devido à sobrecarga do SGBD
– Não necessita acesso concorrente aos dados

Banco de dados I Conceitos gerais e SGBD 44 / 47


Quando NÃO usar um SGBD

• Quando nenhum SGBD pode atender:


– Quando o SGBD não é capaz de gerenciar a
complexidade dos dados devido à limitações na
modelagem
– Quando os usuários precisam de operações
especiais ausentes no SGBD.

Banco de dados I Conceitos gerais e SGBD 45 / 47


Por que estudar banco de dados?

• Mudança da computação para a informação


– No “nível mais baixo”: consultas na Web (uma
bagunça!)
– No “nível mais alto”: aplicações científicas
• Conjuntos de dados aumentando em
diversidade e volume
– Bibliotecas digitais, vídeos interativos, projeto de
genoma humano, projeto Observa Terra,....
– Necessidade de SGBDs é cada vez maior
• SGBD permeia a maior parte da computação
– Sos, linguagens, teoria, IA, multimídia

Banco de dados I Conceitos gerais e SGBD 46 / 47


Exercícios

Entrega pelo Moodle

Banco de dados I Conceitos gerais e SGBD 47 / 47

Você também pode gostar