Buscar

conceitos básicos de bancos de dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 8 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Modelagem de Dados – Apoio aula 08 de agosto 
Prof. Vanilde 
 
� Dados x informação 
� Processo 
� 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. 
Banco de dados: 
� “É uma coleção organizada de fatos e informações” (Stair, 1996) 
� “É uma coleção de fatos registrados que refletem o estado de certos aspectos de 
interesse do mundo real. “(Machado e Abreu, 1995) 
Sistema Gerenciador de Banco de Dados (SGBD): 
� é uma coleção de programas que permite ao usuário criar e manter um banco de 
dados. ” (Navathe, 1994) 
� “é uma coleção de programas e utilitários para organizar, armazenar, atualizar e 
recuperar dados.”(Hackathorn, 1993) 
A melhor maneira de entender a natureza geral e as características dos bancos de dados 
de hoje é olhar para as características dos sistemas que antecederam o uso da tecnologia 
de banco de dados: os Sistemas de Gerenciamento de Arquivos. 
� Cada usuário define e implementa os arquivos necessários para uma aplicação 
específica, acarretando repetição dos dados gerando inconsistência nas 
informações. 
� O acesso aos dados está escrito nos programas que o manipulam, 
subordinando os programas aos arquivos. 
� A manipulação dos dados contidos nos arquivos pelas aplicações específicas 
dificulta o desenvolvimento de novos sistemas e torna a manutenção dos 
aplicativos difícil e cara. 
� O sistema possibilita uma redundância não controlada de dados e 
inconsistência ao permitir que em um sistema um dado seja alterado e esse 
mesmo dado não seja alterado em outro. 
� A responsabilidade sobre os procedimentos de backup e recuperação esta a 
cargo da aplicação. 
Banco de Dados 
� Um arquivo (tabela) é definido uma única vez e atende a várias aplicações 
� Armazena-se junto com os dados toda as informações referentes à forma como foram 
estruturados os dados e onde eles estão armazenados fisicamente. Essas informações 
estão armazenadas em um catálogo que é chamado de meta-data. 
� Há separação entre programas e dados. No SGBD os acessos são escritos no banco de 
dados e os programas enviam comandos solicitando o acesso aos dados. Esse conceito 
é chamado de abstração de dados, que caracteriza-se por uma independência entre 
programas e dados e entre programas e operações de manipulação de dados. 
� São permitidas visões diferenciadas sobre a mesma base de dados para aplicações 
diferentes. 
� É permitido acesso simultâneo de vários usuários ao mesmo dado. Essa 
simultaneidade é tratada através do gerenciamento da concorrência. 
Pessoas envolvidas com Banco de Dados 
� Administrador de dados (AD): responsáveis por identificar os dados a serem 
armazenados no BD e por escolher as estruturas apropriadas para representar e 
armazenar esses dados. Comunicação c/ usuários p/ identificação de visões (esquemas 
conceituais), desenvolve e mantém o dicionário de dados, garante as necessidade 
corporativas de dados 
� Administradores do BD (ABD) : desenvolve os esquemas internos através da 
construção das tabelas, índices, etc., autoriza o acesso ao banco de dados, de modo a 
coordenar e monitorar seu uso, garante a segurança dos dados, bem como seu 
backup e recuperação em caso de falhas, garante a performance do banco de dados e 
desenvolve visões que atendam ao esquema externo 
� Analistas de sistemas : determinam os requisitos dos usuários finais e desenvolvem 
especificações de transações que satisfaçam esses requisitos. 
� Programadores de aplicação : implementam as especificações das transações como 
programas, testando-os, corrigindo-os e documentando-os. 
� Usuários finais: utilizam os sistemas projetados pelo analista de sistemas cuja base de 
dados é mantida e monitorada pelo DBA e cuja integração com o conjunto da 
corporação é garantido pelo esquema conceitual mantido pelo AD. 
� Pessoal de suporte 
 
Principais características de um SGBD 
• Independência de Dados 
 “Consiste na capacidade de permitir que haja evolução na descrição dos dados da empresa, 
sem que os sistemas ou aplicações tenhas que ser alterados” 
 “Imunidade das aplicações às mudanças na estrutura de armazenagem e estratégias de 
acesso” 
• Controle de Redundância 
“Redundância é armazenar o mesmo dado várias vezes para atender diversas aplicações. Para 
manter a consistência do banco de dados, deve-se armazenar o dado uma única vez e em 
apenas um lugar no banco de dados. Isto permite manter a consistência, economizar espaço 
de armazenamento.” Em alguns caso, a redundância é necessária, porém ela deve ser 
controlada pelo sistema de gerenciamento de banco de dados. “ (Elmasri & Navathe, 1994) 
“É um conceito representado pelo controle centralizado dos dados compartilhados por 
diversas aplicações, reduzindo a repetição de dados a um mínimo justificável e aceita apenas 
por questão de desempenho.” (Cerícola, 1991) 
 Problemas da redundância de dados: 
