Modelagem e Banco de Dados p/ BB Tecnologia e Serviços (Perfis

Propaganda
Aula 00
Modelagem e Banco de Dados p/ BB Tecnologia e Serviços (Perfis Mainframe,
Plataforma Baixa e Mobile)
Professor: Victor Dalton
00000000000 - DEMO
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
AULA 00: Banco de Dados (1ª Parte)
SUMÁRIO
PÁGINA
Motivação para o curso
Cronograma
Apresentação
1.Bancos de Dados: Conceitos Básicos
1.1 Definições
1.2 SGBD
1.3 Características de um banco de dados
1.4 Trabalhadores envolvidos
1.5 Vantagens da abordagem SGBD
1.6 Desvantagens da abordagem SGBD
1.7 Arquitetura três esquemas de um SGBD
Considerações Finais
2
3
4
5
5
8
10
13
16
17
17
20
Olá a todos! E sejam bem-vindos ao projeto Modelagem e Banco de
Dados para o Banco do Brasil!
00000000000
A nossa proposta de trabalho é apresentar um curso teórico em PDF,
com videoaulas. Nosso curso terá a FCC, tradicional banca de concursos de TI
como referência, mas teremos, na última aula, uma bateria de exercícios da
QUADRIX, banca examinadora do certame.
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
1 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Vem comigo?
Observação importante: este curso é protegido por direitos
autorais (copyright), nos termos da Lei 9.610/98, que altera,
atualiza e consolida a legislação sobre direitos autorais e dá
outras providências.
Grupos de rateio e pirataria são clandestinos, violam a lei e
prejudicam os professores que elaboram os cursos. Valorize o
trabalho de nossa equipe adquirindo os cursos honestamente
através do site Estratégia Concursos ;-)
Observação importante II: todo o conteúdo deste curso
encontra-se completo em nossos textos escritos. As
videoaulas visam reforçar o aprendizado, especialmente para
aqueles que possuem maior facilidade de aprendizado com
vídeos e/ou querem ter mais uma opção para o aprendizado.
00000000000
Permitam-me que eu me apresente.
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
2 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
APRESENTAÇÃO
Eu sou Victor Dalton Teles Jesus Barbosa. Minha experiência em concursos
começou aos 15 anos, quando consegui ingressar na Escola Preparatória de
Cadetes do Exército, em 1999. Cursei a Academia Militar das Agulhas Negras,
me tornando Bacharel em Ciências Militares, 1º Colocado em Comunicações, da
turma de 2003.
Em 2005, prestei novamente concurso para o Instituto Militar de
Engenharia, aprovando em 3º lugar. No final de 2009, me formei em Engenharia
da Computação, sendo o 2º lugar da turma no Curso de Graduação. Decidi então
mudar de ares.
Em 2010, prestei concursos para Analista do Banco Central (Área 1 –
Tecnologia da Informação) e Analista de Planejamento e Orçamento
(Especialização em TI), cujas bancas foram a CESGRANRIO e a ESAF,
respectivamente. Fui aprovado em ambos os concursos e, após uma passagem
pelo Ministério do Planejamento, optei pelo Banco Central do Brasil.
Em 2012, por sua vez, prestei concurso para o cargo de Analista Legislativo
da Câmara dos Deputados, aplicado pela banca CESPE, e, desde o início de
2013, faço parte do Legislativo Federal brasileiro.
Além disso, possuo as certificações ITIL Foundation, emitida pela EXIN,
e Cobit Foundation, emitida pela ISACA.
Aqui no Estratégia Concursos, já ministrei e ministro cursos para vários
certames, como CGU, Receita Federal, ICMS/PR, ICMS/SP, ISS/SP, ICMS/RJ,
ICMS/MS, ICMS/RS, ICMS/PE, ICMS/PI, Banco Central, MPU, IBAMA, ANS,
Ministério da Saúde, Polícia Federal, MPOG, PCDF, PRF, TCE-RS, AFT, ANCINE,
TCDF, Câmara dos Deputados, Caixa Econômica Federal, cursos para Tribunais,
dentre outros. Além disso, também ministro aulas presenciais em diversos
Estados, cujo feedback dos alunos tem me impulsionado a continuar cada vez
mais a ministrar aulas.
00000000000
Pois bem, encerradas as formalidades, segue, abaixo, o início da matéria,
abordando Banco de Dados.
Aos estudos!
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
3 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Sistemas Gerenciadores de Banco de Dados
1. BANCOS DE DADOS: CONCEITOS BÁSICOS
1.1
Definições
Antes do estudo de SGBDs propriamente dito, cabe destacar a
diferença entre dado, informação e conhecimento.
Para iniciar nosso estudo, que envolverá a compreensão sobre
bancos de dados, nada melhor do que começar por um tópico explícito do
edital, destacando a diferença entre dado, informação, conhecimento
e inteligência.
Um dado é uma seqüência de símbolos quantificados ou
quantificáveis. Quantificável significa que algo pode ser quantificado e
depois reproduzido sem que se perceba a diferença para com o original.
Portanto, um texto é um dado. De fato, as letras são símbolos
quantificados, assim como os números. Também são dados fotos, figuras,
sons gravados e animação, pois todos podem ser quantificados ao serem
introduzidos em um computador, a ponto de se ter eventualmente
dificuldade de distinguir a sua reprodução com o original. É muito
importante notar-se que, mesmo se incompreensível para o leitor,
qualquer texto constitui um dado ou uma sequência de dados. Descrevem
um acontecimento, um fato, sem fornecer julgamento nem interpretação.
00000000000
Uma informação é uma abstração informal (isto é, não pode ser
formalizada através de uma teoria lógica ou matemática), que está na
mente de alguém, representando algo significativo para essa pessoa. Por
exemplo, a frase "Paulo tem 23 anos" é um exemplo de informação –
desde que seja lida ou ouvida por alguém, desde que "Paulo" signifique
para essa pessoa um nome (ou alguém conhecido) e "23 anos" tenha a
compreensão devida, englobando o conceito de idade.
Se a representação da informação for feita por meio de dados, como
na frase sobre Paulo, pode ser armazenada em um computador. Mas,
cuidado, o que é armazenado na máquina não é a informação, mas a sua
representação em forma de dados. Assim, não é possível processar
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
4 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
informação diretamente em um computador. Para isso é necessário
reduzi-la a dados. No exemplo, "23 anos" teria que ser quantificado,
usando-se por exemplo uma escala numérica, e associando a idade a
algum tipo de atributo. Para um receptor humano, essa informação teria
sido reduzida a um dado, que ele poderia interpretar como informação.
Uma distinção fundamental entre dado e informação é que o
primeiro
é
puramente
sintático
e
a
segunda
contém
necessariamente semântica. É interessante notar que é impossível
introduzir e processar semântica em um computador, porque a máquina
mesma é puramente sintática (assim como a totalidade da matemática).
Portanto, a informação requer um componente humano no processo.
Conhecimento, por sua vez, envolve habilidade adquirida por uma
pessoa por experiência ou educação. O conhecimento por prática ou
teoria. Conhecimento de um assunto, com a habilidade de usá-lo para um
propósito. Por exemplo, ao analisar “Paulo em 23 anos”, o conhecimento
de um idoso pode interpretar que Paulo é jovem, e tem pouca experiência
de vida. Por outro lado, um adolescente pode entender que Paulo é
adulto, vivido, e tem muitas dicas para passar. Portanto, o conhecimento
depende (e muito) de quem o possui.
O conhecimento, por fim, pode levar à tomada de decisões. “Preciso
orientar Paulo”, ou “Preciso aprender com Paulo”, ou “Ainda é cedo para
promover Paulo” (decisões de negócio), etc. Quando o conhecimento é
aproveitado, alcançamos a inteligência, que se encontra no topo dessa
hierarquia. Veremos mais sobre produção de conhecimento e inteligência
em Business Intelligence (Inteligência de Negócio).
00000000000
Entendidos esses aspectos, podemos responder o que é Banco de
Dados.
Acredito que você já tenha uma “desconfiança” do que seja um
banco de dados. Entretanto, a definição correta de banco de dados gira
em torno de duas ideias chave: relacionamento e finalidade.
Um banco de dados é um conjunto de dados relacionados com uma
finalidade específica. Esta finalidade pode a produção de informação,
para determinado público alvo (uma empresa, ou um órgão público, por
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
5 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
exemplo), bem como suportar um negócio (como o estoque de produtos
de um fornecedor, ou um cadastro de funcionários, ou tudo isso junto).
Um banco de dados tem alguma fonte da qual o dado é derivado,
algum grau de interação com eventos no mundo real e um público
interessado no seu conteúdo. Para que um banco de dados seja preciso e
confiável o tempo todo, as mudanças no minimundo (mundo real)
precisam ser refletidas nele o mais breve possível.
Um banco de dados pode ter qualquer tamanho e complexidade. As
informações precisam ser organizadas e gerenciadas de modo que os
usuários possam consultar, recuperar e atualizar os dados quando
necessário.
Um banco de dados pode ser gerado e mantido manualmente ou
computadorizado. Um banco de dados computadorizado pode ser criado e
mantido por um grupo de programas de aplicação específicos para essa
tarefa ou por um sistema gerenciador de banco de dados.
Eu costumo brincar, e acho que isso ajuda a memorizar, que não se
deve confundir Banco de Dados com “Bando de Dados”. Dados
desorganizados não servem para nada; um conjunto dados que se
relacionam, com alguma finalidade, esses sim compõem um Banco de
Dados.
Bancos de dados, normalmente, são a “base” de um sistema, ou
software. Um sistema de venda de produtos online, por exemplo,
provavelmente possui em seu banco de dados uma vasta quantidade de
registros de clientes e produtos. Esses dados provavelmente relacionamse através dos pedidos, que devem conter dados dos clientes e dos
produtos. Os pedidos também serão dados. Começou a visualizar?
00000000000
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
6 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
C
B
D
Nossa próxima definição importante é a de Esquema de Banco de
Dados.
Um esquema do banco de dados é uma coleção de objetos de um
banco de dados que estão disponíveis para um determinado usuário ou
grupo. Os objetos de um esquema são estruturas lógicas que se referem
diretamente aos dados do banco de dados. Eles incluem estruturas, tais
como tabelas, visões, seqüências, procedimentos armazenados,
sinônimos, índices, agrupamentos e links de banco de dados. Falaremos
mais sobre esses elementos ao longo da apostila, fique tranquilo.
00000000000
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
7 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Ou seja, ao se elaborar um sistema, seu projeto de banco de dados é
idealizado em um esquema (como a figura acima).
Falei, pouco antes, que os softwares normalmente estão “em cima”
de um Banco de Dados. O esquema é essa ferramenta utilizada para a
representação do banco como um todo, podendo servir tanto para facilitar
o entendimento do Banco de Dados como para implementar o próprio
Banco de Dados.
Com base no esquema acima, por exemplo, um Administrador de
Dados já consegue criar o Banco. Visualize a imagem acima, veja as
tabelas e os relacionamentos, e não se incomode se estiver entendendo
pouco ou quase nada. Iremos ver e rever essa imagem, explicando os
detalhes dela aos poucos. Tudo bem?
00000000000
1.2
SGBD
Imagine agora um sistema de uma grande vendedora de produtos
online, ou mesmo o sistema de vendas de uma grande companhia aérea.
Essas empresas vendem produtos e serviços por segundo, para usuários
distribuídos geograficamente pelo mundo inteiro. Deste simples exemplo,
percebe-se que Bancos de Dados precisam de gerenciamento próprio, e
eficiente, para coordenar um volume gigantesco de operações
simultâneas.
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
8 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Para tal, existem os Sistemas Gerenciadores de Bancos de
Dados. O SGBD é o conjunto de programas de computador (softwares)
responsáveis pelo gerenciamento de uma (ou mais) base de dados.
Seu principal objetivo é retirar da aplicação cliente (o sistema da empresa
propriamente dito) a responsabilidade de gerenciar o acesso, a
manipulação e a organização dos dados. O SGBD disponibiliza uma
interface para que seus clientes possam incluir, alterar ou consultar dados
previamente armazenados. Em bancos de dados relacionais a interface é
constituída pelas APIs (Application Programming Interface) ou drivers do
SGBD, que executam comandos na linguagem SQL (Structured Query
Language).
Certamente você já ouviu falar de alguns SGBDs, como o Oracle, o
IBM DB2, o Microsoft SQL Server, MySQL, ou até mesmo o
PostgreSQL, que é gratuito.
Sistemas Gerenciadores de Bancos de Dados: softwares comerciais.
00000000000
Os SGBDs facilitam o processo de definição, construção, manipulação
e compartilhamento de bancos de dados entre diversos usuários e
aplicações.
Definir um banco de dados envolve especificar os tipos, estruturas
e restrições dos dados a serem armazenados.
Construir um banco de dados é o processo de armazenar os dados
em algum meio controlado pelo SGBD.
Manipular um banco de dados inclui funções no banco de dados
como consultas para recuperar dados específicos, atualização que reflita
mudanças no minimundo e geração de relatórios com base nos dados.
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
9 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Compartilhar banco de dados é permitir que diversos usuários e
programas acessem-no simultaneamente.
Outras funções importantes fornecidas pelo SGBD incluem proteção e
manutenção do banco de dados por um longo período. A proteção pode
ser contra defeitos (falhas) de hardware e software ou contra acesso não
autorizado ou malicioso (segurança). A manutenção permite a evolução
do sistema de banco de dados ao longo do ciclo de vida, à medida que os
requisitos mudem com o tempo.
Sistema de Banco de Dados: ilustração
00000000000
1.3
Características de um banco de dados
Na abordagem de banco de dados, um único repositório mantém
dados que são definidos uma vez e depois acessados por vários usuários.
Os nomes ou rótulos de dados são definidos uma vez, e usados
repetidamente por consultas, transações e aplicações.
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
10 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Natureza de Autodescrição de um Sistema de Banco de Dados
Na abordagem de banco de dados, seu sistema contém não apenas o
banco de dados, mas também uma definição ou descrição completa de
sua estrutura e restrições.
Essa definição é armazenada no catálogo do SGBD (falaremos mais
sobre ele adiante). A informação armazenada no catálogo é chamada
metadados (também será melhor explicado posteriormente).
O catálogo é usado pelo software de SGBD e também pelos usuários
do banco de dados que precisam de informações sobre a estrutura do
banco de dados (tipo e o formato dos dados). O software SGBD precisa
trabalhar de forma satisfatória com qualquer quantidade de aplicações de
banco de dados.
Isolamento Entre Programas e Dados, e Abstração de Dados
Na maioria dos casos, qualquer mudança na estrutura de dados do
SGBD não exige mudanças nos programas que acessam o banco de
dados. A estrutura dos arquivos de dados é armazenada no catálogo do
SGBD separadamente dos programas de acesso.
Essa propriedade é chamada de independência programa-dados.
Em alguns tipos de sistemas de banco de dados os usuários podem
definir operações (funções ou métodos) sobre como os dados como parte
das definições de banco de dados. A interface de uma operação inclui o
nome da operação e os tipos de dados de seus argumentos (parâmetros).
A implementação (método) da operação é especificada separadamente e
pode ser alterada sem afetar a interface. Isso é chamado de
independência programa-operação.
00000000000
A independência programa-dados e a independência programaoperação só são possíveis em virtude de uma característica do SGBD, que
é a abstração de dados.
Um SGBD oferece aos usuários uma representação conceitual de
dados, que não inclui muitos detalhes de como os dados são armazenados
ou como as operações são implementadas. Um modelo de dados é um
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
11 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
tipo de abstração de dados usado para oferecer essa representação
conceitual.
Na abordagem de banco de dados, a estrutura detalhada e a
organização de cada arquivo são armazenadas no catálogo. Os usuários
do banco de dados e os programas de aplicação se referem à
representação conceitual dos arquivos, e o SGBD extrai os detalhes do
armazenamento do arquivo do catálogo quando estes são necessários
para os módulos de acesso a arquivo do SGBD.
Suporte para Múltiplas Visões dos Dados
Cada usuário do banco de dados pode exigir um ponto de vista ou
visão (view) diferente do banco de dados. Uma visão pode ser um
subconjunto do banco de dados ou conter dado virtual que é derivado dos
arquivos de banco de dados, mas não estão armazenados explicitamente.
Um SGBD multiusuário precisa oferecer facilidades para definir
múltiplas visões.
Compartilhamento de Dados e Processamento de Transação
Multiusuário
Um SGBD multiusuário precisa permitir que múltiplos usuários
acessem o banco de dados ao mesmo tempo. O SGBD precisa incluir um
software de controle de concorrência para garantir que vários usuários
tentando atualizar o mesmo dados faça isso de uma maneira controlada,
de modo que o resultado dessas atualizações seja correto. Esses tipos de
aplicações são chamados OLTP (On-Line Transaction Processing,
processamento de transações on-line).
00000000000
Por exemplo, se vários agentes de viagem tentam reservar um
assento em um voo de uma companhia aérea. O SGBD precisa garantir
que cada assento só possa ser acessado por um agente de cada vez para
que seja atribuído a um único passageiro.
Um papel do software SGBD multiusuário é garantir que as
transações concorrentes operem de maneira correta e eficiente.
Uma transação é um programa em execução ou processo que inclui
um ou mais acessos ao banco de dados, como a leitura ou atualização de
seus registros. Uma transação executa um acesso logicamente correto a
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
12 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
um banco de dados quando ele é executada de forma completa e sem
interferência de outras operações. Também falaremos adiante sobre
Gerenciamento de Transações.
1) (FCC – SABESP – Tecnólogo - Sistemas - 2014) Um SGBD
multiusuário deve permitir que diversos usuários acessem o banco de
dados ao mesmo tempo. Isso é essencial se os dados para as várias
aplicações estão integrados e mantidos em um único banco de dados. O
SGBD deve incluir um software de controle de concorrência para garantir
que muitos usuários, ao tentar atualizar o mesmo dado, o façam de um
modo controlado, para assegurar que os resultados das atualizações
sejam corretos. Por exemplo, quando muitos atendentes tentam reservar
um lugar em um voo, o SGBD deve garantir que cada assento possa ser
acessado somente por um atendente de cada vez, para fazer a reserva de
apenas um passageiro.
Em SGBD, a este conceito se dá o nome de
a) acesso simultâneo.
b) semáforo de acesso.
c) transação.
d) modularização.
e) polimorfismo.
Percebeu que a questão se parece muito com a explicação da teoria?
Isso ocorre porque a FCC também se baseou no Elmasri e Navathe para
apresentar o exemplo. No caso, a banca está explicando o conceito de
Processamento de Transação Multiusuário.
00000000000
Não gostei da forma que a banca apresentou as alternativas, porém, a
“mais correta” é a letra c).
1.4
Trabalhadores envolvidos
Sistemas de Bancos de Dados são projetados, administrados e
utilizados por diversos profissionais. Sem exageros, pode-se visualizar um
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
13 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
“ciclo de vida” para um Sistema de Banco de Dados, com a participação
de diversos personagens. São eles, segundo Elmasri e Navathe (2006):
Administradores de Banco de Dados
Em um ambiente de banco de dados o banco de dados é o recurso
principal, e o SGBD e os softwares são os recursos secundários. A
administração desses recursos é de responsabilidade do administrador de
banco de dados (DBA – database administrator). O DBA é responsável
por:
Autorizar o acesso ao banco de dados.
Coordenar e monitorar seu uso.
Adquirir recursos de software e hardware conforme a necessidade.
Responsável por resolver problemas, como falhas na segurança e
demora no tempo de resposta do sistema.
Projetista de Banco de Dados
Em muitos casos, os projetistas estão na equipe de DBAs e são
responsáveis por:
Identificar os dados a serem armazenados.
Escolher estruturas apropriadas para representar e armazenar os
dados.
Se comunicar com todos os potenciais usuários a fim de entender
suas necessidades e criar um projeto que as atenda.
Desenvolver visões do banco de dados que cumpram os requisitos
de dados e processamento de cada potencial grupo de usuários.
00000000000
Usuários Finais (ou usuários do banco de dados)
O banco de dados existe primariamente para atender os usuários
finais. Existem várias categorias de usuários finais:
Casuais: são os gerentes de nível intermediário ou alto. Utilizam
uma linguagem sofisticada de consulta ao banco de dados para especificar
suas necessidades.
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
14 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Iniciantes ou paramétricos: são os caixas de banco, agentes de
companhias aéreas, hotéis e locadoras de automóveis, funcionários nas
estações de recebimento de transportadores, entre outros. Sua função
principal gira em torno de consultar e atualizar o banco de dados
constantemente,
usando
transações
programadas,
que
foram
cuidadosamente programadas e testadas.
Sofisticados: são os engenheiros, cientistas, analistas de negócios
e outros que estão profundamente familiarizados com as facilidades do
SGBD a ponto de implementar as próprias aplicações que atendam suas
necessidades.
Isolados: que mantêm bancos de dados pessoais usando pacotes
de programas prontos, que oferecem interfaces de fácil utilização,
baseadas em menu ou gráficos.
Atenção!
Date (2011) acrescenta a figura do Administrador de Dados(DA),
que seria uma pessoa que toma decisões estratégicas e de normas com
relação aos dados da empresa. Nessa abordagem, o DA teria atribuições
como:





