introdução a banco de dados e a sistemas gerenciadores de banco de dados (sgbd)
TRANSCRIPT
![Page 1: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/1.jpg)
Introdução a Banco de Dados e a Sistemas Gerenciadores de
Banco de Dados (SGBD)
![Page 2: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/2.jpg)
Conceitos Básicos
• Dado: fato do mundo real que está registrado e possui um significado implícito no contexto de um domínio de aplicação– Exemplos: endereço, data de nascimento
• Informação: dato útil que pode ser extraído direta ou indiretamente a partir dos dados– Exemplo: endereço da Maria, idade
![Page 3: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/3.jpg)
Por quê usar BD?• Considere o contexto (“passado”) de uma grande
organização que NÃO utiliza BD– Exemplo: domínio da Universidade
• Várias divisões gerenciais (com suas aplicações)• Grande volume de dados • Aplicações manipulam dados comuns
Acadêmica Espaço Físico Pessoal Alunos Centros Centros Professores Departamentos Departamentos Disciplinas Cursos Professores Turmas Disciplinas Funcionários Salas
![Page 4: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/4.jpg)
Gerenciamento de Dados sem BD
• Cada aplicação descreve os seus dados– Nomes e formatos próprios– Dados são particulares de cada aplicação
(isolamento)
• Gerenciamento local– Procedimentos de manipulação de dados
• Implementados pela própria aplicação• Implementados por softwares de gerenciamento de arquivos
– Manipulação de dados em mais baixo nível
» Varreduras em cadeias de bytes
![Page 5: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/5.jpg)
Problemas com este Contexto
• Redundância não-controlada• Difícil manutenção
– Inclusão professor; alteração disciplina
• Falta de padronização– Dificulta integração e reutilização de programas
• Formas restritas de acesso– Novas operações de manipulação de dados exigem
mudança no código da aplicação
• Falta de segurança– Exemplo: falha em uma operação
![Page 6: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/6.jpg)
Utilização de um BD
• Evita (ou minimiza) estes problemas!• Um BD é definido em mais detalhes como:
“Uma coleção de dados operacionais inter-relacionados e persistentes. Estes dados são gerenciados de forma independente dos programas que os utilizam, servindo
assim a múltiplas aplicações de um Organização.”
![Page 7: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/7.jpg)
Exemplo de um BD
![Page 8: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/8.jpg)
Vantagens do Uso de um BD
• Dados armazenados em um único local– Evita-se redefinições, minimiza-se redundância
• Dados compartilhados pelas aplicações– Facilita integração de aplicações; evita redefinições
• Maior independência de dados– Novas operações de manipulação de dados não requerem
modificação “pesada”no código da aplicação – Aplicações não se preocupam mais com o gerenciamento dos
dados
• Maior flexibilidade de acesso– Linguagem para BD
• Manipulação de dados em mais alto nível– Informa-se o QUÊ se deseja do BD e não COMO se deseja
![Page 9: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/9.jpg)
Quando não usar um BD?
• Quando minha aplicação é simples– Lida com poucos dados operacionais
• Podem ser mantidos em um ou poucos arquivos
• Quando minha aplicação faz processamento pesado mas não requer gerenciamento de dados operacionais– Exemplo: algumas aplicações científicas
• Quando o custo para instalação e administração de um SGBD é muito alto– Equipamento, pessoal, treinamento,...
![Page 10: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/10.jpg)
SGBD
• Definição: “Sistema cujo objetivo principal é gerenciar o
acesso e a correta manutenção dos dados armazenados em um banco de dados.”
• Funções básicas– Métodos de acesso– Integridade Semântica– Segurança– Concorrência– Independência
![Page 11: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/11.jpg)
Funções Básicas de um SGBD
• Métodos de acesso– DDL (Data Definition Language)
• especificação do esquema do BD (dados e seus tipos de dados, índices, ...)
– DML (Data Manipulation Language)• manipulação de dados (I, A, E, C)
• processamento eficaz de consultas– considera relacionamentos, predicados de seleção,
volume de dados, índices, ...– exemplo: buscar professores que lecionam em
turmas lotadas em salas do quarto andar
![Page 12: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/12.jpg)
Alternativas de Processamento
Alternativa 1: (partindo de Professores)1. Profs – Turmas: 10x20 acessos (pior caso!) para associar os profs às suas turmas =
200 acessos (resultado: 20 dados)2. Profs com Turmas – Salas: 20x10 acessos (pior caso!) para associar as turmas com
seus profs às suas salas = 200 acessos (resultado: 20 dados)3. Profs com Turmas com Salas: filtrar as salas do 4o andar = 20 acessosTOTAL: 200 + 200 + 20 = 420 acessos
Alternativa 2: (partindo de Salas)1. Salas: filtrar as salas do 4o andar = 10 acessos (resultado: 5 dados)2. Salas – Turmas: 5x20 acessos (pior caso!) para associar as salas com as suas turmas
= 100 acessos (resultado: 6 dados – supor algumas turmas)3. Salas com Turmas – Profs: 6x10 acessos (pior caso!) para associar as turmas aos
seus profs = 60 acessosTOTAL: 10 + 100 + 60 = 170 acessos
![Page 13: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/13.jpg)
Funções Básicas de um SGBD
• Integridade semântica– garantia de dados sempre corretos com relação ao
domínio de aplicação– exemplos
• estados válidos para os dados (sexo: F/M)• relacionamentos válidos entre os dados (turma N:1
disciplina; apenas professores doutores lecionam disciplinas de pós-graduação)
– especificação de Ris• testes, ações • parte integrante da DDL
![Page 14: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/14.jpg)
Funções Básicas de um SGBD
• Segurança– evitar violação de consistência dos dados– segurança de acesso (usuários e aplicações)
• matrizes de autorização• visões
– segurança contra falhas (recovery)• monitoração de transações
– Transação» conjunto de operações a serem realizadas no BD» princípio do “tudo ou nada”
• categorias de falhas– transação, sistema e meio de armazenamento
• manutenção de histórico de atualizações (logs) e backups do BD
![Page 15: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/15.jpg)
Exemplos de Registros Históricos
![Page 16: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/16.jpg)
Funções Básicas de um SGBD
• Concorrência– evitar conflitos de acesso simultâneo a dados por transações
(scheduler)– principais técnicas
• bloqueio (lock) e timestamp
• Independência– transparência da organização dos dados– níveis de independência
• Independência física– transparência de organização (esquema) física dos dados– exemplos: organização dos arquivos, indexação, distribuição,
agrupamento• Independência lógica
– transparência do esquema lógico do BD– exemplo: visões (vários esquemas externos)
![Page 17: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/17.jpg)
Funções Básicas de um SGBD
![Page 18: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/18.jpg)
SGBD em Detalhe
![Page 19: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/19.jpg)
Meios de Armazenamento
![Page 20: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/20.jpg)
Meios de Armazenamento
![Page 21: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/21.jpg)
Meios de Armazenamento
![Page 22: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/22.jpg)
Meios de Armazenamento
![Page 23: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/23.jpg)
Meios de Armazenamento
![Page 24: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/24.jpg)
Meios de Armazenamento
![Page 25: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/25.jpg)
Usuários do SGBD
![Page 26: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/26.jpg)
DBA
![Page 27: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/27.jpg)
DBA
![Page 28: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/28.jpg)
DBA
![Page 29: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/29.jpg)
DBA
![Page 30: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/30.jpg)
Aplicação (Desenvolvida no SGBD)
![Page 31: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/31.jpg)
Aplicação
![Page 32: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/32.jpg)
Usuário ad hoc
![Page 33: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/33.jpg)
Usuário ad hoc
![Page 34: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/34.jpg)
Programador
![Page 35: Introdução a Banco de Dados e a Sistemas Gerenciadores de Banco de Dados (SGBD)](https://reader035.vdocuments.com.br/reader035/viewer/2022062318/552fc10c497959413d8c3a3b/html5/thumbnails/35.jpg)
Programador