Administração e Gerenciamento de Banco de Dados Nivelamento [email protected] Administração: Gestão (Aurélio) Administrador – administra e organiza a realidade atual (nível tático) Gestor – planeja e cria negócios e processos (nível estratégico). Gerenciamento: Dirigir (Aurélio) Diretor, Gestor (nível estratégico) Gerente (nível tático) de Banco de Dados Técnicos, Usuários (nível operacional) DBA Data Base Administrator Administrador de Banco de Dados Administradores que utilizam Banco de Dados Tipos de Gestor Reativo: que reage Ativo: que age Proativo: que antecipa, muda o curso Contemplativo: que medita Os administradores hábeis na leitura da vida organizacional têm a capacidade de permanecer abertos e flexíveis, substituindo julgamentos consolidados e pré-estabelecidos por uma visão mais abrangente da situação. “Não se gerencia o que não se mede, não se mede o que não se define, não se define o que não se entende, não há sucesso no que não se gerencia.” William Edwards Deming, 1900 - 1993 (professor americano de gestão da qualidade) Revisando BD O que são dados? O que está armazenado (entrada). O que são informações? Significado do que está armazenado (saída). O que é um banco de dados? É um armário de arquivamento de dados (definição 1). O que é banco de dados computadorizado? Armário de arquivamento de dados eletrônicos. A informação precisa ser: Clara: fato com clareza, não mascarado entre acessórios. Precisa: alto padrão de precisão. Não apresentar termos como: "por volta de...". Rápida: chegar ao ponto de decisão em tempo hábil para que gere efeito na referida decisão. Ela pode ser clara e precisa, mas chegar atrasada, perdendo a razão de ser. Dirigida: a quem tenha necessidade dela. Integrada: sem redundâncias. Passado: Do Banco de Dados convencional ao computadorizado Vantagens O processamento de dados proporciona: 1. Possibilidade de armazenamento de grande quantidade de informações; 2. Informações preservadas após o término dos processos; 3. Processamento rápido e correto dos dados. Surgem os banco de dados computadorizados... Grandes repositórios de dados (definição 2). Coleção de dados relacionados, organizados e armazenados com o objetivo de facilitar a sua manipulação: alterações, inserções, remoções e consultas (definição 3). Problemas? Surgem os banco de dados... e surgem novos problemas: • Consistência; • Redundância; • Necessidade de manutenção dos programas; • Necessidade de desenvolvimento de programas a cada nova tarefa; • Integridade. Do BD ao SGDB Surge a necessidade de: Integração de áreas. Documentação dos BD. Agilidade de desenvolvimento. Acesso concorrente, com controles complexos. Evitar erros de programação. SGBD O que é um SGBD? Um Sistema de Gerenciamento de Banco de Dados é uma coleção de dados inter-relacionados (mantidos em um ambiente conveniente e eficiente) e um conjunto de programas que permitem aos usuários acessar e modificar estes dados (definição 1). Uma importante característica! Fornecer aos usuários uma visão abstrata dos dados, ou seja, ocultar detalhes de como os dados são armazenados e mantidos. Surgem os SGBD... Software que incorpora as funções de definição, recuperação e alteração em um banco de dados. (definição 2 – em informática não existem nomes, siglas ou definições únicas! ) Facilita desenvolvimento de aplicações de BD. Manutenção de programas mais simples: • Testes do BD mais eficientes; • Aumenta produtividade do programador. Vantagens Rapidez: consultas on-line. Disponibilidade: toda informação está disponível. Flexibilidade: possibilidade de mudança, reorganização. Integridade: a duplicação é reduzida, padronizada, resultando em consistência dos dados. Sincronizada. Segurança: possibilidade de autenticações, restrições, restaurações. Porque usar um SGBD e não um sistema comum de armazenamento de dados? Redundância, Consistência e Integridade. dados armazenados em mais e um arquivo. Isolamento de dados. Dificuldade de acesso. Controle de acesso concorrente. Segurança. Abstração de dados. omissão de detalhes de armazenamento e manutenção. Estrutura de Implementação Arquivos de dados. - armazenamento do BD. Dicionário de dados. - metadados. Índices. - acesso rápido. REVISÃO REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS REVISÃO DE BANCO DE DADOS X Revisando BD Quais as operações básicas? Inserir, Consultar, Alterar, Excluir. SQL: INSERT, SELECT, UPDATE, DELETE. SQL – Structured Query Language (Linguagem de Consulta Estruturada). SQL é um marca de SGBD, uma instância do SGDB. Tipos de sistema quanto a estrutura: Monousuário Multiusuário Integrado Compartilhado Centralizado Descentralizado Tipos de sistema Monousuário – utilizado em apenas um terminal por vez; Multiusuário – utilizado em mais de um terminal por vez; Integrado – há unificação de dados entre os usuários eliminando redundâncias e consistindo dados (não há tabelas repetidas nas diferentes áreas do mesmo BD); Compartilhado – usuários de diferentes bancos de dados podem ter acesso as mesmas informações, trocando dados entre os bancos de dados; Centralizado – base de dados em apenas um servidor repositório; Descentralizado (Distribuído) – base de dados distribuído em mais de um servidor repositório. Composição BD Hardware Software Usuários Composição BD Hardware - Estação de trabalho; - Volume de armazenamento; - Processador(es) e memória principal. Software - SGBD; - Utilitários para aplicações; - Gerenciador de transações, TP (Transaction Processing). Usuários - Programadores de aplicações; - Usuários Finais; - DBA (database administrador). Tabela, linha e coluna Banco de dados, conjunto de tabelas, database Tabela, arquivo, table, entidade Linha, registro, record, instância (ocorrência) Coluna, campo, field, atributos Conceitos Entidade é um objeto que existe e é distinguível de outros objetos. Entidades possuem um conjunto de atributos. Atributos são propriedades descritivas das entidades. Instância é uma coleção de dados armazenadas em um banco de dados em um determinado momento. X Níveis de Abstração/ Fases de um projeto Projeto conceitual . abstração de mais alto nível; . objetivo: representação dos requisitos de dados do domínio; . independente de modelo de BD, podendo ser mapeado para qualquer SGBD; . necessita de envolvimento do usuário final; . facilita manutenção do modelo lógico e migração de modelo lógico. Níveis de Abstração Projeto lógico . representação da modelagem conceitual em um modelo de BD; . ênfase na eficiência de armazenamento; . evitar muitas tabelas e junções – cada decisão deve ser analisada ... . Definir o tipo de SGBD! Níveis de Abstração Projeto físico (implementação) . esquema SQL para a modelagem lógica; . dependente de SGBD; . ênfase na eficiência de acesso; . implementação de consultas, índices, ... Verificação do Projeto de Modelagem • Modelo deve ser completo, • Correto, • Livre de Redundâncias, • Consistente, • Ter Integridade, • Prever Segurança, • Ser eficiente... Faça a modelagem de dados (modelo lógico) para a biblioteca abaixo, apresentando todas as tabelas necessárias, seus atributos e suas respectivas chaves primárias: Uma Biblioteca mantém livros e periódicos, que podem ser consultados e/ou emprestados pelos seus usuários cadastrados. A biblioteca atende a 3 tipos de usuários: alunos, professores e outros. Os usuários fornecem para ser cadastrados as seguintes informações: Nome, endereço, CPF, idade e escolaridade. Os alunos devem ainda informar qual o curso que estão fazendo, qual seu Registro de Matrícula e ano de ingresso. Os professores devem indicar quais seus departamentos, disciplinas que ministram e titulação. A todos os usuários, a biblioteca atribui um número de usuário único. Os usuários podem emprestar e/ou consultar livros, mas apenas consultar periódicos. O empréstimo é feito da seguinte maneira, segundo o tipo de usuário: - Alunos: máximo de 4 livros, por até 14 dias; - Professores: máximo de 10 livros, por até 180 dias; - Outros: não há máximo de livros por até 7 dias. Referências HEUSER, C. A. Projeto de Banco de Dados, Porto Alegre, Sagra Luzzato, 2001. DATE, C. J. Introdução a Sistemas de Banco de Dados, Rio de Janeiro, Campus, 1984.