Introdução à Computação

Propaganda
Introdução à Computação
Unidade V – Banco de Dados
INF0198 – Introdução à Computação
1
Banco de Dados
Dado
• “Dados são os fatos em sua forma primária, como por exemplo um
nome de um empregado e o número de horas trabalhadas em uma
semana, números de peças em estoque ou pedidos de vendas.”
 Os dados relevantes e que devem ser manipulados por um determinado
negócio se mantém estáveis mesmo que o negócio em questão modifique
radicalmente sua forma de operação, ou seja, seus processos. Logo, os
dados são mais estáveis que os processos. Por esta razão muitos autores
acreditam que o banco de dados é uma das partes mais valiosas e
importantes de um sistema de informação.
INF0198 – Introdução à Computação
2
Banco de Dados
- Hierarquia dos Dados
Os dados geralmente são organizados em uma hierarquia, que começa com
o menor dado utilizado pelos computadores ( bit ) e vai progredindo na
hierarquia até o banco de dados:
• 8 bits = 1 byte
• 1 byte = 1 caracter = bloco básico de construção da informação
• 1 conjunto de caracteres = 1 campo
• 1 coleção de campos relacionados = 1 registro
• 1 coleção de registros relacionados = 1 arquivo
• 1 coleção de arquivos integrados e relacionados = 1 banco de dados
INF0198 – Introdução à Computação
3
Hierarquia dos Dados - exemplo
Bancos de Dados de Pessoal
Arquivo de
Folha de
Pagamento
Funcionário
Registro 1
Funcionário
Registro 2
Arquivo de
Benefícios
Funcionário
Registro 3
Funcionário
Registro 4
Nº da
Nº da
Nº da
Nº da
Nome Previ- Salário Nome Previ- Salário Nome Previ- Salário Nome Previ- Salário
dência
dência
dência
dência
Dados Dados Dados Dados Dados Dados Dados Dados Dados Dados Dados Dados
INF0198 – Introdução à Computação
4
Banco de Dados
Conjunto de dados integrados que tem por objetivo atender a uma
comunidade de usuários
Coleção de dados inter-relacionados tal que:
• um BD representa uma porção da realidade
• um BD é projetado, construido e carregado com dados para
atender a um propósito específico:um grupo de usuários e
algumas aplicações pré-definidas nas quais estes usuários
estão interessados
INF0198 – Introdução à Computação
5
Elementos Básicos do Banco de Dados
Entidades: representam classes de objetos do mundo real.
Ex: funcionários, clientes, produtos
Relacionamentos: representam agregações entre duas ou mais
entidades.
Ex: associação cliente aos produtos que ele compra
Atributos: representam propriedades elementares das entidades
e/ou dos relacionamentos.
Ex: matrícula do funcionário, número do telefone do cliente
INF0198 – Introdução à Computação
Banco de Dados
Exemplo de entidades e relacionamentos em uma
concessionária de eletricidade e algumas aplicações que
dependem de acesso aos elementos do banco de dados da
empresa
Banco de Dados de uma
Concessionaria de Eletricidade
Faturamento
Leitura de medidor
Entidades: clientes, medidores, contas
Pagamentos, leituras de medidores
Relacionamentos: contas enviadas aos
clientes, clientes fazem pagamentos,
clientes utilizam medidores, ...
Processamento
de pagamento
Início/Parada do
Serviço
INF0198 – Introdução à Computação
7
Sistema tradicional de arquivos
emissão de guias de
cobrança
cadastro de
clientes
contas a
receber
emissão de contas a
pagar
cadastro de
fornecedore
s
emissão de ordens de
fornecimento
cadastro de
pedidos
cadastro de
itens
cadastro de
fornecedore
s
emissão de pedidos de
compra
cadastro de
clientes
cadastro de
itens
emissão de folha de
pagamento
cadastro de
empregados
- dados estão projetados para atender uma aplicação específica
- dados não estão integrados, mas em diferentes arquivos
INF0198 – Introdução à Computação
8
Limitações da abordagem tradicional

mesmo objeto da realidade é representado mais de uma vez em
diferentes arquivos – redundância

redundância leva a :
• inconsistência : dados não representam corretamente a realidade
• alterações em parte dos dados pode levar a registros incompatíveis

dados pouco confiáveis

programas de aplicação dependentes dos dados
• descrição da estrutura dos arquivos está embutida nos programas e
acesso
INF0198 – Introdução à Computação
Vantagens da Abordagem de Bancos de Dados
em relação a Sistemas de Arquivos

Redundância de dados reduzida