• duplicação de esforço para manter os dados atualizados; 
• desperdício de espaço de armazenamento; 
• possibilidade de inconsistência dos dados 
• Compartilhamento de Dados 
Permitir a usuário diferentes a utilização simultânea de um mesmo dado. 
� Exemplos: As informações sobre clientes podem ser acessadas pelo sistema 
de vendas, de contas a receber e faturamento simultaneamente. 
 A mesma base de dados sobre empregados pode ser usada simultaneamente pelo sistema 
de recursos humanos e pelo sistema de vendas. No primeiro caso os dados serão utilizados no 
processo de pagamento e no segundo no processo de alocação dos vendedores às áreas de 
atendimento a cliente. 
• Restrições de Acesso 
“Um SGBD deve prover controles de segurança e autorização, que são utilizados para criar 
contas e seus respectivos direitos de acesso quando múltiplos usuários compartilham um 
banco de dados.” (Navathe,1994) 
“ Os controles de segurança abrangem conceitos tais como: procedimentos de validação e 
controle, garantia de integridade e controle de acesso, que visam resguardar o banco de dados 
de uma possível perda ou destruição de dados seja por falha de programa ou por falha de 
equipamento” (Cerícola, 1991) 
� Exemplos: O sistema de pagamento poderá atualizar o cargo ocupado pelo 
empregado enquanto o sistema de vendas poderá apensa consultar qual o 
cargo de um determinado empregado. 
O sistema de controle de material poderá incluir um novo material no cadastro existente 
enquanto a área de compras consultará as informações sobre os materiais necessários para o 
processo de produção. 
� Segurança e autorização 
• senhas para usuários e para grupos de usuários; 
• restrição de acesso a parte do banco de dados; 
• proibição de executar certas operações; 
• acesso restrito apenas a transações “enlatadas”; 
• proibição de uso de software privilegiado, como o software de 
criação de contas. 
• Restrições de Integridade 
 “A maioria dos SGBD provem certas restrições de integridade que devem ser aplicadas aos 
dados. O SGBD deve ter mecanismos para possibilitar a definição das restrições e assegurar o 
respeito a estas. Um exemplo de restrição de integridade é a definição de um tipo de dado 
(data type) para cada item de dado. 
� Exemplo: Ao definir o tipo cores como: azul, vermelho, amarelo e verde. E 
em seguida definir um atributo cor_parede como do tipo cores. O SGBD 
aceitará apenas os tipos definidos ou sejaazul, vermelho, amarelo e verde 
como válidos para este atributo. 
 Pergunta: o que aconteceria se o usuário informasse a cor branco para o atributo 
cor_parede? 
• Mecanismos de Backup e Recuperação 
 “Um SGBD deve prover facilidades para recuperação de falhas do hardware ou software. 
 Estes mecanismos evitam que cada aplicação tenha que projetar e desenvolver seus próprios 
controles contra a perda de dados. 
� Exemplo: Se o sistema falha no meio de um programa de alteração complexo, 
o mecanismo de recuperação é responsável por assegurar que o banco de 
dados será restaurado para o estágio que ele se encontrava antes do início da 
execução do programa. 
� Múltiplas Interfaces 
� Linguagens de consulta para usuários casuais; 
� Linguagens de programação para programadores de aplicações; 
� Interfaces gráficas com formulários (telas) e menus para usuários paramétricos; 
� Interfaces para administração do banco de dados; 
� Linguagem natural. 
� Benefícios adicionais dos bancos de dados 
� Potencial para o estabelecimento e o cumprimento de padrões 
� Flexibilidade de mudanças 
� Redução no tempo de desenvolvimento de novas aplicações 
� Disponibilidade de informação atualizada 
� Economia de escala 
� Bancos de dados NÃO são sempre a solução!!! 
� Quando NÃO usar bancos de dados 
� Volume de dados pequeno, aplicações simples, bem definidas. 
Mudanças não são esperadas. 
� Requisitos estritos de tempo real. 
� Acessos múltiplos e concorrentes não são necessários 
 