Levantar os requisitos funcionais para o banco de dados;
Modelar conceitualmente o banco de dados;
Especificar as regras de negócio das aplicações;
Definir padrões de nomes para conceitos e variáveis, e
Determinar normas de incorporação e manuseio dos dados.
Enquanto isso, o DBA acumularia as seguintes atribuições:
00000000000





Mapear o modelo conceitual no modelo lógico;
Realizar o projeto físico do banco de dados;
Criar usuários, definir visões e permissões, além de regras de
integridade;
Controlar os processos de back-up e recuperação, e
Garantir o bom desempenho no acesso e manuseio do banco
pelos usuários.
Importante, quando tratar-se de personagens envolvidos, prestar
atenção nesse detalhe, tentar “adivinhar” a bibliografia do enunciado,
para não confundir o Administrador de Dados com o Administrador de
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
15 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Banco de Dados. Pior: até mesmo uma mesma banca pode cobrar
conteúdo de autores diferentes. Eu já vi isso .
Analistas de Sistemas e Engenheiros de Software
Os analistas de sistemas identificam as necessidades dos usuários
finais, especialmente os iniciantes e paramétricos, e definem as
especificações das transações padrão que atendam a elas.
Os programadores de aplicações (engenheiros de software e
desenvolvedores de sistemas de software) implementam essas
especificações como programas, testam, depuram, documentam e
mantêm essas transações programadas.
1.5
Vantagens da abordagem SGBD
Via de regra, os SGBDs são ferramentas caríssimas, da ordem de
milhares de dólares. Algumas de suas vantagens são:


