Baixe o app para aproveitar ainda mais
Prévia do material em texto
Banco de Dados Aula 1 Material adaptado: Sandra Siebra Por que estudar BD? Os Bancos de Dados fazem parte do nosso dia-a-dia: 2 Conceitos básicos Dado: elemento que mantém sua forma bruta. exemplos: endereço, data Informação: é o significado dos dados dentro de um contexto. “A informação é o conjunto de dados coletados de forma a se tornarem aplicáveis a um determinda situação.” exemplos: endereço de entrega, idade 3 Por que usar BD? 4 Exemplo de um BD 5 Banco de dados Banco de dados = instância de dado + meta-dados Instância de dado Dado propriamente Meta-dados Dicionário de dados Esquema da base de dados Acessado através de linguagens de definição de dados 6 Nem sempre foi assim... Sistemas de Arquivos (armazenados em pastas, no disco): Funcionalidades oferecidas Registros de tamanho fixo com campos de tipos diferentes Possibilidade de memória virtual e persistência Bloqueio de arquivo e registro para concorrência Dados de diferentes aplicações não estão integrados Dados são projetados para atender uma aplicação específica 7 7 7 8 Sistemas de arquivos Em uma fábrica com os dados em sistemas de arquivos: Sistema para Setor de Vendas Sistema para Setor de Produção Sistema para Setor de Engenharia Arquivos de vendas Arquivos de engenharia Arquivos de produção Mesmos dados aparecem em todos os arquivos da fábrica Teclado TC60 R$ 20,00 Monitor 15´ M60 R$ 150,00 Mouse MS09 R$ 10,00 Teclado TC60 10/11/2000 Monitor 15´ M60 20/11/2000 Mouse MS09 09/11/2000 Teclado TC60 teclado.gif Monitor 15´ M60 monitor.gif Mouse MS09 mouse.gif [baseado em Heuser] 8 8 Sistemas de arquivos dados não integrados Mesmo objeto da realidade é representado várias vezes na base de dados Exemplo - teclado, monitor e mouse Redundância não controlada de dados Não há gerência automática da redundância Redundância leva a inconsistência dos dados re-digitação de informações dificuldade de extração de informações Dados pouco confiáveis e de baixa disponibilidade 9 9 9 Sistemas de arquivos Concorrência Difícil implementação Políticas de acesso concorrente consistente são independentes de domínio Tolerância a falhas Falta de luz, erro de disco, interrupção de funcionamento, etc Cópias? restauração do estado anterior? Consistência da base? Segurança Acesso diferenciado por tipo de usuário 10 10 10 Sistemas de arquivos gerenciamento dos arquivos Outros problemas: Número máximo de arquivos Tamanho de memória Limitações do tipo de arquivo, tipo de acesso Preocupações técnicas junto com problemas do domínio Exemplo: efetuar aluguel de um DVD Sem reservas? sem multas? Como registrar um empréstimo? abrir arquivos (fechando outros …) carregar registros na memória (abre índice, usa ponteiro, estourou memória?, ….) 11 11 11 12 Banco de dados Em uma fábrica com os dados em bancos de dados: Sistema para Setor de Vendas Sistema para Setor de Produção Sistema para Setor de Engenharia Banco de dados Teclado TC60 Monitor 15´ M60 Mouse MS09 R$ 20,00 R$ 150,00 R$ 10,00 10/11/2000 20/11/2000 09/11/2000 teclado.gif monitor.gif mouse.gif Dados aparecem uma única vez no banco [baseado em Heuser] 12 12 13 Gerenciamento do banco de dados BD de uma fábrica: Sistema para Setor de Vendas Sistema para Setor de Produção Sistema para Setor de Engenharia Banco de dados Teclado TC60 Monitor 15´ M60 Mouse MS09 R$ 20,00 R$ 150,00 R$ 10,00 10/11/2000 20/11/2000 09/11/2000 teclado.gif monitor.gif mouse.gif SGBD Software que permite a criação e gerência da base de dados Exemplos destes Softwares: Livres: FireBird, PostgreSQL e MySQL Comerciais (pagos) Oracle, DB2 e SQLServer 13 13 O que são Bancos de Dados É uma coleção de dados relacionados, organizados e armazenados visando facilitar sua posterior manipulação e a realização de consultas. O uso do termo é mais restrito em virtude das seguintes características: Um BD representa algum aspecto do mundo real, o qual chamamos de Minimundo ou Universo de Discurso É um conjunto lógico e ordenado de dados que possuem algum significado inerente Um BD é projetado, construído e povoado com dados que possuem objetivos específicos Sistema Gerenciador de Banco de Dados (SGBD) É uma coleção de programas que permite aos usuários criar e manter um banco de dados É um sistema de software de propósito geral que facilita os processos de definição, construção, manipulação e compartilhamento de bancos de dados entre vários usuários e aplicações. Sistema de Banco de Dados Sistema de Banco de Dados Pessoas interagem com os programas desenvolvidos em uma linguagem de aplicação , criados para usuários finais utilizando-se uma linguagem própria para acesso ao banco de dados. Sistema de Banco de Dados Esta aplicação interage com o SGBD, que processa as consultas. Sistema de Banco de Dados Esta aplicação interage com o SGBD, que acessa os dados armazenados, dentro de outras funções. Sistema de Banco de Dados Base de dados, separada em dois arquivos distintos, um contendo a definição dos dados e o outro contendo os dados armazenados propriamente ditos. Sistema de Banco de Dados Este arquivo de dados é denominado dicionário de dados e contém metadados, ou dados sobre dados. Especifica as características dos dados: tipo, tamanho, restrições de conteúdo, etc. Sistema de Banco de Dados Nesta outra base estariam os dados propriamente ditos que devem seguir as especificações do dicionário de dados. Sistema de Banco de Dados Nome da livraria: caracter 255 Endereço: caracter 80 Telefone: caracter 20 CNPJ: caracter 14 Livraria ZAN Avenida Domingos Ferreiras, 224 8134213579 7890985742345 Sistema Gerenciador de Banco de Dados (SGBD) É uma coleção de programas que permite aos usuários criar e manter um banco de dados É um sistema de software que facilita os processos de definição, construção, manipulação e compartilhamento de bancos de dados entre vários usuários e aplicações Definição: Especificação dos tipos de dados, das estruturas das tabelas e das restrições que devem ser impostas aos dados que serão armazenados Construção: Processo de acumular os dados num meio de armazenamento controlado pelo SGBD Manipulação: Operações como atualização do banco de dados (inclusão, exclusão e alteração de registros) e extração de dados, como consultas e relatórios impressos Compartilhamento: Permite aos múltiplos usuários e programas acessar, de forma concorrente, o banco de dados Sistema Gerenciador de Banco de Dados (SGBD) Independência de Dados: capacidade de tomar as características físicas dos dados transparentes para a aplicação Redução ou Eliminação de Redundância Segurança de dados Controle de transação A- Atomicidade: ou todas operações envolvidas na transação ocorrem, ou nenhuma deles tem efeito sobre banco C- Consistência: ao final da execução da transação a consistência no banco deve ser mantida I- Isolamento: uma transação deve ter sua execução realizada de forma isolada D- Durabilidade: depois da transação executada com sucesso , as modificações devem ser mantidas no sistema Ex: Oracle, SQL Server, PostgreSQL, MYSQL, Interbase, Sybase, Firebird, etc.. Vantagens do SGBD Independência entre programas e dados Catalogo que consiste de metadados – dados sobre os dados Independência entre operações e programas Funções / procedimentos de manipulação dos dados armazenados também fazem parte do BD Segurança Controle de acesso mais especializado Suporte a Visões Mesmo conjunto de dados pode ser apresentado a usuários diferentes de forma distinta Facilidades de Backup e Restauração Fornecimento de Múltiplas Interfaces aos Usuários Baseadas em Menus e formulários (GUIs – Graphical USer Interface) Linguagens de consulta e interfaces de linguagem de programação Sistema de Arquivos - Alguns Problemas Dificuldade do acesso a dados – a geração de informaçãopode surgir, durante o tempo em que o sistema está em produção, sob diferentes aspectos; Isolamento dos dados – os dados estão armazenados em arquivos distintos, que não possuem qualquer tipo de relacionamento direto; Problemas de integridade – fica difícil manter restrições de integridade automaticamente. Problemas de segurança - Nem todos os usuários do sistema devem estar autorizados a ver/acessar todos os dados armazenados; Projeto de Banco de Dados Normalmente, envolve três fases: Projeto Conceitual Modelo Conceitual dos Dados. Projeto Lógico Modelo Baseado no Modelo Conceitual (de acordo com o SGBD); Projeto Físico Enquanto os dois primeiros projetos trabalham a funcionalidade, o último foca no desempenho. Além disso, o projeto Físico é de implementação contínua (tunning). Atores Pessoas participantes do projeto, manutenção ou uso de banco de dados; Usuário Final; Administradores, os famosos DBA; Projetistas; Analistas de Sistemas e Programadores de Aplicações. BIBLIOGRAFIA BIBLIOGRAFIA BÁSICA SIEBRA, Sandra A. Banco de Dados. Volume 1, 2010. ROB, Peter e CORONEL, Carlos. Sistemas de banco de dados: projeto, implementação e administração. Tradução da 8ª edição, norte-americana. São Paulo: Cengage Learning, 2011. SILBERSCHATZ, Abraham; KORTH, Henry F. e Sudarshan, S. Sistema de Banco de Dados. Makron Books do Brasil Editora Ltda. – 3ª edição, 1999. ELMASRI, Ramez e NAVATHE, Shamkant B. Sistemas de Banco de Dados: Fundamentos e Aplicações. Editora LTC: 3 ª edição, 2002.
Compartilhar