Upload
phungtuyen
View
215
Download
0
Embed Size (px)
Citation preview
Maria Helena Braz
Introdução às Bases de Dados
Ficheiro 1
Ficheiro 2
Ficheiro 3
Base de Dados
Sistemade Gestãode Bases de Dados (SGBD)
Prog .1
Prog. 2
Saída 1
Saída 2
• O Sistema de Base de Dados através do SGBD permite controlar de forma centralizada os dados armazenados.
Maria Helena Braz
Introdução às Bases de Dados
Ficheiro 1
Ficheiro 2
Ficheiro 3
Base de DadosProg.1
Prog.2
Saída 1
Saída 2
• Se não existir um SGBD o acesso aos dados tem que ser feito através do sistema de gestão de ficheiros (SGF) e os programas têm acesso directo aos ficheiros.
Maria Helena Braz
Introdução às Bases de Dados•Vantagens dos SGBD em relação a SGF:Controlo centralizado – Um SGBD sob o controlo de um Administrador de Dados garante a qualidade dos dados, as restrições de acesso, a integridade dos dados e permite equilibrar requisitos conflituantes.Compartilhar dados Usando um SGBD a informação contida na base de dados pode ser utilizada por diversos aplicativos de forma flexível e controlada.Independência de dados – As aplicações tornam-se independentes de forma física de armazenamento.
Maria Helena Braz
Introdução às Bases de Dados
•Vantagens dos SGBD em relação a SGF:Acesso por utilizadores finais – Actualmente os SGBD possuem uma interface que permite a utilizadores não programadores manipular a base de dados.Controlo de redundância – Num SGF diferentes ficheiros de dados são usados por diferentes aplicações pelo que podem aparecer duplicações de informação. Num SGBD diminui-se a probabilidade de duplicação e esta se existir é normalmente controlada pelo SGBD.
Maria Helena Braz
Introdução às Bases de Dados
•Vantagens dos SGBD em relação a SGF:Visões – Os SGBD permitem geralmente o tratamento da informação de forma adequada a cada utilizador mostrando aquilo que lhe é necessário e escondendo dados de que este não necessita ou aos quais não deve ter acesso.
Maria Helena Braz
Introdução às Bases de Dados•Desvantagens de usar SGBD:Custo – O SGBD e o hardware a ele associado podem ser dispendiosos e de qualquer forma representam um custo adicional de aquisição e manutenção.Complexidade – Um SGBD é mais complexo que um SGF e necessita de conhecimentos especializados por parte dos programadores.Risco centralizado – Ao centralizar os dados e reduzir a sua redundância existe teoricamente um maior risco de perda dos dados, no entanto a maioria dos SGBD tem procedimentos para back-up e recuperação dos dados que minimizam estes riscos.
Maria Helena Braz
Introdução às Bases de Dados
•Genericamente um SGBD possui:• Linguagem de Definição de Dados (LDD)– que
permite ao utilizador especificar os tipos de dados, as estruturas e as restrições sobre os dados que serão armazenados na BD;
• Linguagem de Manipulação de dados (LMD)–que permite ao utilizador inserir, actualizar, apagar ou consultar dados da BD.
Maria Helena Braz
Introdução às Bases de Dados
•Muitos sistemas permitem a inclusão destas sub-linguagens em linguagem de programação de alto nível como o C#, C, Fortran, Cobol chamadas linguagens hospedeiras, para permitir o desenvolvimento de aplicações complexas.•Os sistemas geralmente aceitam a utilização das linguagens de BD de forma interactiva para resolução de tarefas simples.
Maria Helena Braz
Introdução às Bases de Dados
Classificação dos SGBD1º Critério - Utilizar o modelo de dados•Assim temos sistemas:
– Relacionais– Rede– Hierárquicos– Orientados a objectos– ....
Maria Helena Braz
Introdução às Bases de Dados
•Uma Base de Dados Relacional é uma BD vista pelos Utilizadores como um Conjunto de Tabelasespeciais chamadas Relações.•Do ponto de vista computacional uma relaçãopode ser vista como tipo especial de ficheiro.)
F# F Nome Estado CidadeF1 José 20 BragaF2 João 10 FaroF3 Luís 30 LisboaF4 Rui 30 Setúbal
F# F Nome Estado CidadeF1 José 20 BragaF2 João 10 FaroF3 Luís 30 LisboaF4 Rui 30 Setúbal
Maria Helena Braz
Introdução às Bases de Dados
Assim uma relação é uma tabela onde:- Todas as tuplas têm de ter o mesmo número de atributos;- Os valores de cada atributo devem pertencer a um certo domínio;- E como uma relação é um conjunto, não pode haver duas tuplas com valores iguais.
Maria Helena Braz
Introdução às Bases de Dados
1980 João 600001991 José 500001975 Rui 700001980 Bruno 60000... ... ...
Ficheiro correspondente aRelação
1978 Bela 60000 37Tiago 1982 600001981 Rita sessenta
Registos que não podem ser incluídos narelação anterior
Maria Helena Braz
Introdução às Bases de Dados
F# F Nome Estado Cidade
F1 José 20 Braga
F2 João 10 Faro
F3 Luís 30 Lisboa
F4 Rui 30 Setúbal
Relação
Domínios
Atributos
Tuplas
Chave primária
Maria Helena Braz
Introdução às Bases de Dados
Classificação dos SGBD2.º Critério - Utilizar o n.º de máquinas onde a base de dados está armazenada•Teremos assim sistemas:
– Centralizados– Distribuídos (Homogéneos; Heterogéneos)
Maria Helena Braz
Introdução às Bases de Dados
Classificação dos SGBD3.º Critério - Utilizar o n.º de utilizadores que o sistema é capaz de suportar•Resultando sistemas:
– Pessoais (single-user)– Multi-utilizador
Maria Helena Braz
Introdução às Bases de Dados•Arquitecturas para SGBD Multi-utilizador1 – Teleprocessamento:
•Um só computador central com um CPU e diversos terminais•O computador central é responsável por todo o processamento incluindo a formatação dos dados para exibição nos terminais.
Maria Helena Braz
Introdução às Bases de Dados•Arquitecturas para SGBD Multi-utilizador2 – File-Server
•Neste caso as aplicações e o SGBD correm nas estações. É equivalente a um disco compartilhado
Estação 1 Estação 2 Est. N
File-Server
LAN
Pedidos de dados
Ficheiros retornados
Maria Helena Braz
Introdução às Bases de Dados•Arquitecturas para SGBD Multi-utilizador2 – File-Server
A arquitectura File-Server tem 3 grandes desvantagens:•Gera muito tráfego na rede;•É necessário um SGBD por estação;•O controlo de concorrência, recuperação e integridade é muito confuso, pois múltiplos SGBD acedem aos ficheiros
Para evitar estes inconvenientes surgiu a chamada arquitectura cliente-servidor
Maria Helena Braz
Introdução às Bases de Dados•Arquitecturas para SGBD Multi-utilizador3 – Cliente-Servidor
Cliente 1 Cliente 2 Cliente N
Server(com SGBD)
LAN
Pedidos de dados
Dados seleccionados
Maria Helena Braz
Introdução às Bases de Dados•Arquitecturas para SGBD Multi-utilizador3 – Cliente-Servidor• Os clientes são responsáveis pelas interfaces, aceitam os
pedidos dos utilizadores, verificam a sintaxe e geram os pedidos à BD numa dada linguagem, transmitem esses pedidos e, ao receberem a resposta, formatam-na para exibição.
• O Servidor aceita os pedidos e devolve os resultados. O processamento envolve as verificações de acesso, de integridade, a manutenção do dicionário de dados e a execução de consultas ou actualizações. É responsável também por controlar a concorrência e a recuperação
Maria Helena Braz
Introdução às Bases de Dados•Arquitecturas para SGBD Multi-utilizador3 – Cliente-ServidorAs vantagens de arquitectura Cliente-Servidor são:• Permitir um acesso alargado às BD• Aumento da performance;• Pode diminuir os custos do hardware (só o servidor
necessita altas capacidade de armazenamento)• Reduz os custos de comunicação• Aumenta a consistência