Buscar

Introdução a Bancos de Dados

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 5 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

2ºAula
Tópicos de banco de dados
Objetivos de aprendizagem
Ao término desta aula, vocês serão capazes de:
•	 saber os diferentes tipos de usuários de banco de dados;
•	 entender as vantagens do uso dos bancos de dados;
•	 conhecer a arquitetura de banco de dados.
Olá, pessoal, tudo bem? 
Continuando os nossos estudos introdutórios sobre banco 
de dados, nós vamos aprender, nesta aula, os diferentes perfis 
de usuários de banco de dados, saber das vantagens do uso de 
bancos de dados, entender que situações não são adequadas 
ao uso de banco de dados e saber de tópicos relacionadas à 
arquitetura de banco de dados.
Qualquer dúvida estamos a sua disposição.
Bons estudos!
Banco de Dados I 12
1 - Usuários de Banco de Dados
2 - Vantagens de usar a abordagem SGBD
3 - Arquitetura geral de um SGBD
1 - Usuários de Banco de Dados
Na construção de um grande banco de dados, Elmasri 
e Navathe (2005) nos ensinam que há um grande número de 
profissionais de informática envolvidos, desde o seu projeto, 
concepção e manutenção.
Administrador de Banco de Dados (DBA)
O DBA é o profissional capaz de realizar a manutenção 
e o gerenciamento do BD. Ademais, esse profissional cria 
backups, que são usados para a recuperação de dados, caso 
aconteçam problemas no hardware.
Além de guardar os arquivos, o DBA zela pelas 
condições deles, pela segurança dos dados, acessibilidade, 
desempenho das máquinas e processos e desenvolvimento de 
equipe de testes de todo o planejamento de BD (KORTH; 
SILBERSCHATZ, 2006).
Nesse sentido, procura pela ideal forma de organizar, 
selecionar e armazenar os dados, analisando não apenas a 
parte técnica, mas as pessoas que vão utilizá-los. Sobretudo, 
é responsável pela edição de formulários, relatórios e outras 
formas de informações demonstradas aos seus clientes, bem 
como modifica e testa todos os procedimentos, antes de abrir 
acesso dos dados aos seus usuários, além de gerenciar o direito 
de acesso de cada setor e pessoa.
Desse modo, o banco de dados precisa ser simples 
e eficaz, assim, é preciso o trabalho de um administrador 
de dados que saiba projetar, instalar, atualizar, modificar, 
proteger, e consertar erros na plataforma e nos bancos de 
dados. Nesse sentido, há o trabalho de personalização e 
suporte do conteúdo de certo banco de dados e informações 
(MACHADO, 2005).
Dessa forma, em um ambiente de banco de dados, o 
primeiro recurso é o banco de dados por si só e o segundo 
recurso o SGBD e os softwares relacionados. A administração 
desses recursos é de responsabilidade do Administrador de 
Banco de Dados. Ele ainda faz a autorização de acesso ao 
banco de dados e a coordenação e monitoração de seu uso 
(KROENKE, 1998).
Finalmente, o DBA ainda precisa (e é responsável por) 
monitorar as possíveis brechas de segurança ou o tempo de 
resposta do sistema.
Projetista de Banco de Dados
É de responsabilidade do Projetista de Banco de Dados 
a identificação dos dados que precisam ser armazenados 
no banco de dados, optando pela estrutura correta para 
representar e armazenar dados.
Geralmente, os projetistas de banco de dados atuam como 
“staff ” do DBA, adquirindo outras responsabilidades depois 
da construção do banco de dados (MEIRELLES, 1994).
Seções de estudo
Dessa forma, é de responsabilidade do projetista avaliar 
as necessidades de cada grupo de usuários para apresentar 
as visões que são necessárias, fazendo com que o banco de 
dados possa atender às necessidades dos usuários.
Analistas de Sistemas e Desenvolvedores
São responsáveis por escolher os requisitos e projetar o 
sistema que será usado pelos usuários finais.
Usuários Finais
São os usuários que efetivamente utilizam o banco para 
uso rotineiro. Eles podem ser catalogados como:
•	 usuários casuais: acessam o banco de dados 
eventualmente, porém podem precisar de diversas 
informações a cada acesso, usam sofisticadas 
linguagens de consulta para especificar e detalhar 
suas necessidades;
•	 usuários novatos ou paramétricos: fazem uso 
de porções já definidas do banco de dados, usando 
consultas já estabelecidas anteriormente que já por 
muitas vezes testadas;
•	 usuários sofisticados: são aqueles usuários que 
se familiarizam com o SGBD; fazem consultas 
complexas.
2	-	Vantagens	de	usar	a	abordagem	
SGBD
Com o uso constante de banco de dados, os usuários 
perceberam as muitas vantagens de se adotar um Banco de 
Dados. Veremos sobre eles a seguir:
Controle de Redundância
Como já foi visto na aula 01, O Controle de redundância 
é capaz de evitar repetições de dados que estão de maneira 
desnecessária em um banco de dados. Para isso, é necessário 
não repetirmos informações desnecessárias, mas sem 
deixar de armazenar o que é importante e crucial para o 
funcionamento do banco e a resolução do problema a ser 
solucionado (KORTH; SILBERSCHATZ, 2006).
Compartilhamento de Dados
O BD permite que várias pessoas utilizem a base de 
dados ao mesmo tempo. Para isso, o banco deve oferecer um 
controle de concorrência, para que as transações não causem 
erros.
Restrição a Acesso não Autorizado
O SGBD precisa oferecer um subsistema de autorização 
e segurança, que é usado pelo DBA para elaborar contas e 
especificar as restrições destas contas. O controle de restrições 
se aplica tanto ao acesso aos dados quanto ao uso de softwares 
inerentes ao SGBD.
Representação de Relacionamentos Complexos 
entre Dados
Um banco de dados pode adicionar vários dados que estão 
inter-relacionados de diferentes maneiras. O SGBD precisa 
fornecer recursos para se representar vários relacionamentos 
entre os dados, no entanto, recupera e atualiza os dados de 
forma prática e eficiente.
13
Tolerância a Falhas
O SGBD precisa oferecer recursos para recuperar as 
falhas tanto de software quanto de hardware.
Tolerar falhas é um recurso indispensável ao SGBD. Um 
exemplo clássico que ratifica essa necessidade é o caso de uma 
queda inesperada de energia.
Fornecer Backup e Restauração
O SGBD precisa oferecer recursos para restauração caso 
aconteçam falhas de hardware ou software. O subsistema 
de backup e restauração do SGBD é o responsável pela 
restauração.
Fornecimento de Múltiplas Interfaces
Ao trabalhar com BD é preciso se atentar para o fato de 
que devido aos distintos níveis de conhecimento técnico dos 
diferentes tipos de usuários, um SGBD precisa oferecer uma 
variedade de interfaces, ou seja, é preciso que o BD tenha 
múltiplas facetas.
De acordo com as ideias de Elmasri e Navathe (2005), 
nos distintos tipos de interfaces, precisam ser incluídas as 
interfaces de linguagem de programação para programadores 
de aplicações, as linguagens/possibilidades de consulta para 
usuários ocasionais, bem como os formulários e interfaces 
dirigidas por menus para usuários comuns.
Potencial para a Padronização
Como será possível observar, a abordagem do BD 
permite que o DBA “defina” e “obrigue” a padronização 
entre seus usuários, o que é muito adequado para facilitar o 
compartilhamento de dados, a comunicação e a cooperação 
entre diferentes setores, departamentos, projetos e usuários 
de grandes organizações (ELMASRI; NAVATHE, 2005).
Nesse sentido, os padrões são definidos para formatos 
de nomes, elementos de dados, telas, relatórios, terminologias 
etc.
Flexibilidade
As modificações na estrutura de um banco de dados, 
geralmente, são necessárias por causa das mudanças nos 
requisitos.
Podemos citar como exemplo quando aparece um novo 
grupo de usuários com necessidade de informações adicionais, 
ainda não disponíveis no banco de dados. Alguns SGBDs 
possibilitam que essas modificações na estrutura do banco 
de dados aconteçam sem atingir a maioria dos programas de 
aplicações existentes.
Redução do Tempo de Desenvolvimento de 
Aplicações
Vale a pena destacarque uma das principais características 
da abordagem do banco de dados é o menor tempo para a 
elaboração de novas aplicações, como a recuperação de certos 
dados para a impressão de novos relatórios. Desse modo, 
projetar e implementar um novo banco de dados pode ser 
mais demorado do que escrever uma simples aplicação de 
arquivos especializados.
Disponibilidade de Informações Atualizadas
Assim que um usuário modifica o banco de dados, todos 
os outros usuários “sentem” essa mudança. No entanto, 
a disponibilidade de informações atualizadas é primordial 
para muitas aplicações, bem como os sistemas de reservas de 
passagens aéreas ou bases de dados bancárias. Isso apenas é 
possível por causa do subsistema de controle de concorrência 
e restauração do SGBD.
Economia de Escala
A abordagem de SGBDs possibilita a consolidação de 
dados e de aplicações diminuindo. Dessa forma, o desperdício 
em atividades redundantes de processamento em vários 
projetos ou departamentos.
Entretanto, isso permite à organização como um todo 
investir em processadores mais poderosos e periféricos, de 
armazenamento e de comunicação mais eficazes.
Mas existem situações em que um SGBD pode não 
resolver o problema. Veremos sobre eles a seguir.
2.1 - Quando não utilizar um SGBD
Em raras situações, o uso de um SGBD pode representar 
uma carga desnecessária aos custos, quando comparado à 
abordagem processamento tradicional de arquivos como:
•	 alto investimento inicial na compra de software e 
hardware ou treinamentos;
•	 sobrecarga na provisão de controle de segurança, 
controle de concorrência, recuperação e integração 
de funções;
•	 surgimento de problemas adicionais no caso de 
projetistas de banco de dados ou no caso dos 
administradores de banco de dados não elaborar os 
projetos corretamente, ou se as aplicações não são 
realizadas de forma apropriada;
•	 banco de dados simples com aplicações bem 
definidas, não se esperando muitas alterações;
•	 quando não houver múltiplo acesso ao banco de 
dados ou a estrutura empresarial for muito pequena.
3 - Arquitetura geral de um SGBD
Nesta seção, vamos abordar alguns tópico relacionados à 
arquitetura de banco de dados.
3.1 - Modelos de Dados
Vale destacar um dos principais objetivos da abordagem 
de BD: oferecer níveis de abstração de dados, omitindo 
ao usuário final os detalhes sobre como esses dados são 
armazenados.
Desse modo, um modelo de dados é entendido como 
um conjunto de conceitos que permitem o seu uso para 
descrever a estrutura “lógica” e “física” de um banco de 
dados. No entanto, por “estrutura” podemos compreender o 
tipo dos dados, os relacionamentos e as restrições que podem 
acontecer sobre os dados.
Podemos notar que há dois tipos de modelos de dados, 
segundo Elmasri e Navathe (2005):
•	 alto nível (ou modelo de dados conceitual): 
apresenta uma visão mais aproximada do modo do 
que os usuários visualizam os dados realmente;
•	 baixo nível (ou modelo de dados físico): apresenta 
Banco de Dados I 14
uma visão mais detalhada da maneira como os dados 
estão realmente armazenados no computador.
3.2 - Esquemas e Instâncias
Vale a pena ressaltar a importância de, em qualquer 
modelo de dados, diferenciar a “descrição” do banco de dados 
do “banco de dados” por si próprio. Entretanto, a descrição 
de um banco de dados é conhecida como “esquema de um 
banco de dados” e é especificada no projeto do banco de 
dados. Normalmente, são poucas as mudanças que acontecem 
no esquema do banco de dados,
Desse modo, os dados armazenados em um banco 
de dados, em um determinado momento, formam um 
conjunto chamado de “instância do banco de dados”. 
Como a instância é o exato momento dos dados em um 
banco de dados, uma instância é alterada quando os dados 
são alterados.
 
