Você está na página 1de 34

Universidade Zambeze

Faculdade de Ciências e Tecnologia

Engenharia Informática - 2º Nível


Base de Dados I

2018
Tema 1: Sistema de Base de Dados
Sistema de Base de Dados
 Objectivos
Introduzir e conhecer os fundamentos gerais sobre sistemas de base de dados
 Conteúdos
- Introdução.
- Modelo de dados.
- Conceitos Gerais.
- Abordagem base de dados Vs Processamento de arquivos.
- Usuários e actividades envolvidas.
- Vantagens de um SGBD.
- Quando não usar um SGBD.
- Arquitectura e independência de dados em SGBD.
1- Introdução

O uso da base de dados vem crescendo com a


expansão do uso da informática. As bases de dados
existem para facilitar o armazenamento,
processamento e o acesso à informação. O primeiro
sistema gerenciador de base de dados surgiu em 1960
com base nos primitivos sistemas de arquivos
disponíveis na época, os quais não controlavam o
acesso concorrente.
2- Modelo de dados

 Modelo é a representação abstrata e simplificada de um sistema


real, com a qual se pode explicar ou testar o seu comportamento, em
seu todo ou em partes.
 O modelo de dados pode ser classificado de varias formas,
trataremos do modelo de dados de acordo com os conceitos para
descrever a estrutura da base de dados, ou como os dados são
organizados em uma base de dados(modelos lógicos).
2- Modelo de dados

2.1. Modelo hierárquico


 O primeiro a ser reconhecido como modelo de dados.
 Os dados são estruturados em hierarquia ou árvores.
 Os nós das hierarquias contem ocorrências dos registos, onde
cada registo é uma colecção de campos (atributos), cada um
contendo apenas uma informação.
 O registo da hierarquia que precede a outros é o registo pai, os
outros registos são chamados de registos -filhos.
2. Modelo de dados

 Uma ligação é uma associação entre dois registos.


 O relacionamento entre um registo-pai e vários registos-filhos possui cardinalidade 1:N.
 Para ter acesso aos dados organizados segundo este modelo segue-se uma sequência
hierárquica com uma navegação do topo para as folhas e da esquerda para a direita.
 Um registo pode estar associado a vários registos diferentes, desde que seja replicado. A
replicação possui duas grandes desvantagens:
 pode causar inconsistência de dados quando houver actualização e o desperdício de espaço
é inevitável.
2. Modelo de dados

2.2. Modelo em rede


 Uma norma foi estabelecida para este modelo de banco de dados, com linguagem própria para definição e
manipulação de dados.
 Os dados tinham uma forma limitada de independência física.
 Também foram definidas as sintaxes para dois aspectos chaves dos sistemas gerenciadores de dados:
concorrência e segurança.
 Concorrência : fornecia uma facilidade na qual parte do banco de dados (ou área) pudesse ser bloqueada para prevenir
acessos simultâneos, quando necessário.
 Segurança: permitia que uma senha fosse associada a cada objecto descrito no esquema.
 Ao contrário do Modelo Hierárquico, em que qualquer acesso aos dados passa pela raiz, o modelo em rede
possibilita acesso a qualquer nó da rede sem passar pela raiz.
 O modelo hierárquico e em rede são orientados a registo, isto é, qualquer acesso a base de dados é feito em
cada registo.
2. Modelo de dados

2.3. Modelo Relacional


 Este modelo apareceu devido às seguintes necessidades:
 Aumentar a independência de dados nos sistemas gerenciadores de banco de dados;
 Prover um conjunto de funções apoiadas em álgebra relacional para armazenamento e recuperação de dados;
 Permitir processamento ad hoc.
 O Modelo relacional revelou-se ser o mais flexível e adequado ao solucionar os vários problemas que se
colocam no nível da concepção e implementação da base de dados. A estrutura fundamental do modelo
relacional é a relação (tabela). Uma relação é constituída por um ou mais atributos (campos) que
traduzem o tipo de dados a armazenar. Cada instância do esquema (linha) é chamada de tupla (registo). O
modelo relacional não tem caminhos pré-definidos para se fazer acesso aos dados como nos modelos que
o precederam. O modelo relacional implementa estruturas de dados organizadas em relações. Porém, para
trabalhar com essas tabelas, algumas restrições precisaram ser impostas para evitar aspectos indesejáveis,
como: Repetição de informação, incapacidade de representar parte da informação e perda de informação.
2. Modelo de dados

2.4. Modelo Orientado a Objectos


 Os bancos de dados orientados a objecto começaram a se tornar comercialmente viáveis