BD x Abstração de Dados 
Abstração é um processo mental que seleciona algumas características e propriedades de um 
conjunto de objetos e exclui outras que não são relevantes 
Um dos maiores benefícios dos sistemas de banco de dados é proporcionar aos usuários uma 
visão abstrata dos dados. O sistema é capaz de ocultar alguns detalhes sobre a forma de 
armazenamento e a manutenção dos dados. 
• A eficiência da recuperação de informações está relacionada à forma como as estruturas de 
representação são projetadas e, dado a complexidade e importância destas representações, 
elas devem ser protegidas em níveis de abstrações. 
• Estes níveis facilitam a manutenção do sistema e a interação dos usuários com os sistemas. 
 
Níveis de Abstração de Dados em um SGBD (Arquitetura ANSI/SPARC) 
Nível de Externo: O mais alto nível de abstração. Proporciona uma visão parcial do banco de 
dados. Diferentes visões são usados por diferentes usuários. 
Nível Conceitual: quais dados estão armazenados e quais são os inter-relacionamentos 
existentes entre eles. Usado pelos administradores de banco de dados e programadores. 
Nível Físico: como os dados estão, de fato, armazenados (descrição em detalhes das estruturas 
de dados). Mais baixo nível de abstração. Administradores de banco de dados devem ter 
noções da organização deste nível.
 
 
Níveis de Abstração de Dados em um SGBD (Arquitetura ANSI/SPARC)
Objetivo é permitir que o SGBD garanta:
1) diferentes níveis de abstrações do BD
2) independência de dados 
 O que interessa é que os dados estejam disponíveis no momento
independentemente de como este foi armazenado
A arquitetura ANSI/SPARC permite 2 tipos de independência de dados:
 Independência de Dados Lógica
• É a capacidade de alterar o nível conceitual sem afetar o nível externo ou programas de 
aplicação. Exemplo: 
Adição/exclusão de um campo. No último caso, as visões do nível externo que referem
dados restantes não seriam afetadas
Independência de Dados Física
• É a capacidade de alterar o nível interno sem afetar o nível conceitual
Criação de estruturas de acesso para melhorar a performance de
como os dados estão, de fato, armazenados (descrição em detalhes das estruturas 
de dados). Mais baixo nível de abstração. Administradores de banco de dados devem ter 
te nível. 
Níveis de Abstração de Dados em um SGBD (Arquitetura ANSI/SPARC) 
é permitir que o SGBD garanta: 
1) diferentes níveis de abstrações do BD 
O que interessa é que os dados estejam disponíveis no momento necessário, 
independentemente de como este foi armazenado 
A arquitetura ANSI/SPARC permite 2 tipos de independência de dados: 
Independência de Dados Lógica 
• É a capacidade de alterar o nível conceitual sem afetar o nível externo ou programas de 
Adição/exclusão de um campo. No último caso, as visões do nível externo que referem
dados restantes não seriam afetadas 
Independência de Dados Física 
• É a capacidade de alterar o nível interno sem afetar o nível conceitual. Exemplo:
de estruturas de acesso para melhorar a performance de consulta ou atualização.
como os dados estão, de fato, armazenados (descrição em detalhes das estruturas 
de dados). Mais baixo nível de abstração. Administradores de banco de dados devem ter 
 
rio, 
• É a capacidade de alterar o nível conceitual sem afetar o nível externo ou programas de 
Adição/exclusão de um campo. No último caso, as visões do nível externo que referem-se aos 
Exemplo: 
consulta ou atualização. 
 
Modelo, Instâncias e Esquemas
 
Modelo de BD 
É uma especificação formal para descrever qualquer BD a partir de estruturas de dados, regras 
de integridade de dados (RI) e ope
Os modelos de dados permitem descrever:
� Os relacionamentos entre os dados,
� A semântica dos dados e
� As regras de consistência
 
Modelo de BD 
Exemplos de Modelos de Dados:
• Entidade e relacionamento
• Relacional 
• Baseado em Objetos
• Hierárquico 
• Rede 
• 
Esquema de BD 
� Também chamado de intenção do BD
É a descrição de um BD segundo um modelo de dados
Modelo, Instâncias e Esquemas 
É uma especificação formal para descrever qualquer BD a partir de estruturas de dados, regras 
de integridade de dados (RI) e operações sobre os dados. 
Os modelos de dados permitem descrever: 
Os relacionamentos entre os dados, 
A semântica dos dados e 
As regras de consistência 
Exemplos de Modelos de Dados: 
Entidade e relacionamento 
Baseado em Objetos 
Também chamado de intenção do BD 
É a descrição de um BD segundo um modelo de dados 
 
É uma especificação formal para descrever qualquer BD a partir de estruturas de dados, regras 
Instância de BD 
� Também chamado de extensão do BD)
 
É a coleção dos dados armazenados no BD em um determinado momento
Projeto (Design) de BD 
Também chamado de extensão do BD) 
É a coleção dos dados armazenados no BD em um determinado momento

Outros materiais