Controle de redundância: quando os Bancos de Dados
precisam ser replicados em mais de um lugar, o SGBD evita a
inconsistência das diferentes bases de dados;
Restrição a acesso não autorizado: em Bancos de Dados
com diferentes níveis de permissão de acesso, o SGBD realiza
o controle dos diversos níveis de permissão;
Backup e restauração: o Sistema de Banco de Dados deve
ser tolerante a falhas, ou seja, o SGBD deve ser capaz de
voltar a um estado anterior à falha, a despeito de falhas de
hardware ou software;
Forçar as restrições de integridade: os relacionamentos
entre dos dados são implementados por meio de restrições de
integridade. Será visto mais adiante.
00000000000


Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
16 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
1.6
Desvantagens da abordagem SGBD
Instalar e manter Sistemas de Bancos de Dados carregam consigo
alguns ônus intrínsecos. São eles:




1.7
Custos: além do preço elevado das ferramentas de SGBD,
manter um Sistema de Banco de Dados implica em hardware,
software e pessoal especializados;
Gerenciamento Complexo: o Sistema necessita interfacear
com diferentes tecnologias, afetando os recursos e cultura da
empresa;
Dependência do fornecedor: o investimento inicial alto
tende a “prender” o cliente. Modificar um SGBD é oneroso e
complexo;
Manutenção e atualização: como todo software, o SGBD
deve ser mantido atualizado. Além disso, periodicamente
surgem novas versões, com mais funcionalidades, “exigindo”
substituições periódicas, com novos custos de hardware,
software e treinamento de pessoal.
Arquitetura três esquemas de um SGBD
A arquitetura três esquemas é uma abordagem, que ilustra a
separação entre usuário e aplicação. Nesta arquitetura, os esquemas
podem ser descritos em três níveis:
00000000000
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
17 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Arquitetura três esquemas, Elmasri e Navathe (2006)
Nível externo: abrange os esquemas externos, ou visões de
usuário. Cada esquema descreverá apenas a visão pertinente de cada
usuário a respeito do Banco de Dados, ocultando o restante. Por exemplo,
para um aluno, de um sistema de aulas online, somente determinada
parte do BD lhe é relevante, provavelmente relacionada aos cursos que
realiza. Para um administrador financeiro desse sistemas, por sua vez,
aspectos administrativos serão mais relevantes, relacionados aos
pagamentos dos cursos e de pessoal.
Nível conceitual: possui um esquema conceitual, que descreve o
banco de dados como um todo. Oculta detalhes do armazenamento físico,
enfatizando entidades, tipos de dados e restrições.
00000000000
Nível interno: apresenta um esquema interno, descrevendo a
estrutura de armazenamento físicos do banco de dados.
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
18 de 20
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
2) (FCC – MPE/SE – Analista – Gestão e Análise de Projeto de
Sistema - 2013) Em projetos de Banco de Dados, o objetivo da
arquitetura de três-esquemas é separar o usuário da aplicação do banco
de dados físico. Nessa arquitetura, os esquemas podem ser definidos por
três níveis:
I. O nível interno tem um esquema que descreve a estrutura de
armazenamento físico do banco de dados. Esse esquema utiliza um
modelo de dado físico e descreve os detalhes complexos do
armazenamento de dados e caminhos de acesso ao banco;
II. O nível conceitual possui um esquema que descreve a estrutura de
todo o banco de dados para a comunidade de usuários. O esquema
conceitual oculta os detalhes das estruturas de armazenamento físico e se
concentra na descrição de entidades, tipos de dados, conexões, operações
de usuários e restrições. Geralmente, um modelo de dados
representacional é usado para descrever o esquema conceitual quando o
sistema de banco de dados for implementado. Esse esquema de
implementação conceitual é normalmente baseado em um projeto de
esquema conceitual em um modelo de dados de alto nível;
III. O nível interno ainda abrange os esquemas externos ou visões de
usuários. Cada esquema interno descreve a parte do banco de dados que
um dado grupo de usuários tem interesse e oculta o restante do banco de
dados desse grupo. Como no item anterior, cada esquema é tipicamente
implementado usando-se um modelo de dados representacional,
possivelmente baseado em um projeto de esquema externo em um
modelo de dados de alto nível.
Está correto o que se afirma em
00000000000
a) II, apenas.
b) II e III, apenas.
c) I, II e III.
d) I e II, apenas.
e) III, apenas.
Questão sem maiores dificuldades. Os itens I e II estão corretos,
enquanto o item III descreve o nível externo.
Alternativa d).
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
19 de 20
1.7.1
Modelagem e Banco de Dados para BB
Tecnologia e Serviços
Prof Victor Dalton Aula 00
Independência lógica e independência física dos
dados
Dois conceitos relacionados à arquitetura três esquemas que, não
raro, aparecem em questões de concursos são a independência lógica e a
independência física dos dados.
Independência lógica é a capacidade de alterar o esquema
conceitual sem precisar modificar os esquemas externos.
Independência física é a capacidade de alterar o esquema interno
sem precisar modificar o esquema conceitual.
Esses esquemas e seus respectivos mapeamentos são guardados no
catálogo do banco de dados. Ele será visto na próxima aula.
CONSIDERAÇÕES FINAIS
E chegamos ao final da aula demonstrativa!
A continuação desse assunto e a bateria de exercícios
correspondente encontra-se na próxima aula. Espero reencontrar você,
como um aluno efetivo.
Até a próxima aula!
00000000000
Victor Dalton
Prof. Victor Dalton
www.estrategiaconcursos.com.br
00000000000 - DEMO
20 de 20
Download