Buscar

Modelagem de Dados – Apoio aulas 1 e 2

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

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

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ê 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

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

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ê 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

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

Prévia do material em texto

Modelagem de Dados – Apoio aulas 1 e 2
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 seja azul, 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ávelpor 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 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 aplicação. Exemplo: 
Adição/exclusão de um campo. No último caso, as visões do nível externo que referem-se aos 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:
Criação de estruturas de acesso para melhorar a performance de 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 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
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
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

Outros materiais