em meados de 1980.
 A motivação para seu surgimento está em função dos limites de armazenamento e
representação semântica impostas no modelo relacional.
 Quando os bancos de dados orientados a objectos foram introduzidos, algumas das falhas
perceptíveis do modelo relacional pareceram ter sido solucionadas com esta tecnologia e
acreditava-se que tais bancos de dados ganhariam grande parcela do mercado. Hoje,
porém, acredita-se que os Bancos de Dados Orientados a Objectos serão usados em
aplicações especializadas, enquanto os sistemas relacionais continuarão a sustentar os
negócios tradicionais, onde as estruturas de dados baseadas em relações são suficientes.
3. Conceitos gerais
 Base de dados
 Colecção de dados devidamente relacionado.
 Dados
 Factos que podem ser armazenados e possuem um significado implícito.
 Matéria prima para obtenção de informação.
 Informação
 Dados compilados e processados de acordo com a solicitação de consultas e analises.
 Sistema de Base de Dados
 É o conjunto composto pela base de dados e o software de gerenciamento de base de
dados.
3. Conceitos gerais

 Sistema Gerenciador de Base de Dados


 é uma colecção de programas que permitem aos usuários criarem e
manipularem uma base de dados. Um SGBD é, assim, um sistema de
software de propósito geral que facilita o processo de definir, construir e
manipular bases de dados de diversas aplicações.
 Definir – Envolve a especificação de tipo de dados a serem armazenados.
 Construir – Envolve a o processo de armazenar os dados em algum meio que
possa ser controlado pelo SGBD.
 Manipular – Envolve a utilização de funções como a de consulta e de
modificação.
3. Conceitos gerais
 Propriedades das bases de dados
 Uma base de dados é uma colecção de dados logicamente relacionado, com algum
significado. Associações aleatórias de dados não podem ser chamadas de base de
dados.
 Uma base de dados é projectada, construída e preenchida (instanciada) com dados
para um propósito específico. Ela tem um grupo de usuários e algumas aplicações
pré-concebidas para atendê-los;
 Uma base de dados representa algum aspecto do mundo real, algumas vezes
chamado de “minimundo”. Mudanças no minimundo provocam mudanças na base
de dados.
 Uma base de dados tem alguma fonte de dados, algum grau de interacção com
eventos do mundo real e uma audiência que está activamente interessada no seu
conteúdo.
4. Abordagem base da dados vs Sistema

gerenciador de arquivo
Natureza da auto-descrição de Sistema de Banco de Dados
 Uma característica importante da abordagem Banco de Dados é que o
SGBD mantém não somente os dados mas também a forma como os mesmos
são armazenados, contendo uma descrição completa do banco de dados. Estas
informações são armazenadas no catálogo do SGBD, o qual contém informações
como a estrutura de cada arquivo, o tipo e o formato de armazenamento de
cada tipo de dado, restrições, etc.
 A informação armazenada no catálogo é chamada de “Meta Dados”.
 No processamento tradicional de arquivos, o programa que irá manipular os
dados deve conter este tipo de informação, ficando limitado a manipular as
informações que o mesmo conhece. Utilizando a abordagem banco de dados, a
aplicação pode manipular muitas bases de dados diferentes.
4. Abordagem base da dados vs Sistema

gerenciador de arquivo
Separação entre Programas e Dados
 No processamento tradicional de arquivos, a estrutura dos dados está
incorporada ao programa de acesso. Desta forma, qualquer alteração na
estrutura de arquivos implica na alteração no código fonte de todos
os programas. Já na abordagem banco de dados, a estrutura é alterada
apenas no catálogo, não alterando os programas.
4. Abordagem base da dados vs Sistema
gerenciador de arquivo
 Abstração de Dados
 O SGBD deve fornecer ao usuário uma “representação conceitual” dos dados, sem
fornecer muitos detalhes de como as informações são armazenadas.
 Um “modelo de dados” é uma abstração de dados que é utilizada para fornecer esta
representação conceitual utilizando conceitos lógicos como objetos, suas propriedades
e seus relacionamentos.
 A estrutura detalhada e a organização de cada arquivo são descritas no catálogo.
4. Abordagem base da dados vs Sistema
gerenciador de arquivo
 Múltiplas Visões de Dados
 Como um conjunto de informações pode ser utilizada por um
conjunto diferente de usuários, é importante que estes usuários possam
ter “visões” diferentes da banco de dados.
 Uma “visão” é definida como um subconjunto de um banco de dados,
formando deste modo, um conjunto “virtual” de informações.
5. Usuários e Atividades envolvidas

 Administrador de Banco de Dados (DBA)


