(1 - Fundamentos Básicos)
-
Upload
danielle-soares -
Category
Documents
-
view
31 -
download
2
Transcript of (1 - Fundamentos Básicos)
![Page 1: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/1.jpg)
Banco de Dados IBanco de Dados I
1 1 –– Fundamentos BásicosFundamentos Básicos
GrinaldoGrinaldo Lopes de Oliveira (Lopes de Oliveira ( grinaldogrinaldo @@gmailgmail .com).com)Curso Superior de Tecnologia em Curso Superior de Tecnologia em
Análise e Desenvolvimento de SistemasAnálise e Desenvolvimento de Sistemas
* Material com créditos de colaboração dos professo res Márcio Soussa, Leandro Coelho e Pablo Florentin o
![Page 2: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/2.jpg)
Galeria de Heróis
Edgar F. Codd
Raymond F.Boyce (?)
Chris Date Peter Chen
![Page 3: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/3.jpg)
Agenda
� Conceitos Básicos� Dados x Informação x Processo x
Conhecimento� Características de um Banco de Dados� Descrevendo um SGBD� Histórico dos Bancos de Dados� Arquitetura de um Banco de Dados� Usuários de um SGBD
![Page 4: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/4.jpg)
Dado, Informação, Conhecimento, Sabedoria…
“O que chamamos de Revolução da Informação na verdade é uma Revolução do Conhecimento”
Peter Drucker
![Page 5: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/5.jpg)
Dados
Os Dados são os fatos em sua forma primária, como observamos no mundo.
Qualquer elemento (aspecto, fato, medida etc.) representativo, disponível e coletável na realidade; “fatos no estado bruto”, conforme Platão;
SÍMBOLOS
MARCAS
NÚMEROS
![Page 6: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/6.jpg)
Informação
Quando os dados são organizados em conjunto, de forma que eles adquirem valor adicional, tornando-se úteis, eles ‘viram’ informação .
Qualquer construção derivada da composição de dados, que seja significativa no reconhecimento,
compreensão e/ou modelagem da realidade;
REPRESENTAÇÃO ESTRUTURADA
FORMA
![Page 7: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/7.jpg)
Conhecimento
NECESSÁRIO MOLHARAS PLANTAS
370 É QUENTE
ConhecimentoConhecimentoCorpo ou regras, diretrizes e procedimentos usados para selecionar, organizar e manipular os dados, para torná-
los úteis para uma tarefa específica
ESQUEMASMODELOSMENTAIS
É a informação em movimento !
![Page 8: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/8.jpg)
Conhecimento
� A informação só se transforma completamenteem conhecimento quando é compreendida, quando seu conteúdo é reconhecido pelo indivíduo e passa a fazer parte de sua memória e experiência, de forma que possa ser utilizada para gerar resultados.
Processo de organização
Informação Dados Reconhecimento Compreensão
Conhecimento
![Page 9: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/9.jpg)
Sabedoria
Nada mais é que o uso do conhecimento e o estabelecimento de uma cultura.
� Nas empresas é utilizado, principalmente, para alca nçar vantagens competitivas.
“ NÃO VOUGASTARMUITA ÁGUA ”
“ VOU USARUMAROUPA LEVE “
![Page 10: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/10.jpg)
SABEDORIA
SÍNTESE
CONHECIMENTO
CONVICÇÃO
INTELIGÊNCIA
INFERÊNCIA
INFORMAÇÕES
CONTEXTO
DADOS
Aumento de Valor
Dimensão do Volume
+
+
+
+
=
=
=
=
Valor da Informação
![Page 11: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/11.jpg)
Características da (Boa) Informação
� Precisa � Completa� Econômica� Flexível� Confiável� Relevante� Simples� Na quantidade e tempo certos� Protegida� Verificável e Sem erros
![Page 12: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/12.jpg)
Debate em Sala de Aula
� Pela sua experiência, como um sistema computacional poderia garantir algumas características desejáveis de uma boa informação?
![Page 13: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/13.jpg)
Banco de Dados
![Page 14: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/14.jpg)
O que vem a ser um Banco de Dados?
![Page 15: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/15.jpg)
Banco de Dados
� Coleção de dados relacionados� Dados são fatos conhecidos que podem ser
registrados e possuem significado próprio.
� Representa algum aspecto do mundo real, chamado de mini-mundo.
� Possui objetivo específico.� Possui grupos de usuários interessados.� Pode ser de qualquer tamanho e
complexidade.
![Page 16: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/16.jpg)
Tabela-Registro-Campo
ContaCorrente
número da contasaldo da conta
nome do clientetelefone do cliente
001 | +236,73 | Marcos | 5555-6574002 | -354,65 | Luiz | 5555-8657003 | +768,09 | Ana | 5555-0192004 | +572,82 | Maria | 5555-9805005 | +102,87 | Sandro | 5555-7893
Poupanca
número da contasaldo da conta
nome do clientetelefone do cliente
991 | +98,03 | Sandro | 5555-7893992 | +32,76 | Ana | 5555-0192993 | +61,94 | Maria | 5555-9805
Campo
Registro
Tabela
![Page 17: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/17.jpg)
Sistemas de Bancos de Dados
“Em essência, um sistema de banco de dados é apenas um sistema computadorizado de armazenamento de registros.”
Date, C. J. (2000)
![Page 18: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/18.jpg)
Sistema de
Banco de Dados
SGBD
Software para acessar dados armazenados
Software para processar consultas
Aplicativos
Usuários / Programadores
MetadadosBanco de Dados Propriamente dito
Sistemas de Banco de Dados
![Page 19: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/19.jpg)
Sistema Gerenciador de Banco de Dados
� Coleção de Programas que possibilita a criação e manutenção de um banco de dados.
Conjunto de Dados
Conjunto de Programas
+ Sistema Gerenciador de Banco de Dados
(SGBD)
![Page 20: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/20.jpg)
Sistema Gerenciador de Bancos de Dados
� Sistema de software com as finalidades de:
� Definição de um banco de dados: Especificar tipos de dados, as estruturas e restrições;
� Construção de um banco de dados: Armazenar dados em meio próprio para controle do SGBD;
� Manipulação de um banco de dados: Possibilita consultar, inserir, atualizar e deletar dados.
![Page 21: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/21.jpg)
Sistema Gerenciador de Banco de Dados
� O SGBD é o componente de software mais importante de todo um sistema.
� Isola os usuários do BD de detalhes da nível de hardware, provendo uma visão abstrata de dados;
� Permite o gerenciamento de todas as solicitações feitas ao banco de dados.
� Exemplos: Oracle, SQL Server, Sybase, Interbase, MySQL, Firebird.
![Page 22: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/22.jpg)
Debate em Sala de Aula
� Em sua opinião, como seria implementar um aplicativo cujos dados estivessem em arquivos-texto ou binários, sem uso de um SGBD?
![Page 23: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/23.jpg)
23
Processamento tradicional de arquivos X SGBD
Processamento de arquivos SGBD - Banco de dados
� Definição dos dados é parte do código dos programas das aplicações
� A definição dos dados são armazenadas como metadados(dicionário de dados)
� Dependência entre aplicações específicas e os dados
� Dados dispostos de forma genérica para diversas aplicações (Compartilhamento de dados)
� Representação dos dados no nível físico
� Representação conceitual dos dados(maior facilidade de manutenção)
� Difícil controle sobre regras que estão distribuídas por diferentes aplicações
� Controle de segurança� Tolerância a falhas
� Controle de acesso concorrente
� Ambiente auto-contido
![Page 24: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/24.jpg)
Características de um SGBD
� Integração de Dados
� Controle ou eliminação de redundância;
� Fundamental para o crescimento de BDs.
� Compartilhamento de Dados
� Controle de concorrência (Multi-Usuário).
� Processamento de Transações
� Atomicidade (Tudo ou Nada)
� Independência de Programa-Dados
� Abstração de Dados + Catálogo ou metadados.
![Page 25: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/25.jpg)
Características de um SGBD
� Integridade
� Regras de Negócio (Simples, Complexas)
� Regras de Integridade (Validação de Consistência)
� Restrições implementadas no SGBD
� Suporte a Múltiplas Visões dos Dados
� Diferentes visões de um mesmo BD
� Controle de Segurança
� Permissões de acesso
� Múltiplas Interfaces
![Page 26: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/26.jpg)
Características de um SGBD
� Serviços de Manuteção
� Backup, Recovery, Conversão de dados e monitoramento de desempenho.
� Flexibilidade
� Passível a mudanças
� Economia de Escala
� Reduz custos de operação e gerenciamento no servidor e clientes;
![Page 27: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/27.jpg)
Debate em Sala de Aula
� Quando não se deve utilizar um SGBD?
![Page 28: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/28.jpg)
Quando não usar um SGBD
� Quando a aplicação é simples• Manipula poucos dados operacionais
� Dados podem ser mantidos em poucos arquivos
� Quando a aplicação é CPU-Bound• Processamento pesado e pouca gerência de dados• Exemplo
� Aplicações científicas
� Quando o custo de instalação e administração de um SGBD é muito alto• Equipamento, pessoal, treinamento...
![Page 29: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/29.jpg)
Histórico dos BDs
![Page 30: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/30.jpg)
Processamento de Dados
RelatóriosAdministrativos
Apoio àDecisão
Estratégico eUsuário Final
ComércioEletrônico
1950-1960 1960-1970 1970-1980 1980-1990 1990-2000
Processa-mentoEletrônico de Dados
Sistemas deInformaçãoGerencial
Sistemas de Apoio àDecisão Computação do
Usuário FinalInf. Executiva
Sistemas Espe-cialistasInf. Estratégica
Empresa e ComércioEletrônicos InterconectadosE-Business e E-Commerce
Sistemas de Informação ao Longo dos Anos
![Page 31: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/31.jpg)
Histórico dos SGBD´s
� O advento dos SGBD´s foi um dos acontecimentos mais importantes na história dos bancos de dados:� Banco de Dados Relacional (Década de 70)
� Tornou-se padrão e dominou o mercado até hoje.
� Banco de Dados OO� Banco de Dados Objeto-Relacional
� Antes dos SGBD´s� Sistema de Processamento Tradicional de Arquivos;� Bancos de Dados em Rede e Hierárquico
![Page 32: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/32.jpg)
Tarefa Extra-Classe
� Pesquise na internet um exemplo comercial de SGBD em rede ou hierárquico e apresente algumas características pertinentes.
![Page 33: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/33.jpg)
Arquitetura de Banco de Dados
![Page 34: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/34.jpg)
Linguagens de um SGBD
� Métodos de acesso• DDL (Data Definition Language)
� Especificação do estrutura do Banco de dados• Definição do tipo dos dados• Construção de índices
• DML (Data Manipulation Language)� Manipulação dos dados
• Inserções• Alterações• Consultas
![Page 35: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/35.jpg)
Linguagens de um SGBD
� Métodos de acesso• DCL (Data Control Language)
� Comandos usados para controlar o acesso aos dados no banco de dados• GRANT• REVOKE
• TCL (Transaction Control Language)� Comandos usados para gerenciar as mudanças feitas por
comandos DML. Permitem que comandos sejam agrupados em transações lógicas.• COMMIT• SAVEPOINT• ROLLBACK
![Page 36: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/36.jpg)
Conceitos sobre abstração de dados
� Um SGBD oferece um ambiente auto-contido ondeBanco de Dados = Dados + Descrição dos dadosBanco de Dados = Dados + Descrição dos dados
Conceitos
• Modelo de dados
• Esquema e Instância da base de dados
• Independência de dados e Múltiplas Visões
• Dicionário ou catálogo de dados
![Page 37: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/37.jpg)
Modelo de dados� O que é um modelo de dados?
• Coletânea de conceitos utilizados para descrever a estrutura de um banco de dados
� Exemplos
PROJETOEMPREGADO TRABALHA_EM(1,n) (1,n)
Código Nome Horas
EMPREGADO
CódigoNome: TNome
NomeSobrenome
Calc_Idade()Muda_Depto()...
TRABALHA_EM
Horas
PROJETO
NomeNúmero
Adiciona_Emp()Muda_Gerente()...
1..* 1..*
EMPREGADO (Código, Nome, Sobrenome)
TRABALHA_EM (Código, Número, Horas)
Código Referencia EMPREGADO
Número Referencia PROJETO
PROJETO (Número, Nome)
Número
![Page 38: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/38.jpg)
Níveis de abstração de Modelos de dados� Modelo Conceitual
• Descrição mais abstrata da base de dados• Não contém detalhes de implementação• Independente de tipo de SGBD usado• Ponto de partida do projeto da base de dados• Exemplo
� Modelo Entidade-Relacionamento
DEPARTAMENTO DISCIPLINARESPONSÁVEL(1,1) (0,n)
DISC-CURSO
(0,n)
CURSOALUNO INSCRIÇÃO(0,n) (1,1)
(0,n)
![Page 39: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/39.jpg)
Níveis de abstração de Modelos de dados� Modelo Lógico
• Descrição da base de dados como vista pelos usuários do SGBD (programadores, usuários que tem acesso ao BD diretamente)
• Dependente de SGBD• Não contém detalhes físicos de implementação (índices,
etc)• Exemplo
� Modelo relacionalEMPREGADO (Código, Nome, Sobrenome)
TRABALHA_EM (Código, Número, Horas)
Código Referencia EMPREGADO
Número Referencia PROJETO
PROJETO (Número, Nome)
![Page 40: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/40.jpg)
40
Níveis de abstração de Modelos de dados
� Modelo Físico• Descrição da base de dados como armazenada
internamente (ajuste de performance)� Ordem de armazenamento dos registros� Índices disponíveis
• Tendência em produtos modernos é cada vez mais esconder o modelo físico.
![Page 41: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/41.jpg)
Esquema e Instância de uma base de dados
� Esquema de uma base de dados• Descrição da estrutura da base de dados em termos do
modelo de dados
� Instância de um banco de dados• Conjunto de informações contidas em um banco de dados em
um dado momento
� Analogia com conceitos de linguagens de programação • Definição de tipo � Esquema
• O valor de uma variável em um dado momento � Instância
Type TCliente = recordnome: string;rua: string;cidade: string
end;
![Page 42: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/42.jpg)
Arquitetura de Três Níveis (ANSI/SPARC)
� Proposto na década de 70 pelo Study Group on Data Base Management Systems
� Dividida em 3 níveis: interno, conceitual e externo;
� Permite ao usuário interagir com o SGBD em diferentes níveis de abstração, ocultando seus detalhes de implementação.
![Page 43: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/43.jpg)
Visão externa Visão externa
Esquema Conceitual
Esquema interno
Nível Externo
Nível Conceitual
Nível Interno
Mapeamento externo/ conceitual
Mapeamento conceitual/ Interno
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 44: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/44.jpg)
Nível ExternoNível Externo
Visões individuaisdos usuários
Nível ConceitualNível Conceitual
Visão comum aos usuários
Nível InternoNível Interno
Visão do armazenamento
físico
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 45: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/45.jpg)
� Nível Interno� Nível mais próximo do armazenamento físico e
mais afastado do usuário final;� Define COMO os dados serão armazenados e
recuperados;� Estruturas de dados e métodos de acesso são
descritos em detalhes nesse nível.
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 46: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/46.jpg)
� Nível Conceitual� Nível intermediário entre o interno e o externo;� Representação de todo o conteúdo de
informações do banco de dados;� Formado não só pelos dados, mas também por
regras de segurança e integridade;� Encapsula os detalhes de implementação do nível
interno.
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 47: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/47.jpg)
� Nível Externo� O nível mais próximo do usuário final;� Formado por visões individuais das informações
do banco de dados;� Maior abstração em relação ao nível interno.
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 48: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/48.jpg)
VisãoExterna B
Host Language +DSL
Visão Interna
VisãoExterna A
Host Language +DSL
Host Language +DSL
Host Language +DSL
SGBDVisão Conceitual
MapeamentoExterno/Conceitual A
MapeamentoExterno/Conceitual B
MapeamentoConceitual/Interno
Arquitetura ANSI/SPARC
![Page 49: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/49.jpg)
� Host Language (Linguagem Hospedeira)� Linguagem utilizada para desenvolvimento de
aplicações (Ex.: C++, Java, etc);
� DSL (Data Sublanguage)� Linguagem utilizada especificamente para definir
e manipular os objetos do banco de dados (Ex.: SQL);
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 50: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/50.jpg)
� Mapeamento Externo/Conceitual� Define a correspondência entre uma visão
particular externa e a visão conceitual do banco de dados;
� Mapeamento Conceitual/Interno� Define a correspondência entre a visão conceitual
e o banco de dados armazenado.
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 51: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/51.jpg)
� Detalhamento do Nível Interno
SGBD
SolicitaçãoRegistro
Armazenado
RegistroArmazenadoRetornado
SolicitaçãoPágina
Armazenada
Operaçãode I/O
Dados Lidosdo Disco
Retornados
PáginaArmazenadaRetornada
Gerenciadorde Arquivos
Gerenciadorde Disco
BD Armazenado
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 52: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/52.jpg)
� Detalhamento do Nível Interno� Gerenciador de Disco (Disk Manager)
� Componente do Sistema Operacional responsável por todas as operações de I/O;
� Realiza o mapeamento entre os números de páginas e os endereços físicos dos discos.
� Gerenciador de Arquivo (File Manager)� Componente responsável por manter os arquivos
armazenados;� Cada arquivo armazenado por um nome (file name) ou
identificador (file ID) e cada registro armazenado possuem um número ou identificador (Record ID - RID) único, que indica a página na qual ele reside e o offset dentro da página.
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 53: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/53.jpg)
� Detalhamento do Nível Interno� Índices
� Objeto do BD que através de um arquivo especial gera uma ordenação lógica sobre os dados;
� Vantagem: Melhoria de performance nas consultas;� Desvantagem: Queda de performance nas
atualizações.
� Clustering (Agrupamento)� Técnica de manter fisicamente juntos os registros que
são logicamente relacionados;� Vantagem: Aumento na performance para acessos
seqüenciais.
Arquitetura de Três Níveis (ANSI/SPARC)
![Page 54: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/54.jpg)
Usuários do SGBD
![Page 55: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/55.jpg)
Administração do Banco de Dados
� Administrador de Dados (AD ou DA)� Definição do modelo conceitual da organização;� Exige conhecimentos específicos do ramo de
negócio.
� Administrador de Banco de Dados (DBA)� Implementação do modelo conceitual no SGBD;� Possui conhecimentos específicos de
computação e da ferramenta utilizada (SGBD).
![Page 56: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/56.jpg)
Administração do Banco de Dados
� Funções principais do Administrador do Banco de Dados� Definição dos esquemas interno, conceitual e
externo do banco de dados;� Definição de regras de segurança e integridade;� Definição de procedimentos de backup e restore;� Instalação e configuração do SGBD;� Monitoramento de performance do SGBD.
![Page 57: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/57.jpg)
57
Estrutura básica de um SGBDDBA
Programas de aplicações
Usuárioscasuais
Ambiente de administração
Tradutor DDL
Dicionáriode dados
Dados armazenados
Log –Backup
SGBD
Tradutor comandos
configuração
Interface DML
Tradutor DML
Gerenciador de Transações
(concorrência,recuperação, backup)Processador
Run-time
Otimizador de acesso
Programadores
Ambiente de desenvolvimento
Código de aplicação
![Page 58: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/58.jpg)
58
Ambiente de administração
Tradutor DDL
SGBD
Tradutor comandos
configuração
Interface DML
Tradutor DML
Gerenciador de Transações
(concorrência,recuperação, backup)Processador
Run-time
Otimizador de acesso
Ambiente de desenvolvimento
Código de aplicação
Estruturas de armazenamento
Dicionáriode dados
Dados armazenados
Log –Backup
Repositório• Arquivos de dados • Arquivos de índices
Dicionário de dados• Especificação do esquema • Localização dos arquivos• Autorizações de acesso• Configurações
• Tamanho de buffer• Número máximo de usuários
• Estimativas• Sobre cada arquivo
• Número de registros• Índices utilizados
Repositório• Cópias do BD • Histórico das transações
DBAUsuárioscasuais Programadores
Programas de aplicações
![Page 59: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/59.jpg)
59
Ambiente de administração
Tradutor DDL
SGBD
Tradutor comandos
configuração
Interface DML
Tradutor DML
Gerenciador de Transações
(concorrência,recuperação, backup)Processador
Run-time
Otimizador de acesso
Ambiente de desenvolvimento
Código de aplicação
Usuários do SGBD - DBA
Dicionáriode dados
Dados armazenados
Log –Backup
Super Usuário• Projeto do BD • Definição do esquema• Definição de índices• Definição de RIs, visões e autorizações• Monitoramento de performance de acesso• Modificações de configurações
DBAUsuárioscasuais Programadores
Programas de aplicações
![Page 60: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/60.jpg)
60
Usuários do SGBD - DBA
Ambiente de administração
Tradutor DDL
Dicionáriode dados
Dados armazenados
Log –Backup
SGBD
Tradutor comandos
configuração
Gerenciador de Transações
(concorrência,recuperação, backup)
ProcessadorRun-time
Otimizador de acesso
Função: cria BD, RIs, visões e autorizações
Comandos DDL
Gravação
Criação dos arquivos do BD
Transação
Gravação
DBAUsuárioscasuais Programadores
Interface DML
Tradutor DMLAmbiente de
desenvolvimento
Código de aplicação
Programas de aplicações
![Page 61: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/61.jpg)
61
Usuários do SGBD - DBA
Ambiente de administração
Tradutor DDL
Dicionáriode dados
Dados armazenados
Log –Backup
SGBD
Tradutor comandos
configuração
Gerenciador de Transações
(concorrência,recuperação, backup)
ProcessadorRun-time
Otimizador de acesso
Função: definir parâmetros de configuração
Comandos de configuração
Gravação
DBAUsuárioscasuais Programadores
Interface DML
Tradutor DMLAmbiente de
desenvolvimento
Código de aplicação
Programas de aplicações
![Page 62: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/62.jpg)
62
Ambiente de administração
Tradutor DDL
SGBD
Tradutor comandos
configuração
Interface DML
Tradutor DML
Gerenciador de Transações
(concorrência,recuperação, backup)Processador
Run-time
Otimizador de acesso
Ambiente de desenvolvimento
Código de aplicação
Usuários do SGBD – Programas de aplicações
Dicionáriode dados
Dados armazenados
Log –Backup
Acesso ao BD através de comandos DML pré-compilados e embutidos no seu código
DBAProgramas
de aplicaçõesUsuárioscasuais Programadores
![Page 63: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/63.jpg)
63
Interface DML
Tradutor DMLAmbiente de
desenvolvimento
Código de aplicação
Usuários do SGBD – Programas de aplicações
Ambiente de administração
Tradutor DDL
Dicionáriode dados
Dados armazenados
Log –Backup
SGBD
Tradutor comandos
configuração
Gerenciador de Transações
(concorrência,recuperação, backup)
ProcessadorRun-time
Otimizador de acesso
• Verificações de Ris• Autorizações de acesso• Localização dos dados
Gravação
Transações
Dados
Comandos DML traduzidos
DBAProgramas
de aplicaçõesUsuárioscasuais Programadores
![Page 64: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/64.jpg)
64
Ambiente de administração
Tradutor DDL
SGBD
Tradutor comandos
configuração
Interface DML
Tradutor DML
Gerenciador de Transações
(concorrência,recuperação, backup)Processador
Run-time
Otimizador de acesso
Ambiente de desenvolvimento
Código de aplicação
Usuários do SGBD – Usuários casuais
Dicionáriode dados
Dados armazenados
Log –Backup
DBAUsuárioscasuais Programadores
• Acesso direto ao BD• Executa operações DML sem estar vinculado a uma aplicação
Programas de aplicações
![Page 65: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/65.jpg)
65
Interface DML
Tradutor DML
Usuários do SGBD – Usuários casuais
Ambiente de administração
Tradutor DDL
Dicionáriode dados
Dados armazenados
Log –Backup
SGBD
Tradutor comandos
configuração
Gerenciador de Transações
(concorrência,recuperação, backup)
ProcessadorRun-time
Otimizador de acesso
DBAUsuárioscasuais Programadores
Definição de operações
Consulta
• Verificações de Ris• Autorizações de acesso• Localização dos dados
Gravação
Transações
Dados
Comandos DML Traduzidos
Estimativas sobre os dados
Plano de acesso
Comandos DML
Ambiente de desenvolvimento
Código de aplicação
Programas de aplicações
![Page 66: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/66.jpg)
66
Ambiente de administração
Tradutor DDL
SGBD
Tradutor comandos
configuração
Interface DML
Tradutor DML
Gerenciador de Transações
(concorrência,recuperação, backup)Processador
Run-time
Otimizador de acesso
Ambiente de desenvolvimento
Código de aplicação
Usuários do SGBD – Programadores
Dicionáriode dados
Dados armazenados
Log –Backup
DBAUsuárioscasuais Programadores
• Desenvolve aplicações no próprio SGBD• Utiliza um ambiente de desenvolvimento
• Ferramenta de LP + DML embutida• Exemplo
PL/SQL (Oracle)• Geradores de formulários • ....
Programas de aplicações
![Page 67: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/67.jpg)
67
Usuários do SGBD – Programadores
Ambiente de administração
Tradutor DDL
Dicionáriode dados
Dados armazenados
Log –Backup
SGBD
Tradutor comandos
configuração
Gerenciador de Transações
(concorrência,recuperação, backup)
ProcessadorRun-time
Otimizador de acesso
DBAUsuárioscasuais Programadores
Estimativas sobre os dados
Interface DML
Tradutor DMLAmbiente de
desenvolvimento
Código de aplicação
Consulta
Plano de acesso
Função: desenvolvimento de aplicações
Comandos DML
Comandos DML traduzidosGeração
Programas de aplicações
![Page 68: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/68.jpg)
Tarefa Extra-Classe
� Pesquise na internet características relacionadas à tecnologia NOSQL e informe suas diferenças em comparação aos SGBD´s relacionais.
![Page 69: (1 - Fundamentos Básicos)](https://reader034.fdocument.pub/reader034/viewer/2022052219/563dbb2a550346aa9aaad32b/html5/thumbnails/69.jpg)
Banco de Dados IBanco de Dados I
1 1 –– Fundamentos BásicosFundamentos Básicos
GrinaldoGrinaldo Lopes de Oliveira (Lopes de Oliveira ( grinaldogrinaldo @@gmailgmail .com).com)Curso Superior de Tecnologia em Curso Superior de Tecnologia em
Análise e Desenvolvimento de SistemasAnálise e Desenvolvimento de Sistemas