INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Introdução a Banco de Dados Docente: Éberton da Silva Marinho e-mail: ebertonsm@gmail.com 12/06/2013
Sumário Motivação da Disciplina O que é um SGBD Visão dos dados Modelos de Dados
INTRODUÇÃO A BANCO DE DADOS
História dos Dados O ser humano sempre desejou registrar O ser humano sempre desejou registrar acontecimentos de sua vida
História dos Dados Associação para contar (1 pedra = 1 Associação para contar (1 pedra = 1 ovelha)
História dos Dados Surgimento dos sistemas de numeração I, II, III, IV, V,..., X,..., L,..., C,..., M 1, 2, 3, 4, 5,..., 10,..., 50,..., 100,..., 1000
História dos Dados Evolução da Matemática, Contabilidade, Economia Dinheiro, i títulos, cheques, promissórias i
História dos Dados O papel sempre foi o meio mais usado para armazenar os dados Grandes volumes são difíceis de manter e manusear Muito tempo para recuperar a informação desejada d
História dos Dados Surgimento de calculadoras, computadores elétricos Arquivos em papel passaram ao meio eletrônico
Introdução Mundo globalizado e informatizado Informações têm que estar disponíveis rapidamente Os dados disponíveis devem ser confiáveis É preciso lidar com uma grande quantidade de informação (concorrência) Como tratar informações confidenciais?
Motivação Na década de 60 os dados eram armazenado em arquivos do SO (Sistema Operacional) Exemplo Sistema Bancário O sistema possui diversas aplicações para manipular arquivos Debitar ou creditar uma conta Criar uma nova conta Fornecer o saldo de uma conta Gerar extratos mensais
Motivação Redundância e inconsistência dos dados As aplicações podem ser desenvolvidas por grupos de desenvolvedores distintos Os arquivos que armazenam os dados possuem diferentes estruturas de dados As mesmas informações podem estar duplicadas Conseqüências q Maior custo de armazenamento e acesso Inconsistência de dados
Motivação Dificuldade de acesso aos dados Para diferentes finalidades são necessários diferentes programas Antigamente as consultas tinham que ser escritas no código fonte do programa. Acesso direto aos arquivos (tratamento de arquivos) Qualquer novo relatório demoraria um longo Qualquer novo relatório demoraria um longo tempo até que o programador fizesse uma rotina para obter o resultado.
Motivação Isolamento dos dados Como os dados estão espalhados em diferentes arquivos, que seguem diversos formatos, recuperar os dados se torna difícil
Motivação Problemas de integridade Restrições de consistência Exemplo: Saldo bancário Conseqüências Como administrar tais restrições nos diversos programas de acesso às informações? Como colocar novas restrições?
Motivação Problemas de Atomicidade Como garantir que as informações do sistema continuam válidas e consistentes após falhas? Exemplo Transferência bancária
Motivação Anomalias de acesso concorrente Grande parte dos sistemas comerciais são acessados por diversos usuários simultaneamente. Acesso e atualização concorrente de informações Maior desempenho Exemplo Vários saques simultâneos
Motivação Problemas de Segurança Determinado grupos de pessoas devem ter acesso apenas a uma parte do sistema
Conceito Banco de Dados????
SGBD SGBD: Sistema de Gerenciamento de Bando de Dados Coleção de dados inter-relacionados e um conjunto de programas para acessar esses dados. Objetivo: fornecer uma maneira de recuperar e armazenar informações de forma coerente e eficiente
SGBD São projetados para gerenciar grandes blocos de informações. Envolve definir estruturas para armazenamento de informações e fornecer mecanismos para manipulação e recuperação de dados Precisa garantir a segurança das informações armazenadas e a consistência mediante à falhas
Aplicações Bancos Linhas Aéreas Ui Universidades idd Operadoras de Cartão de Crédito Telecomunicações Vendas Comércio On-Line Indústria Recursos Humanos
Quando não usar SGBDs Aplicação extremamente simples, sem previsão de mudança e bem definida; Requisitos de tempo real difíceis de serem atendidas por causa de sobrecarga; Acesso de múltiplos usuários não é p requerida;
Quando não usar SGBDs Investimentos iniciais altos em hardware, software e treinamento; Generalidade no processamento de dados (requer funções específicas para tratar os dados); Custos elevados para segurança, controle de concorrência, recuperação e integridade;
SGBDs Comerciais/Gratuitos Microsoft ACCESS; MicrosftSQL Server; MySQL; FireBird/ Interbase; Oracle; Postgree; IBM DB2; SQLite;
Visão dos Dados Abstração de dados através de níveis de abstração Nível Físico: Descreve como os dados são realmente armazenados. Descreve estruturas de dados para armazenamento Nível Lógico: Descreve que dados estão armazenados no BD e a relação entre eles Nível de View: Descreve apenas parte do BD
Visão dos Dados View1 View2 View3 Nível Lógico Nível Físico
Trabalho de Pesquisa Pesquisar 3 tipos de SGBDs, descrevendo suas características principais Entregar próxima aula manuscrito
Modelo de Dados Coleção de ferramentas conceituais para descrever dados, relações de dados, semântica de dados e restrições de consistência Classificação Modelo Relacional Modelo Relacional Modelo Entidade/relacionamento Modelo de dados baseado em objetos Modelo de dados semi-estruturados
Modelo Relacional Usa um conjunto de tabelas para representar os dados e as relações entre eles Cada tabela possui colunas com nomes únicos na tabela O conjunto de dados referentes a um registro é chamado de tupla Cada coluna possui informações de um tipo específico, com um tamanho, geralmente, definido Modelo de dados mais usado pelas empresas que utilizam um sistema de informação
Modelo de Entidade/Relacionamento Baseado em uma percepção de um mundo real que consiste em uma coleção de objetos, chamados de entidades, e as relações entre esses objetos
Modelo Baseado em Objetos Pode ser visto como uma extensão ao modelo E-R com noções de encapsulamento, métodos e identidade de objeto. Combina recursos do Modelo Orientado a Objetos e do Modelo de Dados Relacional
Modelo de Dados Semi- Estruturados Permite a especificação dos dados em que itens de dados individuais do mesmo tipo possam ter diferentes conjuntos de atributos XML é um exemplo de linguagem que dá suporte a descrição de dados semiestruturados
Dúvidas e-mail: ebertonsm@gmail.com Endereço eletrônico da disciplina: http://docente.ifrn.edu.br/ebertonmarinho 34