Integridade dos dados aperfeiçoada

Modificação e atualização mais fáceis

Independência entre programas e dados

Melhor acesso aos dados e à informação

Padronização do acesso aos dados

Uma estrutura para desenvolvimento de programa

Melhor proteção global dos dados

Fontes de dados e de informação compartilhados
INF0198 – Introdução à Computação
10
Banco de Dados – abordagem do
gerenciamento de BD
Envolve três atividades básicas:
• Atualização e manutenção de bancos de dados comuns para
refletir novas transações de negócios e outros eventos que
exigem mudanças nos registros de uma organização
• Fornecimento das informações requisitadas por cada aplicação
do usu[ario final mediante o uso de aplicativos que compartilham
os dados em bancos de dados comuns
• Fornecimento de uma capacidade de consulta/resposta e
emissão de relatórios por meio de um softwrae de
gerenciamento, de sorte quen os usuários finais possam utilizar
navegaodores de Rede e a Intermert ou intranets para
consulktar facilmente os bancos de daos, gerar relatórios re
receber respostas rápidas as seuis pedidos de informsções para
situações específicas
INF0198 – Introdução à Computação
11
Sistema de Gerenciamento de BD
Aplicações de BD
Usuário
SGBD
BANCO
DE
DADOS
Conjunto de programas de computador que controla
a criação, manutenção e uso dos
anco de Dados
(em inglês: Database Management System - DBMS)
INF0198 – Introdução à Computação
Componentes de um SGBD

Definição do Banco de Dados
•
Linguagens e ferramentas gráficas para definir entidades,
relacionamentos, restrições à integridade e direitos de autorização
 Acesso
Informal
• Linguagem e ferramentas gráficas para acessar dados sem
codificações complicadas

Desenvolvimento de Aplicações
•
Ferramentas gráficas para desenvolver menus, formulários de
entrada de dados e relatórios
INF0198 – Introdução à Computação
Componentes de um SGBD

Interface de linguagem codificada
•
Linguagem que combina acesso informal com a capacidade plena de uma
linguagem de programação

Processamento de Transações
•
Mecanismos de controle para impedir a interferência de usuários
simultâneos e recuperar dados perdidos após uma falha
 Ajuste
do Banco de Dados
• Ferramentas para monitorar e melhorar o desempenho do banco
de dados
INF0198 – Introdução à Computação
Tipos de Bancos de Dados

Bancos de dados Operacionais
•
armazenam dados detalhados necessários para apoiar os processos e
operações do dia-a dia das empresas, incluindo bancos de dados de
atividades de e-commerce e internet

Bancos de Dados Distribuídos
•
muitas empresas reproduzem e distribuem cópias ou partes de
bancos de dados para servidores de rede em uma multiplicidade de
locais. O objetivo é melhorar o desempenho e a segurança do
banco de dados. O maior desafio neste tipo de banco de dados é
garantir que todos os dados distribuídos sejam constante e
concomitantemente atualizados
INF0198 – Introdução à Computação
Tipos de Bancos de Dados

Bancos de Dados Externos
•
dados que podem ser obtidos através de parcerias, convênios,
aquisição, consulta, internet, etc ...

Data Warehouse
• Banco de dados que armazena dados sobre as operações da
empresa, extraídos de uma fonte única ou múltipla, oferecendo
enfoque histórico, para permitir um suporte efetivo à tomada de
decisão

Banco de dados em Hipermídia na Rede ( Web )
• armazena documentos em hipertextos e multimídia
INF0198 – Introdução à Computação
Principais Tipos de Banco de Dados
Bancos de
Dados Externos
na Internet e
Serviços Online
Bancos de
Dados
Distribuídos
em
Intranets e
Outras Redes
Cliente
PC ou
NC
Bancos de
Dados do
Usuário Final
Servidor de
Redes
Mercados
de Dados
Bancos de
Dados
Operacionais da
Organização
Depósitos
de Dados
INF0198 – Introdução à Computação
17
Modelos de Banco de Dados
Na construção de um banco de dados deve-se considerar as
seguintes questões:
Conteúdo:
Que dados devem ser coletados e a que custo ?
Acesso:
Que dados devem ser fornecidos a qual usuário quando
apropriado ?
Estrutura
Lógica: Como os dados devem ser arrumados de forma
que façam sentido para um determinado usuário ?
Organização
Física: Onde os dados devem estar fisicamente
localizados ?
INF0198 – Introdução à Computação
18
Modelos de Banco de Dados
 As
relações entre os muitos registros individuais nos bancos de
dados são baseadas em uma das diversas estruturas ou modelos
lógicos de dados.
Os SGBD’s são projetados para utilizar uma estrutura específica
de dados para fornecer aos usuários finais acesso rápido e fácil a
informações armazenadas em banco de dados.

 As
cinco estruturas s de dados fundamentais são: hierárquico, em
rede, relacionais, orientados a objetos e multidimensionais
INF0198 – Introdução à Computação
19
Modelos de Banco de Dados

Estrutura Hierárquica
• As
relações e os registros formam uma hierarquia ou estrutura
de tipo árvore.
•
Todos os registros são dependentes e dispostos em estruturas
de níveis múltiplos, que consistem em um registro-raiz e
qualquer número de níveis subordinados
•
Todo elemento de dados pode ser acessado passando-se
progressivamente para baixo a partir de uma raiz e ao longo dos
ramos da árvore até que o registro desejado seja localizado
•
Relacionamentos do tipo um-para-muitos
INF0198 – Introdução à Computação
20
Estruturas de Bancos de Dados
Estrutura Hierárquica
Departamento
Projeto A
Funcionário
1
Projeto B
Funcionário
2
INF0198 – Introdução à Computação
21
Modelos de Banco de Dados

Estrutura em Rede
•
Permite acessar um elemento de dados seguindo um dentre
vários caminhos, porque qualquer elemento ou registro de dados
pode ser relacionado com qualquer número de outros elementos
de dados
•
Relacionamentos do tipo muitos-para-muitos
INF0198 – Introdução à Computação
22
Estruturas de Bancos de Dados
Estrutura em Rede
Departamento
A
Funcionário
1
Departamento
B
Funcionário
2
Projeto A
Funcionário
3
Projeto B
INF0198 – Introdução à Computação
23
Modelos de Banco de Dados

Estrutura Relacional
•
Mais popular entre as estruturas
•
Todos os elementos de dados dentro do banco de dados são
concebidos como armazenados em forma de tabelas simples
Os SGBD’s relacionais vinculam elementos de várias tabelas
para fornecer informações para os usuários
•
INF0198 – Introdução à Computação
24
Estruturas de Bancos de Dados
Estrutura Relacional
Cliente
Conta
nome
rua
cidade
Nconta
Nconta
saldo
Pedro
Av. 2
Fpolis
1452
1452
2452.25
João
R. 51
S.José
521
521
6565.74
Tiago
Largo 2
Fpolis
53256
53256
465.52
Marcos
Av. 43
Biguaçú
53256
4651
456.25
Arthur
Rua 23
Fpolis
14532
14532
8767.02
INF0198 – Introdução à Computação
25
Modelos de Banco de Dados

Estrutura Multidimensional
•
Variação do modelo relacional que utiliza estruturas
multidimensionais para organizar dados e expressar as relações
entre os dados
•
Podemos visualizar estruturas multidimensionais como cubos
de dados e cubos dentro de cubos de dados
•
Cada face do cubo é considerada uma dimensão de dados
•
Cada célula dentro de uma estrutura multidimensional contém
dados agregados relacionados a elementos ao longo de cada
uma de suas dimensões
INF0198 – Introdução à Computação
26
Estruturas de Bancos de Dados
TV
PC
VCR
sum
1Qtr
2Qtr
Data
3Qtr
4Qtr
sum
Total anual de vendas
para China
China
India
Japão
País
Estrutura Multidimensional
sum
INF0198 – Introdução à Computação
27
Modelos de Banco de Dados

Estrutura Baseada em Objetos
•
Considerada uma das tecnologias-chave de uma nova geração
de aplicativos multimídia na rede
•
Um objeto consiste nos dados e nas ações que podem ser
executadas sobre estes dados
•
Esta capacidade de sintetização permite ao modelo orientado a
objetos manipular melhor do que outras estruturas de bancos de
dados os tipos mais complexos de dados: gráficos, imagens, voz
e texto
INF0198 – Introdução à Computação
28
Estruturas de Bancos de Dados
Estrutura Baseada em Objetos
Atributos
•Cliente
•Balanço
Objeto Conta Bancária
Operações
Objeto Conta
Corrente
•Depósito
•Saque
Objeto Conta de
Poupança
Atributos
Atributos
Operações
Operações
•Linha de Crédito
•Extrato Mensal
•Calcular juros
•Imprimir Extrato
Mensal
•Linha de Crédito
•Extrato Mensal
•Calcular juros
•Imprimir Extrato
Mensal
INF0198 – Introdução à Computação
29
Download