3.3 – Independência de Dados
Um SGBD é composto de uma coleção de arquivos inter-
relacionados e de um conjunto de programas que permitem 
aos usuários fazer o acesso a esses arquivos e modificá-los 
os mesmos. O grande objetivo de um sistema de banco de 
dados é prover os usuários com uma visão abstrata dos dados 
(omitindo certos detalhes de como os dados são armazenados 
e mantidos). Entretanto, para que o sistema possa ser utilizado, 
os dados devem ser buscados de forma eficiente. Esse conceito 
tem direcionado o projeto de estrutura de dados complexas 
para a representação de dados em um banco de dados. Uma 
vez que muitos dos usuários de banco de dados não são 
treinados para computação, a complexidade está escondida 
deles por meio de diversos níveis de abstração que simplificam 
a interação do usuário com o sistema (SANCHES, 2013). 
Veremos quais são esses níveis a seguir:
•	 Nível físico: esse é o nível mais baixo de abstração. 
Apresenta como os dados estão verdadeiramente 
armazenados. Nesse nível, complexas estruturas de 
dados de baixo nível são apresentadas em detalhes.
•	 Nível conceitual: apresenta quais dados estão 
armazenados de fato no banco de dados e as 
ligações que há entre eles. Nesse nível, o banco de 
dados inteiro é apresentado em termos como um 
pequeno número de estruturas simples. Sobretudo, 
as implementações de estruturas simples no 
nível conceitual que podem englobar complexas 
estruturas de nível físico, o usuário do nível 
conceitual não precisa se preocupar com isso. Nesse 
caso, o nível conceitual de abstração é utilizado por 
administradores de banco de dados, que podem 
decidir quais informações precisam ser mantidas.
•	 Nível de visões: nível mais elevado de abstração, 
uma vez que permite demonstração de apenas parte 
do BD. Nesse caso, apesar da utilização de estruturas 
mais simples do que no nível conceitual, alguma 
complexidade perdura devido ao grande tamanho 
do BD. Inúmeros usuários do SBD podem não 
estar interessados na totalidade das informações. 
Em vez disso, precisam de apenas uma parte do BD. 
O nível de abstração das visões de dados é definido 
para simplificar essa interação com o sistema, que 
pode fornecer várias visões para o mesmo BD 
(SANCHES, 2013).
A seguir podemos analisar uma ilustração da arquitetura 
que se refere à abstração de dados envolvida:
Figura 1 – Arquitetura de abstração de dados
Fonte: SANCHES, 2013.
Além disso, a habilidade de mudar a definição de 
um esquema (nível de abstração), sem atingir a definição 
de esquema em um nível elevado, é conhecida como 
independência de dados, sendo dividida em dois níveis:
•	 Independência	 física	 de	 dados:	 é	 a	 habilidade	 de	
mudar o esquema físico sem precisar reescrever os programas 
aplicativos. Essas mudanças no nível físico são ocasionalmente 
precisas para aprimorar o desempenho.
•	 Independência	 lógica	 de	 dados:	 é	 a	 habilidade	 de	
mudar o esquema conceitual sem precisar reescrever os 
programas aplicativos. Essas mudanças no nível conceitual 
são precisas quando a estrutura lógica do banco de dados 
é modificada (por exemplo, a adição de contas de bolsas de 
mercado em um sistema bancário).
 Dessa forma, a independência lógica dos dados 
