banco de dados i§ão_banco.pdf · sistema de banco de dados: uma abordagem introdutória e...

22
Banco de Dados I Universidade Veiga de Almeida Luiz Antônio Vivacqua Corrêa Meyer [email protected] [email protected] http://vivacquabd.webnode.com.br

Upload: others

Post on 09-Aug-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Banco de Dados IUniversidade Veiga de Almeida

Luiz Antônio Vivacqua Corrêa Meyer

[email protected]

[email protected]

http://vivacquabd.webnode.com.br

Page 2: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Sumário

Apresentação pessoal

Ementa e bibliografia

Introdução a Sistemas de Banco de Dados

Page 3: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Formação Profissional

• Formação acadêmica básica

• Engenharia Civil – PUC/RJ (1983)

• Especialização – CCE-PUC/RJ (1984)

• Experiência profissional – IBGE (1983 - 2018)

• Técnica

• Gerencial

• Chefe da Gerência de Administração de Banco de Dados (1989 a 1995, 1997 a 2002)

• Assistente da Coordenação de Projetos Especiais

(2009 a 2014)

• Chefe da Coordenação de Metodologia e Banco de Dados (2014 - 2018)

• Mestrado – COPPE/UFRJ (1995-1997)

• Análise de desempenho em Banco de Dados Orientado a Objetos

• Doutorado – COPPE/UFRJ (2002-2006)

• Sanduiche (2004-2005) –Universidade de Chicago

• Escalonamento de workflows científicos em Grids

Page 4: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Formação Profissional

• Experiência acadêmica

• UCidade(1999 – 2014)

• Disciplinas lecionadas

• Projeto de Banco de Dados

• Administração de Banco de Dados

• Laboratório de Banco de Dados

• UVA (2016 - )

• Disciplinas lecionadas

• Tópicos Especias em Mineração de Dados

• Banco de Dados I

• Banco de Dados II

• Gerenciamento de Projetos de Governança em TI

Page 5: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Ementa

• Principais pontos:

1. Conceitos Básicos de Banco de Dados

• Componentes

• Arquitetura

• Usuários

2. Modelo de Dados

• Diagrama de Classe da UML

• Modelo Relacional de Dados– Principais Características

– Conceitos de chaves

– Restrições – integridade e referencial

Page 6: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Ementa

• Principais pontos:

3. Mapeamento do Diagrama de Classe da UML para o Modelo Relacional

• Regras de derivação

• Projeto lógico do banco de dados

• Engenharia Reversa

4. Normalização de Dados

• As três primeiras formas normais

• Forma Normal Boyce-Codd

Page 7: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

OBJETIVOS DA DISCIPLINA

• Conhecer os conceitos de banco de dados

• Elaborar o diagrama de classe da UML

• Elaborar o projeto lógico do banco de dados:

– Regras de derivação

– Normalização

Page 8: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

BIBLIOGRAFIA BÁSICA

Referências Básicas1. RAMARKRISHNAN, Raghu. Sistemas de Gerenciamento de Banco

de Dados – 3. ed. Porto Alegre: AMGH, 2011. Minha Biblioteca.

2. LEAL, Gislaine Camile Lapasini. Linguagem, programação e banco

de dados: São Paulo: Intersaberes, 2015. Biblioteca Virtual.

3. MACHADO, Felipe Nery Rodrigues. Projeto e Implementação de

banco de dados- 3. ed. São Paulo: Erica, 2014. Minha Biblioteca.

Page 9: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

BIBLIOGRAFIA BÁSICA

Referências Complementares

• Elmasri, Rames; NAVATHE, Shamkant, Sistemas de Banco de Dados – 6ª Edição

• SILBERSCHATZ, Sistemas de Banco de Dados – 6ª Edição

• Bezerra, Eduardo; Princípios de Análise e Projeto de Sistemas com UML – 3ª edição

• Heuser, Carlos; Projeto de Banco de Dados – 6ª Edição

• CARDOSO, Virginia. Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca.

• OLIVEIRA Adalberto João Ferreira de. Método para Avaliação de risco operacional em banco de dados. São Paulo: Blucker, 2017. Disponível na Biblioteca Virtual.

Page 10: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Introdução

Sistemas baseados em arquivos

X

Sistemas baseados em banco de dados

Page 11: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Sistemas Baseados em Arquivos

◼ Visão geral no acesso ao dado

Sistema A

Funcionário

Pagamento

Cargo

Sistema B Funcionário

Projeto

Problemas?

Page 12: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Desvantagensdos Sistemasde Arquivos

Redundância e inconsistência de dados

• Duplicação de informações em diferentes arquivos

• Alteração não é refletida para todos os arquivos

Isolamento dos dados

• Dificuldade de acessar os dados

• Múltiplos formatos