Em um ambiente de banco de dados, o recurso primário é o banco de dados por si só e o
recurso secundário é o SGBD e os softwares relacionados. A administração destes recursos
cabe ao Administrador de Banco de Dados, o qual é responsável pela autorização de acesso a
banco de dados e pela coordenação e monitoração de seu uso.
5. Usuários e Atividades envolvidas

 Projetista de Banco de Dados


O Projetista de Banco de Dados é responsável pela identificação dos dados que devem ser
armazenados no banco de dados, escolhendo a estrutura correta para representar e armazenar
dados. Muitas vezes, os projetistas de banco de dados atuam como “staff” do DBA,
assumindo outras responsabilidades após a construção do banco de dados. É função do
projetista também avaliar as necessidades de cada grupo de usuários para definir as visões que
serão necessárias, integrando-as, fazendo com que o banco de dados seja capaz de atender
todas as necessidades dos usuários.
5. Usuários e Atividades envolvidas

 Usuários Finais
Existem basicamente três categorias de usuários finais que são os usuários finais de
banco de dados, fazendo consultas, atualizações e gerando documentos:
 usuários casuais: acessam o banco de dados casualmente, mas que podem
necessitar de diferentes informações a cada acesso; utilizam sofisticadas linguagens
de consulta para especificar suas necessidades;
 usuários novatos ou paramétricos: utilizam porções pré-definidas do banco de
dados, utilizando consultas pré- estabelecidas que já foram exaustivamente testadas;
 usuários sofisticados: são usuários que estão familiarizados com o SGBD e
realizam consultas complexas.
5. Usuários e Atividades envolvidas

 Analistas de Sistemas e Programadores de Aplicações


Os analistas determinam os requisitos dos usuários finais e desenvolvem especificações para
transações que atendam estes requisitos, e os programadores implementam estas
especificações como programas, testando, depurando, documentando e dando manutenção
no mesmo. É importante que, tanto analistas quanto programadores, estejam a par dos
recursos oferecidos pelo SGBD.
6. Vantagens de um SGBD

 Controle de Redundância
 No processamento tradicional de arquivos, cada grupo de usuários deve manter seu
próprio conjunto de arquivos e dados. Desta forma, acaba ocorrendo redundâncias que
prejudicam o sistema com problemas como:
 Toda vez que for necessário atualizar um arquivo de um grupo, então todos os grupos
devem ser atualizados para manter a integridade dos dados no ambiente como um todo;
 A redundância desnecessária de dados levam ao armazenamento excessivo de informações,
ocupando espaço que poderia estar sendo utilizado com outras informações.
6. Vantagens de um SGBD

 Compartilhamento de Dados
 Um SGBD multi-usuário deve permitir que múltiplos usuários acessem o banco de dados
ao mesmo tempo. Este fator é essencial para que múltiplas aplicações integradas possam
acessar o banco.
 O SGBD multi-usuário deve manter o controle de concorrência para assegurar que
o resultado de atualizações sejam corretos. Um banco de dados multi-usuários deve
fornecer recursos para a construção de múltiplas visões.
6. Vantagens de um SGBD

 Restrição a Acesso não Autorizado


 Um SGBD deve fornece um subsistema de autorização e segurança, o qual é utilizado pelo
DBA para criar “contas” e especificar as restrições destas contas;
 O controle de restrições se aplica tanto ao acesso aos dados quanto ao uso de softwares
inerentes ao SGBD.
6. Vantagens de um SGBD

 Representação de Relacionamentos Complexos entre Dados


Um banco de dados pode incluir uma variedade de dados que estão inter-relacionados de
várias formas. Um SGBD deve fornecer recursos para se representar uma grande variedade de
relacionamentos entre os dados, bem como, recuperar e atualizar os dados de maneira prática e
eficiente.
6. Vantagens de um SGBD

 Tolerância a Falhas
Um SGBD deve fornecer recursos para recuperação de falhas tanto de software quanto de
hardware.
7. Quando não Utilizar um SGBD

 Em algumas situações, o uso de um SGBD pode representar uma carga desnecessária aos
custos quando comparado à abordagem processamento tradicional de arquivos como por
exemplo:
 Alto investimento inicial na compra de software e hardware adicionais;
 Generalidade que um SGBD fornece na definição e processamento de dados;
 Sobrecarga na provisão de controle de segurança, controle de concorrência, recuperação e
integração de funções.
7. Quando não Utilizar um SGBD

Problemas adicionais podem surgir caso os projetistas de banco de dados ou os


