BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos [email protected] SISTEMA GERENCIADOR DE BANCO DE DADOS Um SGBD é uma coleção de programas que permite aos usuários criar e manter um BD. É um sistema de software de propósito geral que facilita os processos de: Definição; Construção; Manipulação; Compartilhamento dos dados. SGBDS – PROPÓSITOS GERAIS Definição de banco de dados envolve especificar estruturas e tipos de dados para serem gravados no banco de dados, com uma descrição detalhada de cada tipo de dado. Construção de um banco de dados é o processo de consistir e gravar inicialmente dados no banco de dados. Manipulação de um banco de dados inclui funções como consulta por dados específicos e atualização para refletir as alterações no mundo real. SGBD – VISÃO GERAL Aplicações SGBD Programa para Processamento de Consultas/Programas Software para Acesso aos Dados Armazenados Definição dos Dados Armazenados (metadados) Banco de Dados Armazenado SGBD – VISÃO GERAL ... Usuários Finais NÍVEL EXTERNO Visão Externa NÍVEL CONCEITUAL NÍVEL INTERNO BD ARMAZENADO Esquema Conceitual Esquema Interno Visão Externa VANTAGENS DE UM SGBD [1/5] Controle de Redundância: Evita a duplicação de esforços no caso de atualizações de registros; Evita o desperdício de espaço de armazenamento; Evita a inconsistência de dados armazenados. VANTAGENS DE UM SGBD [2/5] Restrição de acesso não autorizado: Permite que alguns usuários só possam ter acesso a consulta e outros a qualquer tipo de acesso; Ex: restrição de acesso para proteger dados financeiros e de recursos humanos. VANTAGENS DE UM SGBD [3/5] Restrição de integridade: A nota de um aluno deve ser um valor decimal entre zero e 10; Toda disciplina existente na tabela Histórico Escolar deve também existir na tabela Disciplina; Todo aluno deve ter um único valor por disciplina para a coluna conceito na tabela Histórico Escolar. VANTAGENS DE UM SGBD [4/5] Garantia de Backup e Restauração: Um SGBD possui facilidades para recuperação de falhas de hardware ou de software; Exemplo: recuperar o BDs para um estado válido ao falhar durante uma transação. VANTAGENS DE UM SGBD [5/5] Potencial para garantir padrões: Padrões podem ser definidos para os nomes de tabelas, colunas e terminologias em geral; Tendo um controle centralizado dos dados, o responsável pode assegurar que esses padrões serão seguidos; Isso não ocorreria em um ambiente no qual cada grupo de usuário tem o controle de seus próprios arquivos e softwares. CICLO DE VIDA DE UM BD Análise das Necessidades Sintonização Projeto Conceitual Monitoração Projeto Lógico Implementação Projeto Físico CICLO DE VIDA DE UM BD Análise das Necessidades Atividades: Análise dos planos empresariais; Levantamento das necessidades gerais de informações; Levantamento das necessidades de processamento. Resultados: Especificação das necessidades globais de informações de forma não estruturada. CICLO DE VIDA DE UM BD Projeto Conceitual Atividades: Estruturação das necessidades gerais de informações; Especificação das entidades e relacionamentos; Identificação dos principais atributos. Resultados: Esquema conceitual do BDs, ou seja, o Modelo Entidade e Relacionamentos. CICLO DE VIDA DE UM BD Projeto Lógico Atividades: Análise das opções de modelagem do SGBD (Ex: Modelo Relacional); Mapeamento do esquema conceitual para o Modelo Relacional. Resultados: Estrutura lógica do BDs para o SGBD correspondente. CICLO DE VIDA DE UM BD Projeto Físico Atividades: Análise das opções de hardware e sistema operacional; Especificação das características físicas do BDs. Resultados: Estrutura física do BDs para o SGBD correspondente. CICLO DE VIDA DE UM BD Implementação Atividades: Geração e processamento das definições do BD na linguagem de definição de dados (DDL); Construção dos programas e carga inicial dos BD. Resultados: O Banco de Dados. CICLO DE VIDA DE UM BD Monitoração Atividades: Utilização do BD pelos sistemas de informação; Acompanhamento da utilização; Análise de desempenho. Resultados: Medidas de desempenho do BD. CARACTERIZAÇÃO DE SGBDS Quanto à Arquitetura Quanto ao Modelo de Dados Quanto ao número de usuários Monousuário Multiusuário Quanto aos locais de processamento Centralizado Distribuído Quanto ao custo Quanto tipo de acesso De uso geral De uso especial ARQUITETURAS DE SGBDS Centralizada Todo processamento (quando remoto) executado em um único computador central Cliente/Servidor Arquitetura de 2 camadas Arquitetura de 3 camadas ARQUITETURA CENTRALIZADA DE UM SGBD Interface do usuário + aplicações Todo processamento de todos usuários executado centralmente. ARQUITETURA C/S DE 2 CAMADAS PARA SGBDS Servidor de Arquivos Servidor de Impressão Incorporação de funcionalidades de SGBD; Conexões estabelecidas com um ou mais SGBDs. rede SGBD ARQUITETURA C/S DE 3 CAMADAS PARA SGBDS Servidor Web SGBD BD rede ARQUITETURA C/S DE 3 CAMADAS PARA SGBDS Cliente Servidor de aplicação ou Servidor Web Servidor de Banco de Dados GUI Interface Web Camada de Apresentação Programas de aplicação, páginas Web Camada lógica de negócios SGBD Camada de Serviços de BD MODELOS DE DADOS Após o projeto conceitual e no consequente projeto lógico, para que um SGBD armazene um BD necessita obedecer a um modelo de dados Trata-se, portanto, da forma como os dados serão estruturados em um BD (qual modelo seguir) Alguns exemplos: Modelo de dados relacional Modelo de dados de objeto Modelo de dados hierárquico Modelo de dados em rede Objeto-relacionais XML nativo LEITURA RECOMENDADA ELMASRI, Ramez; NAVATHE, Sham. Sistemas de banco de dados. 6. ed. São Paulo: Pearson, 2010. 788 p. ISBN 9788579360855 (broch.). Número de Chamada: 005.74 E48s 6.ed. => Cap. 1 DATE, C. J. Introdução a sistemas de bancos de dados. Rio de Janeiro: Campus, c2004. 865 p. ISBN 8535212736 (broch.). Número de Chamada: 005.74 D232i. 8 ed.. => Cap. 1