é mais difícil de conseguir do que a independência física, 
mas os programas são muito dependentes da estrutura 
lógica dos dados na qual acessam. Para tanto, o conceito 
de independência dos dados é parecido em vários aspectos 
com o conceito de tipos abstratos de dados em modernas 
linguagens de programação. Assim, esses fatores optam por 
detalhes de implementação do usuário. Ou seja, possibilitam 
que o usuário se concentre na estrutura geral ao invés de 
detalhes de baixo nível de implementação.
3.4 - Linguagens para Manipulação 
de Dados
No que diz respeito à definição dos esquemas conceitual 
e interno podemos usar uma linguagem chamada DDL (Data 
Definition Language - Linguagem de Definição de Dados).
Nesse sentido, o SGBD tem um compilador DDL que 
15
possibilitaa elaboração das declarações para conhecer as 
classificações dos esquemas e para armazená-las no catálogo 
do SGBD. Portanto, a DDL é usada em bancos de dados 
onde não há separação entre os níveis interno e conceitual.
No SGBD, a diferenciação entre os níveis conceitual 
e interno são bem claras. É usada uma outra forma de 
linguagem, a SDL (Storage Definition Language - Linguagem 
de Definição de Armazenamento) para classificar o esquema 
interno. A classificação do esquema conceitual é dada pela 
DDL. Se o SGBD usa uma arquitetura de três esquemas é 
preciso usar mais de uma linguagem para a definição de 
visões, a VDL (Vision Definition Language - Linguagem de 
Definição de Visões).
Na maioria dos bancos de dados relacionais é usada 
a linguagem SQL, cujos comandos se dividem em três 
categorias:
•	 DDL (comandos que criam, alteram ou removem 
objetos) - CREATE, ALTER, DROP.
•	 DCL (comandos que ajudam na segurança do banco 
de dados) - GRANT, REVOKE.
•	 DML (comandos responsáveis pela manipulação dos 
dados) - SELECT, DELETE, UPDATE, INSERT.
3.5 - Classificação dos SGBDs
 Podemos classificar um banco de dados pelos 
