Vantagens da Utilização de SGBD

Propaganda
SGBD
Banco de Dados - Professor Ivan Pires
Características do Emprego de Bancos de Dados
• As principais características da abordagem de um banco de
dados versus a abordagem de processamento de
arquivos são as seguintes:
– Natureza autodescritiva do sistema de banco de dados.
– Isolamento entre os programas e os dados, e a abstração dos
dados.
– Suporte para as múltiplas visões dos dados.
– Compartilhamento de dados e processamento de transações
de multiusuários
Banco de Dados - Professor Ivan Pires
1
Características do Emprego de Bancos de Dados
• Natureza autodescritiva do sistema de banco de
dados.
– Completa definição ou descrição da estrutura desse banco de dados e
suas restrições
– Definições armazenadas no catálogo do SGBD
– Contém informações como a estrutura de cada arquivo, o tipo e o
formato de armazenamento de cada item de dado e várias restrições
sobre os dados. A informação armazenada no catálogo é chamada
metadados e descreve a estrutura do banco de dados
Banco de Dados - Professor Ivan Pires
Características do Emprego de Bancos de Dados
• Isolamento entre os programas e os dados, e a
abstração dos dados
– No processamento tradicional de arquivos, a estrutura do arquivo
de dados está embutida no programa da aplicação
– A estrutura dos arquivos de dados é armazenada no catálogo do
SGDB separadamente do programa de acesso.
– “Se quisermos adicionar outro dado ao registro de cada ALUNO, digamos,
sua DatadeNascimento, esse programa não vai trabalhar por muito
tempo e precisará ser alterado.
– Ao contrário, em um ambiente SGBD, necessitamos al­terar apenas a
descrição do registro ALUNO no catálogo para refletir a inclusão do novo
item de dados DatadeNascimento; nenhum programa será modificado.
– A próxima vez que um programa SGBD acessar o catálogo, a nova
estrutura do registro ALUNO será acessada e utilizada.”
Banco de Dados - Professor Ivan Pires
2
Características do Emprego de Bancos de Dados
• Suporte para as múltiplas visões dos dados.
– Um banco de dados típico tem muitos usuários, e cada qual pode
solicitar diferentes perspectivas ou visões do banco de da­dos. Uma visão
pode ser um subconjunto de um banco de dados ou conter uma visão
virtual dos dados, derivados dos arqui­vos do banco de dados, mas não,
explicitamente, armazenados. Alguns usuários podem não saber se os
dados a que eles se referem são armazenados ou derivados.
HISTORICO ESCOLAR
NomedoAluno
Smith
Brown
PRE_REQUISITOS
NomedoCurso
NumerodoCurso
Pre_Requisitos
Banco de Dados
CC3380
CC3320
Estruturas de Dados
CC3320
CC1310
Histórico Escolar do Aluno
NumerodoCurso
CC1310
MAT2410
MAT2410
CC1310
CC3320
CC3380
Nota Semestre
C
Outono
B
Outono
A
Outono
A
Outono
B
Primavera
A
Outono
Ano
99
99
98
98
99
99
IdDisciplina
119
112
85
92
102
135
MAT2410
Banco de Dados - Professor Ivan Pires
Características do Emprego de Bancos de Dados
• Compartilhamento de dados e processamento de transações
de multiusuários
– Um SGBD multiusuário deve permitir que diversos usuários acessem o banco de
dados ao mesmo tempo.
– O SGBD deve incluir um software de controle de concorrência para garantir que
muitos usuários, ao tentar atualizar o mesmo dado, o façam de um modo
controlado, para assegurar que os resultados das atualizações sejam corretos
– Uma transação é um programa em execução ou processo que inclui um ou mais
acessos ao banco de dados, como a leitura ou a atualização de registros
– A propriedade de isolamento garante que cada transação possa ser efetuada de
forma isolada de outras transações; mesmo centenas de transações podem ser
executadas simultaneamente.
– A propriedade de atomicidade garante que todas as operações em um banco
de dados, em uma transação, sejam executadas ou nenhuma delas
Banco de Dados - Professor Ivan Pires
3
Atores no Palco
• Administradores de Banco de Dados
– O DBA é o responsável pela autorização para o acesso ao banco, pela
coordenação e monitoração de seu uso e por adquirir recursos de
software e hardware conforme necessário.
– O DBA é o responsável por problemas como brechas de segurança ou
tempo de resposta ruim do sistema.
• Os Projetistas do Banco de Dados
– São responsáveis pela identificação dos dados que serão armazenados no
banco e também por escolher as estruturas apropriadas para representar
e armazenar esses dados
– Comunicar-se antecipadamente com todos os prováveis usuários do
banco para conhecer suas necessidades (requisitos) e criar projetos que
as atendam
Banco de Dados - Professor Ivan Pires
Atores no Palco
• O Usuário Final
– Os usuários finais são pessoas cujas profissões requerem o acesso
a um banco de dados para consultas, atualização e relatórios
• Usuários finais casuais
• Iniciantes ou usuários finais parametrizáveis
• Usuários autônomos (stand-alone): uso de pacote de software específico
• Analistas de Sistemas e Programadores de Aplicações
(Engenheiros de Software)
– Os analistas de sistemas determinam as solicitações dos usuários finais,
especialmente os usuários finais iniciantes e os parametrizáveis, além de
desenvolver as especificações das transações customizadas que atendam a
essas solicitações.
– Os programadores de aplicações implementam essas especificações como
programas, então eles testam, documentam e mantêm essas transações
customizadas
Banco de Dados - Professor Ivan Pires
4
Vantagens da Utilização de SGBD
• Controle de Redundância
– Banco de dados da Universidade
• Secretaria
• Contabilidade
– Problemas:
• Isso gera uma duplicação de esforço
• O espaço de armazenamento é desperdiçado
• Dados se tornarem inconsistentes
Banco de Dados - Professor Ivan Pires
Vantagens da Utilização de SGBD
• Restringindo Acesso Não Autorizado
– Usuários e Senha
– Níveis de permissões
– “O SGBD deve garantir a segurança e um subsistema
de autorização usado pelo DBA para criar contas e
definir as restrições de cada uma”
Banco de Dados - Professor Ivan Pires
5
Vantagens da Utilização de SGBD
• Garantindo o Armazenamento Persistente para
Programas Orientado a Objeto
– Armazenamento persistente aos objetos programas e
estruturas de dados
– Esse objeto é conhecido como persistente, desde que exista
após o término de execução dos programas
Banco de Dados - Professor Ivan Pires
Vantagens da Utilização de SGBD
• Garantindo o Armazenamento de Estruturas para o
Processamento Eficiente de Consultas
• “(...) o SGBD deve possuir estruturas de dados especializadas
para aumentar a velocidade de pesquisa no disco dos registros
desejados.”
• Armazenamento temporário (buffering):
– mantém partes do banco de dados armazenado na me­mória principal.
Banco de Dados - Professor Ivan Pires
6
Vantagens da Utilização de SGBD
• Garantindo Backup e Restauração
– Um SGBD deve prover facilidades para a restauração
de falhas de hardware ou de software.
Banco de Dados - Professor Ivan Pires
Vantagens da Utilização de SGBD
• Fornecendo Múltiplas Interfaces para os
Usuários
– Interfaces Gráficas para os Usuários — Graphical
User Interfaces (GUIs).
Banco de Dados - Professor Ivan Pires
7
Vantagens da Utilização de SGBD
• Representando Relacionamentos Complexos
entre os Dados
– “O SGBD deve ter a capacidade de representar a
variedade de relacionamentos complexos entre os
dados, bem como recuperar e atualizar os dados
relacionados fácil e eficientemente.”
Banco de Dados - Professor Ivan Pires
Vantagens da Utilização de SGBD
• Forçando as Restrições de Integridade
– A maioria das aplicações de um banco de dados tem certas
restrições de integridade que devem complementar os dados
• Tipo de dado para cada item de dados
• Valor único
• Valores possíveis
• “(...) um aluno recebe nota A, mas é inserida, no banco de
dados, a nota C, o SGBD não pode descobrir esse erro,
automaticamente, porque C é um valor válido para os tipos de
dados de NOTA. (...) Porém, a nota Z pode ser rejeitada
automaticamente pelo SGBD, pois ela é um valor inválido para
os tipos de dados de NOTA”
Banco de Dados - Professor Ivan Pires
8
Vantagens da Utilização de SGBD
• Permitindo Inferências e Ações Usando as Regras
• “Alguns sistemas de banco de dados oferecem capacidades
para definir as regras de dedução por inferência gerando
novas informações de fatos armazenados no banco de
dados. Esses sistemas são chamados sistemas de banco de
dados dedutivos.”
• Os sistemas de banco de dados ativos oferecem
funcionalidades mais potentes, pois permitem regras ativas
que podem disparar automaticamente ações quando
certos eventos e condições ocorrerem.
• Exemplo: Aprovação de alunos. (mini-mundo muda)
Banco de Dados - Professor Ivan Pires
Vantagens da Utilização de SGBD
• Implicações Adicionais do Uso da Abordagem
de um Banco de Dados
– Redução no Tempo de Desenvolvimento de
Aplicações:
• (ex.: Relatórios, Sistemas)
– Flexibilidade:
• alteração sem afetar os dados
– Disponibilidade para Atualizar as Informações
– Economias de Escala
• Centralizar recursos
Banco de Dados - Professor Ivan Pires
9
Quando Não Usar o SGBD
Os altos custos de utilizar o SGBD são devidos a:
• Investimentos iniciais altos em hardware, software e treinamento.
• Generalidade que o SGBD fornece para a definição e processamento dos
dados.
• Custos elevados para oferecer segurança, controle de concorrência,
recuperação e funções de integridade.
Pode-se indicar o uso de arquivos convencionais nas seguintes
circunstâncias:
• O banco de dados e suas aplicações são simples, bem definidas e sem
previsão de mudanças.
• Há requisitos de tempo real (real-time) para alguns programas difíceis de
serem atendidos por causa da sobrecarga (overhead) do SGBD.
• O acesso de múltiplos usuários aos dados não é necessário.
Banco de Dados - Professor Ivan Pires
Resumo
• Definimos um banco de dados como uma coleção de dados relacionados, na
qual os dados significam fatos registrados.
• Um típico banco de dados representa alguns aspectos da vida do mundo real
e é utilizado por um ou vários grupos de usuários para propostas específicas.
• Um SGBD é um pacote de software para a implementação e manutenção de
bancos de dados computadorizados.
• O banco de dados e o software, juntos, formam um sistema de banco de
dados.
• Identificamos várias características que distinguem a abordagem de um
banco de dados de uma aplicação tradicional de processamento de arquivos.
Banco de Dados - Professor Ivan Pires
10
Download