• Necessidade de escrever um novo programa para realizar cada nova tarefa

Segurança

• Não existe mecanismos para criar visões nem para restringir o acesso

Atualização concorrente por vários usuários

Page 13: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Sistemas Baseados em Banco de Dados

◼ Visão geral no acesso ao dado

SGBD Dados

Sistema A

Sistema B

Quais são as grandes Funcionalidades da caixa preta ?

Como a caixa preta atende estas Funcionalidades ?

Page 14: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Sistema Gerenciador de Banco de Dados

• O que é:

• Coleção de dados inter-relacionados

• Conjunto dos programas para acessar os dados

• Um ambiente que é conveniente e eficiente de usar

SGBD Dados

Sistema B

Sistema A

Page 15: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Vantagensdos SBDS

Redução de redundância

• eliminação de múltiplas cópias do mesmo dado.

Eliminação de inconsistências

• consequência direta do item anterior.

Compartilhamento dos dados

• acesso concorrente.

Segurança de acesso

• O DBA define quem ( qual usuário ) pode acessar o que(qual tabela)

Integridade referencial

Independência de Dados

Page 16: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Independência de Dados

Processamento de arquivos◼ Qual é o formato do dado armazenado ?◼ Onde o dado está localizado ?◼ Como o dado é acessado ?◼ Ex: Obter o salário médio dos engenheiros

da empresa

Formato:◼ campo salário do tipo decimal fixo com 6

bytes começando na posição 29 do registro

Localização:◼ arquivo “funcionário.dat” localizado no

diretório “Func” do disco “E” na máquina “X”

Acesso:◼ arquivo de organização sequencial

ordenado pela matrícula.

Alteração em qualquer dos três aspectos implicam em alteração no programa!

Page 17: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

17

Independência de Dados

#!/usr/bin/env perl# Author:Luiz A Vivacquause 5.006;my ($matricula, $nome, $cargo, $salario, $contador, $acumula_salario, $media);open(INFO, "<", “E:\Func\funcionario.dat") or die "cant open the file";while(chop($line=<INFO>)){

($matricula, $nome, $cargo, $salario)=split (/;/,$line);if ($cargo='engenheiro'){

$contador = $contador+1;$acumula_salario = $acumula_salario + $salario;

}}close(INFO);$media = $acumula_salario/$contador;print "media salarial dos engenheiros: ", $media, "\n";

Ex: Obter o salário médio dos engenheiros da empresa

Page 18: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Independência de Dados

◼ É a habilidade de se usar o dado sem conhecer detalhes de sua representação.

◼ Provê imunidade as aplicações com relação as estruturas de armazenamento e métodos de acesso.

◼ Independência Lógica

◼ Se o dado é acessado através de uma visão, então mudanças no esquema conceitual não interferem com o funcionamento do programa.

◼ Independência Física

◼ Mudanças na estrutura de armazenamento tais como a criação de índices ou a localização dos arquivos físicos não interferem com o funcionamento do programa.

Page 19: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Independência de Dados

SELECT AVG(SALARIO)

FROM FUNCIONARIO

WHERE CARGO = ‘ENGENHEIRO’;

Obter o salário médio dos engenheiros da empresa

Page 20: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Compilador

DML

RequisiçõesCompiladas

Requisições

“EMBEDED”

Requisições

“AD-HOC”

Otimizador

RequisiçõesOtimizadas

Gerente emtempo de

execução

Dados

MetaDados

LOG

Restrições de

Segurança e

Integridade

Concorrência e

Recuperação De

Falhas

Plano de Execução

da Consulta

Armazenamento

Visão Macro do SGBD

Page 21: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Visão Macro do SGBD

❑ Otimizador

▪ Escolhe a melhor maneira de executar uma consulta.

▪ Diversos planos de execução são gerados e escolhido aquele com o menor custo.

▪ Custo estimado em função do número de operações de acesso a disco.

❑ Segurança e Integridade

▪ O SGBD deve monitorar e controlar o acesso aos objetos de forma a permitir que somente usuários autorizados tenham acesso.

▪ Garantir que restrições de integridade (referencial, entidade, domínio) não sejam violadas.

Page 22: Banco de Dados I§ão_Banco.pdf · Sistema de Banco de Dados: uma abordagem introdutória e aplicada. São Paulo: Érica, 2012. Minha Biblioteca. • OLIVEIRA Adalberto João Ferreira

Visão Macro do SGBD

❑ Concorrência e Recuperação de Falhas

▪ O sistema deve estar apto a detectar falhas e a recuperar

o banco de dados ao seu último estado consistente

➢Ex: falta de energia

❑ Controle de Concorrência

▪ O SGBD deve permitir o acesso concorrente por

múltiplos usuários de forma transparente e segura.