seguintes critérios:
•	 Usuários: um SGBD pode ser monousuário 
(geralmente é usado em computadores pessoais) ou 
multiusuários (fazendo uso de estações de trabalho, 
minicomputadores e máquinas de grande porte);
•	 Localização: o SGBD pode ser localizado (todos 
os dados estão em uma máquina ou disco) ou 
distribuído (os dados estarão em diversas máquinas 
ou diversos discos);
•	 Ambiente: ambiente homogêneo é o ambiente 
composto por um único SGBD e ambiente 
heterogêneo é o ambiente composto por diferentes 
SGBDs. Podemos ter em um único sistema, um 
banco Oracle se comunicando com outro banco 
MySQL, por exemplo.
 
Com isso, finalizamos a nossa segunda aula. Na próxima 
aula, vamos discorrer sobre o modelo de dados.
Retomando a aula
Chegamos	 ao	 final	 da	 nossa	 segunda	 aula.	 Vamos	
recordar	os	pontos	principais?
1 – Usuários de Banco de Dados
Nesta seção, vimos os diferentes tipos de perfis de 
usuários de bancos de dados, como o Administrador de Banco 
de Dados (DBA), projetista de banco de dados, usuários finais 
e desenvolvedores.
CARVALHO, I. C. L.; KANISKI, A. L. A sociedade 
do conhecimento e o acesso à informação: para que e para quem? 
Revista Ciência da Informação, Brasília, v. 29, n. 3, p. 33-39, 
set./dez. 2000.
CASTELLS, M. A sociedade em rede: a	era	informação	−	
economia, sociedade e cultura. São Paulo: Paz e Terra, 2007.
ELMASRI, R.; NAVATHE, S. B. Sistema de Banco de 
Dados. Tradução de Marília Guimarães Pinheiro et al. São 
Paulo: Pearson Education, 2005.
HEUSER, Carlos Alberto. Projeto de Banco de dados. 
Porto Alegre: Bookman, 2009. NAVATHE, S. B. Sistema 
de Banco de Dados. Tradução de Marília Guimarães 
Pinheiro et al. São Paulo: Pearson Education, 2005.
O’BRIEN, J. A. Sistemas de informação e as decisões 
gerenciais na era da Internet. São Paulo: Saraiva, 2004.
TURBAN, E.; WETHERBE, J. C. MCLEAN, 
E. Tecnologia da informação para gestão: transformando os 
negócios na economia digital. 3. ed. São Paulo: Bookman, 
2004.
Vale	a	pena ler
SANCHES, A. R. Fundamentos de Armazenamento e 
Manipulação de Dados. Disponível em: <http://www.ime.
usp.br/~andrers/aulas/bd2005-1/aula4.html>. Acesso 
em: 15 mar. 2018.
Vale	a	pena acessar
Vale a pena
2 – Vantagens de usar a abordagem SGBD
Vimos, nesta seção, as vantagens de usar um banco de 
dados, que são: Controle de Redundância, Compartilhamento 
de Dados, Restrição a Acesso não Autorizado, Representação 
de Relacionamentos Complexos entre Dados, Tolerância 
a Falhas, Fornecer Backup e Restauração, Fornecimento 
de Múltiplas Interfaces, Potencial para a Padronização, 
Flexibilidade, Redução do Tempo de Desenvolvimento de 
Aplicações, Disponibilidade de Informações Atualizadas e 
Economia de Escala.
3 - Arquitetura geral de um SGBD
 
Vimos, nesta seção, tópicos relacionados à arquitetura do 
SGBD, como Linguagens de Manipulação de Dados, Níveis 
de abstração dos dados, esquemas, instâncias, e os diferentes 
tipos de classificação de Banco de Dados.

Outros materiais