administradores de banco de dados não elaborem os projetos corretamente ou se as aplicações
não são implementadas de forma apropriada. Se o DBA não administrar o banco de dados de
forma apropriada, tanto a segurança quanto a integridade dos sistemas podem ser
comprometidas.
7. Quando não Utilizar um SGBD

Problemas adicionais podem surgir caso os projetistas de banco de dados ou os


administradores de banco de dados não elaborem os projetos corretamente ou se as aplicações
não são implementadas de forma apropriada. Se o DBA não administrar o banco de dados de
forma apropriada, tanto a segurança quanto a integridade dos sistemas podem ser
comprometidas.
7. Quando não Utilizar um SGBD

A sobrecarga causada pelo uso de um SGBD e a má administração justificam a utilização da


abordagem processamento tradicional de arquivos em casos como:
- O banco de dados e as aplicações são simples, bem definidas e não se espera mudanças no
projeto;
- A necessidade de processamento em tempo real de certas aplicações, que são terrivelmente
prejudicadas pela sobrecarga causada pelo uso de um SGBD;
- Não haverá múltiplo acesso ao banco de dados.
8. Arquitectura e independecia de dados de um
SGBD
 A arquitectura mais difundida na literatura é a three-schema, conhecida também por
ANSI/SPARC.
 A meta desta arquitectura é separar as aplicações dos usuários da base de dados física.
 Nesta arquitectura os esquemas podem ser definidas em três níveis:
Interno, Conceitual e Externo.
8. Arquitectura e independecia de dados de um
SGBD
 Nível interno: tem um esquema interno que descreve a estrutura de
armazenamento físico da base de dados. O esquema interno usa um modelo
de dados físico e descreve todos os detalhes de armazenamento de dados e
caminhos de acesso à base de dados;
 Nível conceitual: tem um esquema conceitual que descreve a estrutura de
toda a base de dados. O esquema conceitual é uma descrição global da base
de dados, que omite detalhes da estrutura de armazenamento físico e se
concentra na descrição de entidades, tipos de dados, relacionamentos e
restrições. Um modelo de dados de alto-nível ou um modelo de dados de
implementação podem ser utilizados neste nível.
 Nível externo ou visão: possui esquemas externos ou visões de usuários.
Cada esquema externo descreve a visão da base de dados de um grupo de
usuários da base de dados. Cada visão descreve, tipicamente, a parte da base
de dados que um particular grupo de usuários está interessado e esconde
deste o restante da base de dados. Um modelo de dados de alto-nível ou um
modelo de dados de implementação podem ser usados neste nível.
8. Arquitectura e independecia de dados de um
SGBD
 Muitos SGBD’s não separam os três níveis completamente. Pode acontecer que alguns SGBD’s incluam detalhes do nível interno no esquema conceitual. Em muitos
SGBD’s que permitem visões, os esquemas externos são especificados com o mesmo modelo de dados usado no nível conceitual. Note que os três esquemas são
apenas descrições dos dados.
 A arquitetura “three-schema” pode ser utilizada para explicar conceitos de independência de dados, que podem ser definidos como a capacidade de alterar o esquema
de um nível sem ter que alterar o esquema no próximo nível superior.
 Dois tipos de independência de dados podem ser definidos:

Independência Lógica de Dados: É a capacidade de alterar o esquema conceitual sem ter que mudar
os esquemas externos ou programas de aplicação. Pode-se mudar o esquema conceitual para
expandir a base de dados, com a adição de novos tipos de registros (ou itens de dados), ou reduzir a
base de dados removendo um tipo de registro. Neste último caso, esquemas externos que se referem
apenas aos dados remanescentes não devem ser afetados;
Independência Física de Dados: É a capacidade de alterar o esquema interno sem ter que alterar o
esquema conceitual externo. Mudanças no esquema interno podem ser necessárias devido a alguma
reorganização de arquivos físicos para melhorar o desempenho nas recuperações e/ou modificações.
Após a reorganização, se nenhum dado foi adicionado ou perdido, não haverá necessidade de
modificar o esquema conceitual.
Referências

 E. R. Elmasri and S. Navathe and. Fundamentals of Database Systems. Fourth Edition,


Editora Pearson Addison Wesley, 2003
 E. R. Elmasri and S. Navathe and. Fundamentals of Database Systems. Editora Addison
Wesley pub 2001
 Silberschatz, Abraham; Korth, Henry & Sudarshan, S.Sistema de banco de dados, Rio de
Janeiro: Campus, 3ª ed., 2005C. J. Date, A. Kannan, S. Swamynathan; An Intrduction to
Database Systems. EIGHTH EDITION
 Apresentações elaboradas pelo docente

Você também pode gostar