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 alexandre.matos@udesc.br
INTRODUÇÃO Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados. Além disso, cada vez mais, as organizações estão na dependência de dados que acabam tornando-se abundantes e complexos. Assim, ferramentas de gerenciamento, extração rápida e precisa de informações é fundamental. Sistema Gerenciador de Banco de Dados (SGBDs).
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 as operações de: Definição/Criação Consulta/ Manipulação Atualização Eliminação. Create Read Update Delete
SGBDS PROPÓSITOS GERAIS Definição de banco de dados envolve especificar dados com seus respectivos 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 NÍVEL EXTERNO Visão Externa... Usuários Finais Visão Externa NÍVEL CONCEITUAL Esquema Conceitual NÍVEL INTERNO Esquema Interno BD ARMAZENADO
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 dados específicos; 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
INDEPENDÊNCIA DE DADOS Com SBDs estamos mais propensos a alcançar Independência de Dados! É a capacidade de modificar a definição dos esquemas em determinado nível, sem afetar o esquema de nível superior. Independência de dados física: é a capacidade de modificar o esquema físico sem que, com isso, qualquer programa de aplicação precise ser reescrito. Independência de dados lógica: é a capacidade de modificar o esquema lógico sem que, com isso, qualquer programa de aplicação precise ser reescrito. Modificações no nível lógico são necessárias sempre que uma estrutura lógica do banco de dados é alterada (por exemplo, mudança do sistema monetário).
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 BD, 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 BD 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 BD 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 BD; 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 GUI Interface Web Camada de Apresentação Servidor de aplicação ou Servidor Web Programas de aplicação, páginas Web Camada lógica de negócios Servidor de Banco de Dados 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 Modelo de dados não-relacional (NoSQL)
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