Buscar

Banco 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 178 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

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 6, do total de 178 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

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 9, do total de 178 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

Prévia do material em texto

BANCO DE 
DADOS
Professor Me. Edson Yanaga
Professor Esp. Victor de Marqui Pedroso
GRADUAÇÃO
Unicesumar
C397 CENTRO UNIVERSITÁRIO DE MARINGÁ. Núcleo de Educação a 
Distância; YANAGA, Edson; PEDROSO, Victor de Marqui.
 Banco de Dados. Edson Yanaga; Victor de Marqui 
(Reimpressão revista e atualizada)
 Maringá-Pr.: UniCesumar, 2016. 
 171 p.
“Graduação - EaD”.
 
 1. Banco. 2. Dados . 3. EaD. I. Título.
CDD - 22 ed. 005
CIP - NBR 12899 - AACR/2
Ficha catalográfica elaborada pelo bibliotecário 
João Vivaldo de Souza - CRB-8 - 6828
Reitor
Wilson de Matos Silva
Vice-Reitor
Wilson de Matos Silva Filho
Pró-Reitor de Administração
Wilson de Matos Silva Filho
Pró-Reitor de EAD
Willian Victor Kendrick de Matos Silva
Presidente da Mantenedora
Cláudio Ferdinandi
NEAD - Núcleo de Educação a Distância
Direção Operacional de Ensino
Kátia Coelho
Direção de Planejamento de Ensino
Fabrício Lazilha
Direção de Operações
Chrystiano Mincoff
Direção de Mercado
Hilton Pereira
Direção de Polos Próprios
James Prestes
Direção de Desenvolvimento
Dayane Almeida 
Direção de Relacionamento
Alessandra Baron
Gerência de Produção de Conteúdo
Juliano de Souza
Supervisão do Núcleo de Produção de 
Materiais
Nádila de Almeida Toledo
Coordenador de Conteúdo
Danillo Xavier Saes
Design Educacional
Paulo Victor Souza e Silva
Projeto Gráfico
Jaime de Marchi Junior
José Jhonny Coelho
Editoração
Melina Belusse Ramos
Revisão Textual
Keren Pardini
Yara Martins Dias
Simone Morais Limonta
Ilustração
André Luis Onishi
Viver e trabalhar em uma sociedade global é um 
grande desafio para todos os cidadãos. A busca 
por tecnologia, informação, conhecimento de 
qualidade, novas habilidades para liderança e so-
lução de problemas com eficiência tornou-se uma 
questão de sobrevivência no mundo do trabalho.
Cada um de nós tem uma grande responsabilida-
de: as escolhas que fizermos por nós e pelos nos-
sos farão grande diferença no futuro.
Com essa visão, o Centro Universitário Cesumar 
assume o compromisso de democratizar o conhe-
cimento por meio de alta tecnologia e contribuir 
para o futuro dos brasileiros.
No cumprimento de sua missão – “promover a 
educação de qualidade nas diferentes áreas do 
conhecimento, formando profissionais cidadãos 
que contribuam para o desenvolvimento de uma 
sociedade justa e solidária” –, o Centro Universi-
tário Cesumar busca a integração do ensino-pes-
quisa-extensão com as demandas institucionais 
e sociais; a realização de uma prática acadêmica 
que contribua para o desenvolvimento da consci-
ência social e política e, por fim, a democratização 
do conhecimento acadêmico com a articulação e 
a integração com a sociedade.
Diante disso, o Centro Universitário Cesumar al-
meja ser reconhecido como uma instituição uni-
versitária de referência regional e nacional pela 
qualidade e compromisso do corpo docente; 
aquisição de competências institucionais para 
o desenvolvimento de linhas de pesquisa; con-
solidação da extensão universitária; qualidade 
da oferta dos ensinos presencial e a distância; 
bem-estar e satisfação da comunidade interna; 
qualidade da gestão acadêmica e administrati-
va; compromisso social de inclusão; processos de 
cooperação e parceria com o mundo do trabalho, 
como também pelo compromisso e relaciona-
mento permanente com os egressos, incentivan-
do a educação continuada.
Seja bem-vindo(a), caro(a) acadêmico(a)! Você está 
iniciando um processo de transformação, pois quan-
do investimos em nossa formação, seja ela pessoal 
ou profissional, nos transformamos e, consequente-
mente, transformamos também a sociedade na qual 
estamos inseridos. De que forma o fazemos? Criando 
oportunidades e/ou estabelecendo mudanças capa-
zes de alcançar um nível de desenvolvimento compa-
tível com os desafios que surgem no mundo contem-
porâneo. 
O Centro Universitário Cesumar mediante o Núcleo de 
Educação a Distância, o(a) acompanhará durante todo 
este processo, pois conforme Freire (1996): “Os homens 
se educam juntos, na transformação do mundo”.
Os materiais produzidos oferecem linguagem dialó-
gica e encontram-se integrados à proposta pedagó-
gica, contribuindo no processo educacional, comple-
mentando sua formação profissional, desenvolvendo 
competências e habilidades, e aplicando conceitos 
teóricos em situação de realidade, de maneira a inse-
ri-lo no mercado de trabalho. Ou seja, estes materiais 
têm como principal objetivo “provocar uma aproxi-
mação entre você e o conteúdo”, desta forma possi-
bilita o desenvolvimento da autonomia em busca dos 
conhecimentos necessários para a sua formação pes-
soal e profissional.
Portanto, nossa distância nesse processo de cres-
cimento e construção do conhecimento deve ser 
apenas geográfica. Utilize os diversos recursos peda-
gógicos que o Centro Universitário Cesumar lhe possi-
bilita. Ou seja, acesse regularmente o AVA – Ambiente 
Virtual de Aprendizagem, interaja nos fóruns e en-
quetes, assista às aulas ao vivo e participe das discus-
sões. Além disso, lembre-se que existe uma equipe de 
professores e tutores que se encontra disponível para 
sanar suas dúvidas e auxiliá-lo(a) em seu processo de 
aprendizagem, possibilitando-lhe trilhar com tranqui-
lidade e segurança sua trajetória acadêmica.
Diretoria Operacional 
de Ensino
Diretoria de 
Planejamento de Ensino
A
U
TO
RE
S
Professor Esp. Victor de Marqui Pedroso
Possui Pós-Graduação em Banco de dados Oracle e DB2 pelo Centro 
Universitário de Maringá (2009), Graduação em Tecnologia em Processamento 
de Dados pelo Centro Universitário de Maringá (2003). Também atua como 
analista de sistemas, analista de suporte, documentador, homologador 
e programador de software. Possui experiência em desenvolvimento, 
utilizando a ferramenta Delphi com bancos de dados relacionais. Trabalhou 
como Professor Mediador e atualmente trabalha como Professor Formador 
dos cursos de Análise e Desenvolvimento de Sistemas e Sistemas para 
Internet, ministrando as disciplinas de Banco de Dados e Design de Interação.
Professor Me. Edson Yanaga
Possui graduação em Ciência da Computação pela Universidade Estadual de 
Maringá (1999) e mestrado em Engenharia Elétrica e Informática Industrial 
pela Universidade Tecnológica Federal do Paraná (2002). Tem experiência 
na área de Ciência da Computação, com ênfase em Engenharia de Software, 
atuando, principalmente, nos seguintes temas: processos, métricas, modelos, 
produtos e ip.
APRESENTAÇÃO
BANCO DE DADOS 
SEJA BEM-VINDO(A)!
Salve, caríssimo(a) leitor(a)! Temos o enorme prazer em apresentar-lhe o livro de Banco 
de Dados I, elaborado especificamente para contribuir com sua formação, como futu-
ro(a) desenvolvedor(a) de software. Esperamos que você tenha um bom proveito do 
material.
Confessamos que foi um tremendo desafio escrever este material. Até certo ponto, é 
uma repetição cansativa dizer que o ritmo das mudanças e das inovações cada vez mais 
se acelera, mas, a princípio, o tema “Banco de Dados” aparentaria ser algo tranquilo, pelo 
fato de ser uma área de conhecimento bastante consolidada. Ledo engano. Nos últimos 
cinco anos, a disciplina de Banco de Dados passou por profundas transformações que 
chacoalharam os alicerces de fundamentos criados e utilizados desde a década de 1970. 
Os desafios dos sistemas de informação atuais exigem que manipulemos não gigabytes 
ou terabytes de informações, e sim petabytes, exabytes e zetabytes.
Os sistemas de informação das gerações anteriores tinham como objetivo gerar infor-
mações que pudessem agregar valor aos processos de negócios. Pois bem, esse objetivo 
foi alcançado. Com a tão aguardada e estimulada “onipresença” de software, a magnitu-
de dessas informações geradas cresceu. Redes sociais,smartphones, tablets, sensores 
de automação e vários outros dispositivos geram inúmeros bits de informação em todo 
momento. Conceitos antigos já não são soberanos nesses inóspitos ambientes atuais. 
Diante desses cenários, surgiram os conceitos de Big Data e NoSQL.
Mas, para irmos mais longe e chegarmos a esse ponto, devemos dar o primeiro passo. 
Este material aborda os conceitos que até recentemente eram considerados como as 
“regras sagradas” de banco de dados: os bancos de dados relacionais. E não se engane, 
caro(a) leitor(a), esses fundamentos de bancos de dados relacionais são imprescindíveis 
para que se possa dar o “próximo passo” rumo ao conhecimento de Big Data e NoSQL.
Na unidade I, teremos a apresentação de tópicos conceituais e definições sobre bancos 
de dados, sistemas gerenciadores de bancos de dados e os tipos de usuários que intera-
gem com esses sistemas. Teremos também uma breve explanação sobre o conceito de 
transações, que é uma ferramenta essencial no desenvolvimento de aplicações mais tra-
dicionais como aquelas que envolvem dados financeiros. Como leitura complementar, 
temos um texto de Cezar Taurion (Evangelista Técnico da IBM) falando sobre Big Data. 
Afinal, é importante darmos um passo no presente, mas sempre com um olho no futuro. 
Essa será a tônica das nossas leituras complementares e sugestões de vídeos: apresen-
tar-lhe sempre os conceitos de vanguarda que já são aplicados em muitos casos de uso 
em aplicações modernas.
A unidade II apresentará a terminologia e outros conceitos básicos que serão utiliza-
dos no restante deste material, descrevendo o modelo relacional de banco de dados 
propriamente dito que será abordado na unidade V. A partir desse ponto, você estará 
apto(a) a identificar as características de modelos relacionais e passar a construir seus 
próprios modelos de dados baseado(a) nos fundamentos apresentados. Na modelagem 
relacional, você identificará entidades do seu domínio de negócios, suas restrições 
e os relacionamentos entre as diversas entidades modeladas.
Nas unidades III e IV, aprenderemos a linguagem SQL (Structured Query Language), 
que é uma ferramenta dominada por 10 em cada 10 desenvolvedores de software 
que utilizam sistemas de banco de dados. De conceito simples, acreditamos que 
não será um problema para você, futuro(a) desenvolvedor(a) de software. Mas con-
vém ressaltar que SQL possui uma natureza declarativa, que é diferente das lingua-
gens imperativas, como Java, C ou Pascal. Após sua criação, a SQL tornou-se um 
padrão de facto para manipular informações em sistemas de banco de dados por 
meio de seus comandos para inserção, atualização, remoção e consulta de instân-
cias de dados. Na unidade V, você terá um estudo de caso completo que o(a) ajudará 
na compreensão de todo o conteúdo estudado.
E, antes que você possa apreciar o conteúdo do material, permita-nos apresentar 
nosso ponto de vista para reflexão: em muitas empresas, o sistema de banco de 
dados tornou-se o repositório “sagrado” das informações, trancado a sete chaves 
e reservado ao guardião denominado de DBA (DataBase Administrator). Aliás, é 
bastante comum que os alunos aprendam ou venham a concluir que o banco de 
dados é o coração de um sistema de informação – baseados nessas falsas impres-
sões transmitidas, até certo ponto, em grande quantidade. Para nós e também para 
muitos autores renomados do mundo do software, o banco de dados é apenas uma 
ferramenta utilizada na construção de nossos sistemas de informação. E, como toda 
e qualquer ferramenta, não pode ficar acima do próprio código que atende ao pro-
cesso de negócios da empresa. Isso diminui sua importância? Certamente que não! 
Porém, quando você modelar seu sistema de informação, pense primeiro no seu 
modelo de negócios e postergue até o último momento a sua visão sobre o banco 
de dados. Tenho certeza de que isso tornará a sua aplicação muito melhor projetada 
e permitirá que ela ofereça um retorno muito melhor ao seu negócio.
O banco de dados é só um detalhe, um detalhe importante, mas o considere um 
detalhe. O coração da sua aplicação é o código bem feito que você elaborará para 
atender ao seu negócio. Pense nisso e, a cada batida desse coração, você poderá 
usufruir de muito retorno (e muito dinheiro, espero).
Um bom proveito e uma ótima leitura!
Prof. Me. Edson Yanaga
Prof. Esp. Victor de Marqui Pedroso
APRESENTAÇÃO
SUMÁRIO
09
UNIDADE I
CONCEITOS DE BANCOS 
DE DADOS
15 Introdução
21 Características de Sistemas de Bancos de Dados 
27 Transações 
31 Vantagens de se Utilizar um SGBD 
38 Considerações Finais 
UNIDADE II
MODELO RELACIONAL
43 Introdução
44 O Modelo Relacional 
46 Introdução à Modelagem 
51 Atributos 
52 Tipos de Atributos 
56 Domínio 
57 Chave Estrangeira (Foreign Key) 
58 Relacionamentos 
61 Cardinalidade 
65 Considerações Finais 
SUMÁRIO
UNIDADE III
SQL BÁSICO
71 Introdução
73 Definições de Dados e Tipos em SQL 
77 Restrições 
79 Consultas Básicas em SQL 
85 Comandos de Modificação de Dados em SQL 
94 Considerações Finais 
UNIDADE IV
MAIS SQL
99 Introdução
100 Consultas Envolvendo NULL 
101 Consultas Aninhadas (Subqueries) 
105 Consultas Utilizando Joins 
110 Comandos de Alteração de Schema 
122 Considerações Finais 
SUMÁRIO
11
UNIDADE V
ESTUDO DE CASO
127 Introdução
132 Descrevendo o Estudo de Caso 
133 Criando as Entidades e os Relacionamentos (DER) 
141 Trabalhando com SQL 
160 Considerações Finais 
167 Conclusão
169 Referências 
171 Gabarito
U
N
ID
A
D
E I
Professor Me. Edson Yanaga
CONCEITOS DE BANCOS 
DE DADOS
Objetivos de Aprendizagem
 ■ Apresentar os conceitos fundamentais envolvendo dados e bancos 
de dados em sistemas computacionais.
 ■ Descrever as formas de interação dos usuários com os bancos de 
dados.
 ■ Comparar as vantagens dessa abordagem em relação a outras 
similares.
Plano de Estudo
A seguir, apresentam-se os tópicos que você estudará nesta unidade:
 ■ Características de Sistemas de Bancos de Dados
 ■ Transações
 ■ Vantagens de se utilizar um SGBD
INTRODUÇÃO
“Scientia potentia est”: “Conhecimento é poder”.
Sim, caro(a) leitor(a), conhecimento é poder. Informação é poder. Na sociedade 
do século XXI, temos informação em abundância e chamamos as informações 
armazenadas em sistemas computacionais de dados. O desafio crescente dos pró-
ximos anos é encontrar formas eficientes de processar os dados que já temos e 
ainda criar para gerar conhecimento e, consequentemente, riqueza.
Nas últimas décadas, boa parte do software desenvolvido envolve mais do 
que processamento de informações. As informações de entrada e de saída do 
software (além de outras metainformações intermediárias) devem ser armaze-
nadas em um mecanismo confiável e que possibilite o acesso simples e rápido à 
leitura e escrita dessas informações.
Há alguns anos, escrever sobre o tema “banco de dados” seria uma tarefa 
relativamente tranquila, pois muitos acreditavam tratar-se de um assunto abso-
lutamente consolidado. Mas o nosso mundo está em constante mudança e os 
modelos de negócios que surgiram recentemente provocaram uma ruptura na 
forma de se pensar o armazenamento de informações em bancos de dados.
Mas de onde vem esse termo, que conhecemos como “banco de dados”? 
Pois, em inglês, o termo refere-se a databases, que em uma tradução literal defi-
niríamos como “base de dados”. Um bom palpite quanto a isso, remete a uma 
visão generalizada de que as instituições denominadas de “bancos”, guardam de 
modo bastante seguro o nosso dinheiro. Os “bancos de dados” seriam, então, 
ferramentas que guardariam nossas informações (dados) de modo também 
supostamente seguro e confiável.
Outra confusão bastante comum e plenamentejustificada refere-se à dife-
rença entre os termos “banco de dados” e os sistemas que o gerenciam. Segue 
uma definição, segundo Navathe (2011, p. 3):
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
15
CONCEITOS DE BANCOS DE DADOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E16
Um banco de dados é uma coleção de dados relacionados. Os dados 
são fatos que podem ser gravados e que possuem um significado im-
plícito. Por exemplo, considere nomes, números telefônicos e endere-
ços de pessoas que você conhece. Esses dados podem ter sido escritos 
em uma agenda de telefones ou armazenados em um computador, por 
meio de programas como o Microsoft Access ou Excel. Essas informa-
ções são uma coleção de dados com um significado implícito, conse-
quentemente, um banco de dados.
Nossos bancos de dados podem ser coleções de dados relacionados dos mais 
diversos tamanhos. Desde uma pequena agenda, contendo números e contatos 
de pessoas, até um índice gigantesco de páginas de Internet e buscas relaciona-
das ou todas as mensagens e informações trocadas entre bilhões de usuários de 
uma rede social.
Em termos computacionais, há uma categoria de software especializado que 
é desenvolvido especificamente com o propósito de se gerenciar essas coleções de 
dados: os sistemas gerenciadores de banco de dados – popularmente reconhecidos 
pela sigla SGBD (ou DBMS – DataBase Management Systems, na sigla original 
em inglês). Segue mais uma definição de Navathe (2011, p. 3) sobre o termo:
Um sistema gerenciador de banco de dados (SGBD) é uma coleção 
de programas que permite aos usuários criar e manter um banco de 
dados. O SGBD é, portanto, um sistema de software de propósito geral 
que facilita os processos de definição, construção, manipulação e com-
partilhamento de bancos de dados entre vários usuários e aplicações. A 
definição de um banco de dados implica especificar os tipos de dados, 
as estruturas e as restrições para os dados a serem armazenados em um 
banco de dados.
Embora não seja necessário utilizar um SGBD para se desenvolver quaisquer 
sistemas de software, tal opção não se mostra viável. Relembrando o nosso con-
ceito, de que a importância do software consiste em sua capacidade de se gerar 
valor com as informações que manipula, tem-se que implementar nosso pró-
prio mecanismo de manipulação de dados lembrando que nossas aplicações 
não geram valor, somente custo. É por esse motivo que atualmente definimos 
os SGBDs em uma categoria de software que consideramos como commodity.
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
17
Exemplos de SGBDs relacionais (mais tradicionais e consolidados) incluem 
Oracle, DB2, SQL Server, Access, PostgreSQL, MySQL, Derby e H2. Já exem-
plos de SGBDs não relacionais (também conhecidos como NoSQL) incluem 
MongoDB, Redis, Neo4j e Riak.
Para propósitos de definição, finalizaremos denominando o conjunto for-
mado pelo banco de dados e o sistema que o gerencia, o SGBD, de Sistema de 
Banco de Dados.
BANCOS DE DADOS OPEN SOURCE: PRESENTE OU FUTURO?
Cezar Taurion
Nos eventos sobre Open Source, volta e meia surge uma pergunta sobre bancos de da-
dos Open Source. Bem, tenho minha opinião pessoal e quero compartilhar com você. 
Vamos ver se vai gerar muita discordância.
Os softwares de banco de dados são um dos mais importantes componentes de softwa-
re de uma organização. Nesse ambiente, as alternativas de software livre já são bastante 
conhecidas e frequentemente são mencionadas na mídia, como MySQL, PostgreSQL, 
Ingres e Derby. 
O MySQL é um produto de uma empresa privada, a MySQL AB. Seu código é desenvolvi-
do pelos funcionários da empresa e com isso ela garante a propriedade intelectual sobre 
o produto. Existe uma comunidade envolvida, mas submissões de código são restritas 
apenas à correção de bugs. Uma pergunta: o MySQL pode ser considerado realmente 
Open Source, uma vez que não adota o modelo de desenvolvimento colaborativo? O 
MySQL é ofertado tanto em GPL como sob licença comercial. As duas versões são fun-
cionalmente equivalentes, sendo diferenciadas pelo nível de suporte e certificação. In-
discutivelmente é o banco de dados Open Source mais popular, com o maior mindshare 
do setor.
Outro software é o PostgreSQL, que tem suas origens no Postgres desenvolvido pela 
Universidade de Berkeley. Podemos citar também o Ingres, que foi um banco de dados 
da Computer Associates e agora pertence a uma organização independente, a Ingres 
Corporation (<www.ingres.com>) e o Derby, originalmente o Cloudscape da IBM e re-
centemente doado para a Apache Software Foundation, onde agora é o projeto Derby. 
O Derby (<http://db.apache.org/derby/>) é um banco de dados em Java, geralmente 
embarcado em outros softwares. A IBM, por exemplo, o utiliza embutido em diversos 
softwares das famílias WebSphere, Tivoli e Lotus. 
Nas minhas andanças pelo mercado tenho visto que na prática os bancos de dados 
Open Source só aparecem como competidores dos produtos mais avançados nas apli-
cações pouco sofisticadas ou bem específicas. 
Por sua vez, os sistemas de banco de dados proprietários buscam competir com funcio-
nalidades diferenciadoras, principalmente as relacionadas com administração de am-
bientes complexos; escalabilidade; desempenho com grande volume de transações; alta 
disponibilidade e capacidade de recuperação rápida; e recursos de data warehousing. 
Além disso, foi criado um ecossistema de negócios em torno dos principais softwares de 
banco de dados proprietários, com diversas empresas independentes oferecendo ferra-
mentas de software complementares (geradores de relatórios, analisadores estatísticos 
e outros), serviços de suporte técnico especializado e formação de recursos humanos, 
e assim por diante, o que também cria uma barreira de entrada difícil de transpor por 
qualquer novo entrante. 
19 
Já o ecossistema empresarial criado em torno dos bancos de dados Open Source (onde 
se gera dinheiro) ainda é incipiente, sendo formado por pequenas empresas com 
abrangência de atuação bastante limitada. Ano passado, a MySQL gerou cerca de 50 
milhões de dólares em receita (<http://news.com.com/MySQL+hits+50+million+reve-
nue,+plans+IPO/2100-7344_3-6179290.html>), mas ainda é um traço (cerca de 0,03%) 
no gráfico que mostra o mercado global de bancos de dados relacionais, estimado pelo 
IDC em 16 bilhões de dólares. Como comparativo, o IDC estima que, nesse mesmo ano, 
a receita da IBM com a família de produtos DB2 foi de aproximadamente 3,5 bilhões de 
dólares.
Qual o papel que os bancos de dados Open Source desempenharão? Na minha opinião, 
estarão atuando (pelo menos nos próximos 3 a 4 anos) na chamada faixa de produtos 
com funcionalidades comoditizadas, onde as características de preço são as de maior 
importância. Os usuários típicos serão organizações e aplicações que não precisam de 
recursos mais sofisticados. 
Como avaliar a qualidade de um banco de dados Open Source? Existem diversos crité-
rios que podem e devem ser considerados em uma análise para seleção de um banco de 
dados. Os níveis de importância das variáveis da análise estão diretamente relacionados 
com os objetivos do negócio e das necessidades a serem impostas aos softwares de 
bancos de dados.
Alguns dos principais fatores a serem considerados são:
a. Recursos de gerenciamento e administração. São as ferramentas de apoio às ta-
refas do administrador do banco de dados.
b. Desempenho e escalabilidade. Os recursos que o softwareoferece para garantir 
desempenho adequado, nos volumes de transações que serão demandados.
c. Recursos técnicos. Disponibilidade de recursos como triggers, stored procedu-
res, cursors, subqueries, capacidade de replicação, recursos de indexação, aderência 
a padrões (ANSI SQL), particionamento, backup/recovery, suporte a dados não es-
truturados, independência de plataforma e recursos de segurança.
d. Custos de Propriedade.
e. Suporte técnico e disponibilidade de recursos humanos. Abrangência do ecos-
sistema em termos de serviços de suporte e qualificação de recursos humanos.
f. Disponibilidade de aplicativos.
g. Recursos de data warehousing e BI.
h. Recursos de desenvolvimento de aplicações.
i. Modalidade de licenciamento.
j. Visão, estratégia e road map do produto.
k. Tamanho e participação/envolvimento da comunidade.
l. Modelo de governança adotado pela comunidade.
m. Base instalada e adoção pelo mercado.
Bem e quanto a uma pergunta que muitos me fazem... Minha empresa deve adotar um 
banco de dados Open Source? Para mim, para mudar um software de banco de dados 
deve haver uma estratégia impulsionada por razões fortes e consistentes. Por exemplo, 
se houver desconfianças que o atual fornecedor esteja saindo do mercado; falta de fun-
cionalidade do software (não é mais adequado às necessidade das novas aplicações da 
empresa); falta de visão estratégica por parte do fornecedor do software atual; custos de 
manutenção e operação muito elevados para o resultado obtido; falta de pessoal gaba-
ritado, que esteja disponível no mercado; carência de consultorias e serviços de suporte 
externos; relacionamento com o fornecedor cada vez mais deteriorado... Mudar para um 
banco de dados Open Source simplesmente por questões ideológicas deve estar fora de 
cogitação, pois banco de dados é muito sério para ser tratado de forma simplista.
OK. E quais seriam então os custos e riscos da migração? Existem custos de migração 
que não podem ser subestimados. Temos os custos da conversão de dados, custos da 
codificação, testes e o que chamamos reconciliação entre as aplicações no novo e no 
antigo ambiente, sempre considerando que dificilmente conseguiremos fazer uma mi-
gração estilo big bang, mas que esta será gradual.
Quanto mais complexas forem as aplicações a serem convertidas, mais custosa será a 
migração. Essa complexidade pode ser medida pelo número de programas, número de 
tabelas relacionais, restrições de integridade referencial e tamanho do banco de dados. 
Existem custos indiretos como a construção de interfaces entre as aplicações já con-
vertidas e as que ainda estão no banco de dados antigo. Também os custos de supor-
te técnicos aos dois ambientes implicam, muitas vezes, em gastos adicionais elevados, 
principalmente quando o novo banco de dados não for de completo domínio da equipe 
técnica da empresa. 
Em resumo, os custos da migração afetam os cálculos de custos totais de propriedade. A 
maioria das empresas é extremamente cautelosa em trocar de fornecedor de softwares 
críticos. O perigo de uma interrupção nos seus negócios decorrente de uma troca mal 
planejada ou inadequada faz com que os custos de troca possam ser extremamente 
elevados e desestimuladores. Migrar de um banco de dados para outro é sempre uma 
tarefa complexa e de alto risco, que só deve ser efetuada quando os benefícios forem 
claramente demonstráveis.
Fonte:Taurion (2007, online).
Características de Sistemas de Bancos de Dados
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
21
CARACTERÍSTICAS DE SISTEMAS DE BANCOS DE 
DADOS
Se utilizar um sistema de banco de dados parece uma solução natural, qual seria 
a solução alternativa? Pense em algumas aplicações que você utiliza e que não 
fazem uso de SGBDs. Processadores de texto, planilhas, ferramentas de dese-
nho etc. são alguns exemplos dessas aplicações. O que todas têm em comum? A 
necessidade de se armazenar a informação manipulada por meio de arquivos.
Em qualquer aplicação que necessite do armazenamento de dados, faz-se 
necessário dispor de algum mecanismo que permita que esses sejam gravados 
de modo persistente. A abordagem de arquivos tem suas vantagens, como, por 
exemplo, a portabilidade dos dados. Você pode carregá-los eletrônica ou fisica-
mente para locais diferentes de modo bastante simples. Mas entre as desvantagens 
dessa abordagem há todo o trabalho necessário para se criar um formato e pro-
cessar a sua gravação e recuperação – e, acredite, não é pouco trabalho!
Um SGBD, por outro lado, já dispõe de uma série de funcionalidades prontas 
para serem utilizadas pelo desenvolvedor da aplicação. Desse modo, uma série 
de preocupações passa a ser delegada a um software de terceiros (o SGBD). A 
seguir, apresentaremos uma série de características que diferenciam a aborda-
gem de sistemas de banco de dados da manipulação manual das informações 
(como em arquivos, por exemplo).
Natureza autodescritiva: uma característica fundamental que distingue os 
sistemas de bancos de dados de outras abordagens é o fato de que, nos SGBDs, o 
banco de dados e as metainformações sobre o banco de dados são armazenados 
CONCEITOS DE BANCOS DE DADOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E22
conjuntamente. Essas metainformações armazenadas contêm informações como 
o tipo, o tamanho e as restrições do banco de dados. Em termos técnicos, as 
metainformações são chamadas de esquema (ou schema, em seu termo origi-
nal em inglês).
Isolamento entre Programa e Dados: numa aplicação que utilize arquivos 
para o armazenamento de dados, quaisquer alterações na estrutura do arquivo 
também implicarão em alterações no programa. Nesse caso, dizemos que o pro-
grama é altamente acoplado à sua estrutura de armazenamento de dados. Em 
contraste, SBGDs permitem que o programa somente informe quais dados são 
armazenados, sem se importar em como esses dados serão manipulados inter-
namente. Essa característica aumenta bastante o nível de manutenibilidade do 
sistema, quando bem aplicada.
Múltiplas visões dos dados: estas não são uma característica fundamen-
tal, mas muitos SGBDs fornecem a possibilidade de que diferentes usuários 
com diferentes permissões possam acessar diferentes “visões” dos dados. Essas 
visões (views) correspondem a estruturas virtuais criadas a partir dos dados 
armazenados e podem conter, além dos próprios dados, informações derivadas 
(calculadas) a partir desses dados.
A criação de diferentes usuários com diferentes permissões a visões específicas 
é uma abordagem muito utilizada em sistemas cliente/servidor ou na integra-
ção de aplicações mediante banco de dados. O auge do uso dessas abordagens 
deu-se no final da década de 1990, embora ainda hoje seja possível testemu-
nhar aplicações sendo executadas sob esse modelo. Recomenda-se fortemente 
que, no desenvolvimento de novas aplicações, a abordagem de múltiplas visões 
e de integração mediante banco de dados seja substituída por uma abordagem 
orientada a serviços como SOA (Service Oriented Architecture) ou como REST 
(REpresentational State Transfer).
Visões não são uma má prática. São um recurso bastante útil, mas não 
imprescindível. Como toda ferramenta, quando bem utilizada e de modo ade-
quada, é um recurso valioso.
Acesso concorrente de múltiplos usuários: um SGBD multiusuário, como 
o próprio nome já define, deve permitir o acesso de múltiplos usuários. Além 
disso, o acesso deve ser concorrente, permitindo que todos os usuários conectados 
Características de Sistemas de Bancos de Dados
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
ale
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
23
executem operações “ao mesmo tempo”.
Vale a pena refletir sobre dois termos muitas vezes utilizados de forma errô-
nea na área de Tecnologia da Informação: “paralelo” e “concorrente”. Paralelismo 
puro é algo raro em computação, embora seja perfeitamente possível. Ao lidar-
mos com sistemas de banco de dados, utilizamos o termo “concorrente”, pois 
vários usuários têm a impressão de que estão executando instruções ao mesmo 
tempo – quando na verdade, por se tratar de informações acessadas em disco 
ou com um único barramento de acesso, torna-se necessário algum mecanismo 
de contenção que serialize (coloque em fila) cada uma dessas instruções. Como 
idealmente a execução dessas instruções é bastante curta, tem-se a impressão 
do pseudoparalelismo.
Um conceito fundamental para que o acesso desses múltiplos usuários man-
tenha o banco de dados num estado consistente é o mecanismo de transações, 
que será descrito no próximo tópico.
A REVOLUÇÃO DO BIG DATA ESTÁ PRESTES A ACONTECER
Cezar Taurion
O termo Big Data começa a despertar muita atenção, mas ainda é um conceito mal de-
finido e compreendido. Com uma rápida pesquisa no Google, identifiquei, pelo menos, 
uma dúzia de definições. Neste artigo, vou falar um pouco sobre o assunto e debater 
alguns desafios que temos para conseguir colocar projetos de Big Data em ação. 
Sem entrar em definições e nos atendo apenas a conceitos, podemos resumir com uma 
fórmula simples o que é Big Data: volume + variedade + velocidade de dados. Volume 
porque, além dos dados gerados pelos sistemas transacionais, temos a imensidão de da-
dos gerados pelos objetos na Internet das Coisas, como sensores e câmeras, e os gerados 
nas mídias sociais, via PCs, smartphones e tablets. Variedade porque estamos tratando 
tanto de dados textuais estruturados quanto dos não estruturados, como fotos, vídeos, 
emails e tuítes. E, por fim, velocidade porque, muitas vezes, precisamos responder aos 
eventos quase que em tempo real. Ou seja, estamos falando de criação e tratamento de 
dados em volumes massivos.
Outro desafio: criar e tratar apenas de dados históricos, como o veterano Data Warehou-
se e as tecnologias de BI (Business Intelligence) começam a se mostrar lentos demais 
para a velocidade com que os negócios precisam tomar decisões. Aliás, o termo BI já tem 
mais de 50 anos. Ele foi cunhado por Hans Peter Luhn, pesquisador da IBM em um artigo 
escrito nos idos de 1958.
Quando falamos em volume, os números são gigantescos. Se olharmos globalmente, 
estamos falando em zetabytes ou 10²¹ bytes. Grandes corporações armazenam múlti-
plos petabytes e mesmo as pequenas e médias empresas trabalham com dezenas de 
terabytes de dados. Esse volume tende a crescer geometricamente. Em um mundo cada 
vez mais competitivo e rápido, as empresas precisam tomar decisões baseadas não ape-
nas em palpites, mas em dados concretos. Assim, para um setor de marketing, faz todo 
sentido ter uma visão 360° de um cliente, olhando não apenas o que ele comprou da 
empresa, como registrado no ERP, mas saber o que ele pensa e diz sobre a empresa e 
como os faz - pelo Facebook e Twitter, por exemplo. 
Hoje, já é consenso que dados são os recursos naturais da nova Revolução Industrial. Na 
atual sociedade industrial, ter apenas recursos naturais, como minério, e exportá-los de 
forma bruta - importando em troca produtos manufaturados - não garante a competiti-
vidade de um país no longo prazo. O importante é a tecnologia e o conhecimento que 
cria produtos manufaturados. Afinal, um quilo de satélite vale imensamente mais do 
que um quilo de minério de ferro. 
Fazendo um paralelo, na sociedade da informação, é crucial saber tratar dos dados na 
velocidade adequada. Dados não tratados e analisados em tempo hábil são dados inú-
teis, pois não geram informação. Dados passam a ser ativos corporativos importantes e, 
25 
como tal, podem - e deverão - ser quantificados economicamente.
Big Data representa um desafio tecnológico, pois demanda atenção à infraestrutura e 
tecnologias analíticas. O processamento de volumes massivos de dados pode ser facili-
tado pelo modelo de computação em nuvem, desde, é claro, que esse imenso volume 
não seja transmitido repetidamente via Internet. Só para lembrar, os modelos de co-
brança pelo uso de nuvens públicas tendem a gerar processamentos muito baratos, mas 
tornam caro a transmissão de muitos dados. 
A principal base tecnológica para Big Data Analytics é o Hadoop e os bancos de dados 
NoSQL, onde “No” significa Not Only SQL, ou seja, usa-se bases de dados SQL e não SQL. 
A importância do “Not Only” SQL explica-se pelo fato do modelo relacional ser base-
ado na época de sua criação, no início dos anos 70. Nessa época, acessar, categorizar 
e normalizar dados era bem mais fácil do que hoje. Praticamente não existiam dados 
não estruturados circulando pelos computadores da época. Também não foi desenhado 
para escala massiva ou para um processamento muito rápido. Seu objetivo básico era 
possibilitar a criação de queries que acessassem bases de dados corporativas e, portan-
to, estruturadas. Para soluções Big Data, tornam-se necessárias várias tecnologias, desde 
bancos de dados SQL a softwares que utilizem outros modelos, que lidem melhor com 
documentos, grafos, processamento paralelo etc.
A complexidade do Big Data vem à tona quando lembramos que não estamos falan-
do apenas de armazenamento e tratamento analítico de volumes massivos de dados, 
mas de revisão, ou criação, de processos que garantam a qualidade desses dados e de 
processos de negócios que usufruam dos resultados obtidos. Portanto, Big Data não 
é apenas um debate sobre tecnologias, mas, principalmente, sobre como os negócios 
poderão usufruir da montanha de dados que está agora à sua disposição. Aí emerge a 
questão da integração: como integrar bases de dados estruturadas e não estruturadas 
com diversos softwares envolvidos? 
O Big Data abre oportunidades profissionais bem amplas. Na minha opinião, existe es-
paço para dois perfis profissionais: um mais voltado para os negócios e qualificados para 
tratar analiticamente as informações geradas por essas imensas bases de dados e outro 
com viés mais técnico ou Data Architect.
Pelo viés dos negócios, um artigo interessante que foi publicado há poucos meses pelo 
Wall Street Journal, na edição brasileira, aponta como problema a escassez de talentos. 
Ele fala que muitas empresas americanas começaram a procurar profissionais que sai-
bam interpretar os números usando a análise de dados, também conhecida como inte-
ligência empresarial. Mas encontrar profissionais qualificados tem se mostrado difícil. 
O resultado foi que várias faculdades americanas, como a Faculdade de Pós-Graduação 
em Administração da Universidade Fordham e a Faculdade de Administração Kelley, da 
Universidade de Indiana, começaram a oferecer disciplinas eletivas, cursos de extensão 
e mestrados em análise de dados. Já o Data Architect deve lidar com tecnologias SQL 
e NoSQL, conhecer profundamente conceitos como stream processing e Event Driven 
Architecture (EDA) e, portanto, ter capacidade de desenhar estratégias para manusear 
e analisar grandes volumes de dados de formatos diferentes, quase que em tempo real.
A ideia de stream processing, ou stream computing, é fantástica; é um novo paradigma. 
No modelo de data mining tradicional, uma empresa filtra dados dos seus vários siste-
mas e, após criar um data warehouse, dispara “queries”. Na prática, faz-se uma garim-
pagem em cima de dados estáticos, que não refletem o momento, mas sim o contexto 
de horas, dias ou mesmo semanas atrás. Com o stream computing, essa garimpagem 
é efetuada em tempo real. Em vez de disparar queries em cima de uma base de dados 
estática, coloca-se uma corrente contínuade dados (streaming data) atravessando um 
conjunto de queries. Podemos pensar em inúmeras aplicações, sejam estas em finanças, 
saúde e mesmo manufatura. 
Vamos ver este último exemplo: um projeto em desenvolvimento com uma empresa de 
fabricação de semicondutores monitora em tempo real o processo de deteção e classi-
ficação de falhas. Com o stream computing, as falhas nos chips que estão sendo fabri-
cados são detetadas em minutos e não em horas ou semanas. Os wafers defeituosos 
podem ser reprocessados e, mais importante ainda, pode-se fazer ajustes em tempo real 
nos próprios processos de fabricação.
Quanto ao EDA, pode-se começar a estudar o assunto acessando seu verbete na Wiki-
pedia. 
O termo Big Data vai aparecer na tela do radar dos CIOs em breve. Aliás, já aparece no 
canto da tela de um ou outro CIO, e, provavelmente, em alguns anos, já será um dos 
temas mais prioritários das tradicionais listas de “tecnologias do ano”. Portanto, é bom 
estar atento à sua evolução e começar a colocar em prática algumas provas de conceito.
Fonte: Taurion (2012, online). 
O maior evento da comunidade brasileira de NoSQL:
<http://nosqlbr.com/>. Acesso em: 27 jul. 2015.
Transações
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
27
TRANSAÇÕES
O conceito de transação é fundamental em muitas áreas da computação e parti-
cularmente fundamental em sistemas de banco de dados. Consideramos como 
transação uma determinada “unidade de trabalho”, que é realizada em qualquer 
sistema computacional de um modo coerente e independente de outras transa-
ções. Essas transações devem permitir que o sistema esteja num estado coerente 
antes e depois de sua execução, independente de falhas ou outros problemas que 
possam ocorrer. Devem permitir também que vários clientes diferentes acessem 
concorrentemente o sistema sem que isso possa corromper ou levar a estados 
que não sejam considerados coerentes.
Uma definição clássica do conceito de transações envolve o acrônimo 
ACID, oriundo das propriedades de Atomicidade, Consistência, Isolamento e 
Durabilidade.
Atomicidade: a propriedade atomicidade de banco de dados advém do con-
ceito de átomo da física – o qual até recentemente supunha-se indivisível. Essa 
indivisibilidade pressupõe que as operações realizadas numa transação sejam 
todas realizadas por completo ou que nenhuma seja realizada. Popularmente 
seria o conceito do “tudo ou nada”. Isso permite que durante a nossa interação 
com um banco de dados possamos agrupar vários comandos relacionados com 
a garantia de que todos sejam executados – de modo que as informações arma-
zenadas permaneçam num estado consistente após a execução da transação.
CONCEITOS DE BANCOS DE DADOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E28
Consistência: a propriedade de consistência assegura que a execução de 
qualquer transação trará o banco de dados de um estado consistente para outro 
estado também consistente. No caso, a “consistência” implica que todos os dados 
de um banco de dados devem ser válidos de acordo com um conjunto de regras 
que podem incluir restrições de tipo, valor, referências entre informações etc.
Isolamento: a propriedade de isolamento determina que o resultado da exe-
cução concorrente de um conjunto de transações terá o mesmo resultado de sua 
execução em série (uma após a outra).
O isolamento transacional é o que garante e permite o acesso concorrente 
de múltiplos usuários ao mesmo SGBD.
Durabilidade: a propriedade de durabilidade garante que uma vez que uma 
transação tenha sido finalizada com sucesso, os dados terão a garantia de terem 
sido armazenados corretamente – independentemente da eventualidade de falhas, 
falta de energia, erros de aplicação etc.
Em nossa opinião, é justamente a propriedade de durabilidade que faz com 
que os bancos de dados sejam posicionados como “ferramentas sagradas” em 
muitas empresas. Novamente, não há menosprezo algum em dizer que o mais 
importante é o código que atende aos processos de negócios. Durabilidade é 
essencial: imagine qualquer empresa perdendo todos os seus dados. A continui-
dade do próprio negócio está em risco. Mas mais importante do que os dados 
em si é o uso que se faz deles.
Transações
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
29
Sistemas tradicionais que vêm sendo desenvolvidos nas últimas décadas 
sempre tiveram como premissa em seus dados sua corretitude (grau em 
que o software executa suas funções de modo correto). Isso normalmente 
implicou na utilização de um banco de dados que pudesse satisfazer as pro-
priedades ACID.
Com o aumento da quantidade de informações e usuários nas aplicações, o 
fator disponibilidade passou em alguns casos a ser mais importante do que 
a própria consistência das informações.
Além do ACID, surgiu o acrônimo BASE (Basically Available, Soft state, Even-
tually consistent) – traduzido literalmente como Basicamente Disponível, 
Estado flexível e Eventualmente consistente. O BASE tornou-se uma sigla 
bastante comum ao lidar com bancos de dados não relacionais.
Uma reflexão que vale a pena ser feita é: para os novos desafios e empreita-
das que você, futuro(a) profissional, enfrentará, em quais situações o ACID é 
recomendado e em quais outras situações o BASE mostra-se mais adequa-
do?
Fonte: Pritchett (2008, online). 
CONCEITOS DE BANCOS DE DADOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E30
Papéis assumidos pelos usuários de SGBDs
DESENVOLVEDORES DE 
SGBDS
São pessoas que projetam e codificam os SGBDs. Exem-
plos de pessoas nesses papéis incluem os funcionários 
de empresas como Oracle, IBM e Microsoft que atuam 
diretamente na programação do software SGBD. No caso 
de SBGDs livres, podem ser também voluntários ou pes-
soas e empresas interessadas na evolução do software. 
Normalmente são programadores altamente qualificados 
que trabalham no código-fonte do SBGD. Mas voluntários 
de projetos de software livre também podem contribuir 
em outras atividades, como documentação, por exemplo.
DESENVOLVEDORES 
DE APLICAÇÕES E 
ADMINISTRADORES 
DE BANCOS DE DADOS 
(DBAS – DATABASE 
ADMINISTRATORS)
São pessoas que desenvolvem software que armazena as 
informações em um SGBD. Tradicionalmente, em abor-
dagens mais tradicionais e conservadoras, as equipes de 
desenvolvimento são separadas em desenvolvedores e 
DBAs. Os primeiros desenvolvem o software que acessa 
o SGBD. Os segundos projetam os bancos de dados e 
os mantêm. Em abordagens de desenvolvimento mais 
modernas, tende-se a eliminar essa distinção entre os pa-
péis, pois quanto maior a distância entre os membros da 
equipe envolvidos no projeto de software, menor tende a 
ser a qualidade do software entregue.
USUÁRIOS FINAIS
São pessoas que não interagem diretamente com os ban-
cos de dados, e sim com as aplicações criadas pelos de-
senvolvedores de software que armazenam suas informa-
ções em SGBDs. A maioria das pessoas enquadra-se nessa 
categoria e, embora sejam os grandes beneficiados pela 
tecnologia dos sistemas de bancos de dados, raramente 
possuem ciência do fato.
Quadro 1: Papéis assumidos pelos usuários de SGBDs
Fonte: os autores.
Vantagens de se Utilizar um SGBD
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
31
VANTAGENS DE SEUTILIZAR UM SGBD
Durante os tópicos anteriores, já citamos algumas vantagens de se utilizar um 
SGBD para armazenar as informações de nossas aplicações. A seguir, as enu-
meraremos de um modo mais detalhado, de forma a justificar seu uso em uma 
diversidade de situações.
1. Diminuir a redundância e fornecer consistência: imagine uma situação 
bastante comum em que você resolve elaborar um documento e necessita 
da colaboração de várias pessoas para fazê-lo. Você então cria o esboço 
desse documento e o envia por e-mail a todos os interessados. Cada pes-
soa realiza as suas modificações em suas próprias cópias dos documentos 
e, depois, repassa novamente por e-mail. Quem tem a última versão do 
documento? Quais são os dados corretos? Essas são perguntas difíceis 
de serem respondidas nessa abordagem e provavelmente exigirá muito 
trabalho manual para se chegar à versão final do documento. Um SGBD 
centraliza todas essas informações, fazendo com que todos os usuários 
acessem os mesmos dados. Desse modo, diminui-se a redundância: há 
somente uma cópia dos dados a serem manipulados. Isso permite tam-
bém que o banco de dados sempre permaneça em um estado consistente, 
pois todos os usuários terão sempre a “última versão” dos dados. Não há 
a possibilidade de alguém permanecer com um “pedaço” dos dados anti-
gos e outro “pedaço” com a informação atual.
2. Controle de acesso: muitas informações armazenadas em sistemas são 
confidenciais. Ao mesmo tempo, é necessário que essas informações sejam 
compartilhadas com as pessoas para que sejam trabalhadas. Ao utilizar 
arquivos, é necessário que uma cópia seja enviada aos interessados. Por 
Neste vídeo, Klaus Wuestfeld, um dos pioneiros do XP (eXtreme Programming) no Brasil e criador 
do conceito de prevalência de objetos, mostra uma abordagem inovadora e de alto desempenho 
para manipulação e persistência de objetos. Atualmente, alguns dos sistemas de transações mais 
rápidos do mundo utilizam esse conceito.
Disponível em: <http://youtu.be/Car5V9l8BiQ>. Acesso em:7 jul. 2015.
CONCEITOS DE BANCOS DE DADOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E32
múltiplos motivos, essas cópias podem acabar sendo enviadas por e-mail 
a pessoas cujo acesso é indevido ou a mesma pode ser deixada em um 
dispositivo de armazenamento removível esquecido em alguma mesa 
de reunião. No mínimo, um SGBD oferece uma combinação de login/
senha para acesso a um determinado banco de dados. Outras restrições 
relativas a qual usuário pode acessar quais dados também costumam ser 
implementadas pela maioria dos SBGDs. Como o acesso é centralizado, 
também tem-se uma única cópia para proteção.
3. Consultas eficientes: como são aplicações de software de propósito 
específico, os SGBDs são especialmente projetados para armazenar efi-
cientemente os dados a eles delegados e para permitir formas de consulta 
eficientes aos mesmos dados. Cada SGBD possui sua estratégia interna 
para transformar essas informações em bytes gravados no dispositivo de 
armazenamento, mas, de um modo geral, não há uma grande diferença 
de desempenho entre diferentes produtos em uma quantidade razoá-
vel de aplicações. Em casos de usos típicos, é muito mais importante a 
eficiência em consultas do que a eficiência em armazenamento de infor-
mações. Assim, os SBGDs utilizam dispositivos como índices (que são 
estruturas criadas para otimizar consultas baseadas em certos critérios) 
e cachês (caches) para armazenar em memória os dados mais frequente-
mente acessados. Esses dispositivos permitem que as consultas possam 
ser executadas de modo mais rápido e, em muitos SGBDs, adequar esses 
dispositivos de modo otimizado chega a quase ser uma arte, tamanha a 
quantidade de opções disponíveis.
4. Backup e Restore: para garantir a continuidade dos negócios, é essen-
cial executar periodicamente o backup das informações armazenadas 
no servidor. Ao invés de cópias físicas dos arquivos do SGBD, é comum 
os próprios SGBDs fornecerem ferramentas que permitem a exportação 
dos dados para um formato intermediário (texto ou binário) para backup. 
Essas mesmas ferramentas suportam a restauração desses dados em caso 
de necessidade. As rotinas de backup/restore também são uma ferramenta 
bastante útil na migração ou cópia de servidores onde o mesmo SGBD 
esteja instalado. Situações de migração costumam ocorrer em caso de 
falhas ou upgrade de equipamento. Cópias costumam ser utilizadas para 
permitir o teste de aplicações em desenvolvimento.
33 
COMPUTAÇÃO EM NUVEM E ARQUITETURAS DE ARMAZENAMENTO EM 
NUVEM
A computação em nuvem e o armazenamento em nuvem se tornaram o método pre-
ferencial para a distribuição de informações e funcionalidade online. Enquanto alguns 
serviços de nuvem focam em fornecer aos consumidores uma ampla gama de funciona-
lidades e serviços, incluindo compras online, pesquisa, rede social, consumo de entrete-
nimento e proteção de documentos importantes, outros serviços de nuvem focam em 
pequenas empresas, grandes corporações, governos e outras instituições.
Diversos serviços de nuvem oferecem armazenamento em nuvem gratuitamente para 
os consumidores, enquanto outros cobram algum tipo de tarifa com assinatura. Há 
também as nuvens privadas, pertencentes e controladas por uma organização, que for-
necem uma rede segura para o compartilhamento de softwares e dados cruciais. Por 
exemplo, hospitais podem optar por usar serviços públicos de arquivamento para re-
gistros médicos eletrônicos e dados de imagem de pacientes (usando PACS) ou podem 
criar a sua própria solução de arquivamento em nuvem. Além disso, hospitais podem 
juntar seus orçamentos e recursos para criar um consórcio ou grupo de nuvem privada 
compartilhada. Nuvens privadas são criadas usando hardware, software e outras ferra-
mentas de diferentes fornecedores, enquanto os próprios servidores são gerenciados 
interna ou externamente. Nuvens híbridas, como o nome sugere, combinam vários re-
cursos de nuvem pública e privada em um serviço ou solução.
No centro de todos os serviços, produtos e soluções de nuvem estão ferramentas de sof-
tware com três pilares subjacentes de funcionalidade: ferramentas para o processamen-
to de dados e a execução de aplicativos (servidores computacionais), movimentação de 
dados (redes) e preservação ou armazenamento de dados (armazenamento).
Este artigo discute as arquiteturas de armazenamento e computação em nuvem, apro-
veitando o conhecimento fundamental em armazenamento de dados de TI e corpora-
tivos.
Histórico e desafios
A computação em nuvem e o armazenamento em nuvem são os assuntos do momento 
para tratar dos problemas e desafios comuns em TI, além de trazer novas oportunidades. 
Para alguns ambientes, a principal meta é cortar custos e, para outros, sustentar o cres-
cimento. Além disso, alguns ambientes precisam aprimorar objetivos de nível de serviço 
(SLOs) e cumprir acordos de nível de serviço (SLAs) em termos de disponibilidade, de-
sempenho, segurança e proteção de dados.
Os desafios comuns enfrentados pelas soluções em nuvem incluem:
Desafio de TI Solução em nuvem
Orçamentos fixos ou reduzidos Fazer mais com os orçamentos disponí-
veis sem deixar de promover o crescimen-
to
Demanda por nova funcionalidade Agilidade possibilitada pela implementa-
ção rápida
Promover crescimento com estabilidade Elasticidade que promova o crescimento 
com resiliência
Privacidade e segurança de informações Multi-inquilino para coexistência segura
Proteção de dados Continuidade dos negócios e recupera-
ção de desastres flexíveis
Aprimorar o atendimento ao cliente Reduzir o tempo de entrada no mercado e 
possibilitar novas oportunidades
Falta de mobilidade ou flexibilidade Permitir acesso de qualquer lugar a partir 
de diferentes dispositivos
O que são as soluções em nuvem?Soluções em nuvem são ferramentas para a criação e o armazenamento de conteúdo 
ou informações, bem como estratégias de onde e como consumi-los. Essas soluções são 
usadas para criar infraestruturas virtuais para grandes e pequenas organizações hospe-
darem aplicativos e funções comerciais, assim como um local para desenvolver e testar 
novos recursos. Além disso, incluem serviços ou produtos (hardwares, softwares e redes) 
pagos separadamente e soluções que você pode comprar para instalar no seu ambiente 
específico.
Para começar, aqui estão alguns termos e expressões comuns relacionados às soluções 
em nuvem:
• Otimizado e com boa relação custo-benefício: alinha recursos a SLOs para cum-
prir SLAs
• Menu de opções de serviço para escolher: camadas de recursos alinhados a custo 
e SLAs
• Elástico, escalável com estabilidade: promove o crescimento sem adicionar com-
plexidade
• Resiliente, flexível e dinâmico: adaptar-se às necessidades do momento e man-
ter-se disponível
• Provisionamento rápido ou automático: acessa recursos e serviços rapidamente
• Seguro e multi-inquilino (multi-tenant): separação segura de usuários, manten-
do a integridade dos dados
35 
• Medido e gerenciado: métricas para gerenciamento de relatórios, análises e ser-
viços
• Escala na densidade: usar capacidade de multi-inquilino e economias de escala e 
cortar custos
SaaS a PaaS e IaaS
O SaaS (Software as a Service, software como serviço) que é consumido por meio das 
soluções em nuvem inclui entretenimento pessoal e de consumo (Netflix), notícias e 
rede social (Facebook, Skype e Twitter), compartilhamento de fotos, compartilhamento 
de arquivos (Dropbox), serviços de email, música e backup online.
Além de oferecer uma funcionalidade distinta para consumidores, pequenas e grandes 
empresas também utilizam as soluções em nuvem para aumentar a produtividade. Por 
exemplo, compartilhamento de documentos (Google Docs), gestão de relacionamento 
com o cliente ou CRM (Salesforce.com), relatórios de despesas (Concur), folha de paga-
mento (ADP), email, compartilhamento de arquivos, backup e arquivamento. Além de 
apresentar o SaaS, os provedores de serviços de nuvem também oferecem ferramentas 
e ambientes para PaaS (Platform as a Service, plataforma como serviço) para proporcio-
nar o desenvolvimento e a criação de serviços de SaaS entre outros.
Os tipos de camadas de armazenamento para a IaaS (Infrastructure-as-a-Service, infraes-
trutura como serviço) incluem recursos como Web ou máquinas virtuais (VMs), armaze-
namento para compartilhamento de arquivos online, backup ou arquivamento, banco 
de dados, ferramentas de desenvolvimento e busca. Esses recursos possibilitam que os 
próprios provedores de serviços de nuvem e terceiros criem soluções individualizadas 
para combinar diversas funcionalidades ou camadas de nuvem nos serviços oferecidos.
Os serviços de armazenamento em nuvem SaaS incluem compartilhamento de arquivos, 
documentos, música, fotos e vídeo, backup/restauração, continuidade dos negócios e 
recuperação de desastres, juntamente com recursos de arquivamento. Outras opções 
de armazenamento em nuvem incluem banco de dados, análise de dados (incluindo 
serviços baseados em redução em mapa e Hadoop), unidades de nuvem e outras apli-
cações que usam armazenamento em nuvem back-end. As soluções de armazenamento 
em nuvem também se estendem a produtos e soluções usados para implementar nu-
vens públicas, privadas e híbridas.
Produtos e soluções são as peças de armazenamento em nuvem mais comuns dos sis-
temas de armazenamento físico. Os serviços de nuvem privada e pública de SaaS a PaaS 
e IaaS usam armazenamento em camadas, incluindo unidades de estado sólido (SSDs) 
e discos rígidos (HDDs). Assim como os ambientes tradicionais de armazenamento cor-
porativo, os provedores de soluções e serviços em nuvem utilizam uma mistura de ca-
madas de tecnologia de armazenamento diferentes, que atendem a requisitos de SLO 
e SLA diferentes. Por exemplo, a utilização de SSDs rápidas para consolidação de E/S 
densa (oferecendo suporte a registros e índices de bancos de dados, metadados para 
pesquisa rápida e outros dados transacionais) possibilita que mais trabalho seja reali-
zado com menos energia em um espaço (footprint) mais denso e com melhor relação 
custo-benefício.
O uso de uma mistura de SSDs ultra-rápidas com HDDs de alta capacidade cria um equi-
líbrio de desempenho e capacidade para atender a outros requisitos de serviço com 
diferentes opções de custo de serviço.
Com os serviços em nuvem, em vez de especificar qual tipo de unidade física comprar, 
os provedores de serviços de nuvem cuidam disso oferecendo diversas opções de dis-
ponibilidade, custo, capacidade, funcionalidade e desempenho para atender a diferen-
tes requisitos de SLA e SLO.
Arquitetura de nuvem
No cerne da TI legada, a hospedagem, provedores de serviços gerenciados (MSP) e nu-
vens são peças comuns, que incluem tecnologias de rede, processamento e armazena-
mento.
Diferentes tipos de servidores, redes e tecnologias de armazenamento atendem a diver-
sos requisitos de armazenamento em nuvem e computação em nuvem (servidores bla-
de e em rack densos com diferentes números de soquetes e cores a velocidades de GHz, 
threads, quantidade de memória e recursos de expansão de E/S diversos são apenas 
alguns exemplos). As opções de rede incluem 40GbE e 100GbE rápidos para circuitos de 
retorno (backhaul) e de tronco, juntamente com 10GbE e 1GbE mais comuns para redes 
virtuais privadas (VPN) e otimização de largura de banda.
As opções ou camadas de armazenamento de dados incluem SSDs ultra-rápidas, bem 
como HDDs rápidos de capacidade média a alta. Os recursos de gerenciamento de ar-
mazenamento incluem proteção de dados — alta disponibilidade (HA), backup (BC) e 
recuperação de desastres (DR) — assim como redução de volume (footprint) para otimi-
zação de espaço, como compressão, deduplicação e provisionamento fino, o que possi-
bilita que mais informações sejam armazenadas por períodos mais longos a custos mais 
baixos.
As ferramentas de software também são muito importantes na criação de serviços e 
soluções e incluem APIs, middleware, banco de dados, aplicativos, hipervisores para 
criação de máquinas virtuais (VMs) e infraestruturas de desktop virtual (VDI), juntamen-
te com stackware de nuvem, como OpenStack e ferramentas de gerenciamento asso-
ciadas. Alguns exemplos de hipervisores de VMs e VDI são Citrix/Xen, KVM, Microsoft 
Hyper-V, Oracle e VMware ESX/vSphere.
Nos três casos, o armazenamento de dados é configurado em sistemas de armazena-
mento, equipamentos de armazenamento e servidores de computação.
As nuvens públicas são serviços acessível gratuitamente ou mediante o pagamento 
de uma tarifa, que fornecem diferentes funcionalidades, como Amazon Web Services 
37 
(AWS), Google Docs ou software de backup de dados Seagate® EVault®. As nuvens públi-
cas são controladas por seus respectivos proprietários, cujos clientes optam por usar os 
seus serviços. As nuvens privadas, por outro lado, pertencem e são operadas e controla-
das por organizações e são semelhantes aos serviços de TI legados. Entretanto, observe 
que as nuvens privadas criadas usando componentes e serviços públicos e instalações 
externas existentes em diferentes locais de provedores de nuvem são chamadas de nu-
vens híbridas.
A Seagate e o armazenamento em nuvem
A Seagate é líder no fornecimento de armazenamento corporativo e, sem nenhuma sur-
presa, também está no centro da infraestrutura de nuvem. Aproveitando décadas de 
experiência em ambientes de co-localização e serviços gerenciados de alta densidade e 
grande escala para empresas, instituições e governos, a Seagate leva esse conhecimen-
to para os ambientes de nuvem pública e privada. Além da tecnologia de armazena-
mento líder de setor, a Seagatetem décadas de experiência trabalhando com diversos 
parceiros e suas respectivas soluções de armazenamento, embalagem, chassi e gabine-
te, processos de teste e verificação.
Como um fornecedor-chave para provedores de serviços gerenciados e de nuvem pú-
blica e privada, a tecnologia da Seagate pode ser encontrada em ambientes corpora-
tivos e centrais de dados em nuvem e nos provedores de serviços gerenciados para 
pequenas empresas e consumidores. Em outras palavras, a Seagate já está levando o 
armazenamento em nuvem e a computação em nuvem da central de dados para o seu 
bolso há algum tempo!
As opções de armazenamento para os ambientes de armazenamento em nuvem e com-
putação em nuvem da Seagate incluem a família Pulsar® de SSDs de desempenho ultra-
-alto. Para complementar as unidades Pulsar oferecemos os HDDs de alto desempenho 
Savvio® 10K e Savvio 15K de 2,5 polegadas para cenários de densidade mais alta, além 
dos HDDs de baixo consumo de energia Constellation®, que comportam uma configu-
ração com vários terabytes.
A Tabela 1 mostra como e onde a Seagate promove o armazenamento em nuvem e a 
computação em nuvem pública e privada.
Tabela 1. Como a Seagate promove a nuvem
Central de dados: pública, privada, híbrida Empresarial Pessoal
Computação em 
nuvem Armazenamento em nuvem Nuvem pessoal
Combinação de 
alto desempenho e 
capacidade
Boa relação custo-be-
nefício, alta capacidade, 
economia de energia
Armazenamento 
local e em nuvem
Armazenamento 
local e em nuvem
Pulsar® (SSD), 
discos Savvio®15K 
e Savvio 10K de 
2,5 polegadas 
com desempenho 
otimizado
Discos Constellation® 
e Constellation ES de 
capacidade otimizada
BlackArmor® NAS
Armazenamento 
em rede GoFlex® 
Home, armaze-
namento pessoal 
Backup Plus e 
armazenamento 
móvel e sem fio 
Satellite™
Resumo e próximos passos
Há muitas soluções em nuvem, cada uma oferecendo diferentes serviços, funcionali-
dades e recursos. A funcionalidade e os serviços em nuvem incluindo computação e 
armazenamento são combinados para oferecer SaaS, PaaS e IaaS em soluções de nuvem 
pública e privada. Esses recursos podem ser distribuídos como um serviço, um produto 
ou um conjunto de soluções, também conhecido como ITaaS (IT as a Service, TI como 
serviço). Além disso, os serviços de nuvem são reunidos em infraestruturas públicas e 
privadas para criar nuvens híbridas a fim de atender às suas necessidades e requisitos 
específicos.
A criatividade para satisfazer diferentes necessidades e requisitos de informações são 
determinados por como você ou o seu provedor de serviços usam os recursos de nuvem.
Considerações Finais
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
39
CONSIDERAÇÕES FINAIS
Nesta unidade, pudemos perceber que os bancos de dados são uma coleção de 
dados relacionados que representam, por meio de um nível determinado de abs-
tração, o modelo do mundo real de nossas aplicações de software. Boa parte das 
aplicações de software desenvolvidas na atualidade envolve a manipulação e, 
principalmente, o armazenamento dos dados – estes muitas vezes em enormes 
quantidades. Para manipular esses bancos de dados, criou-se uma categoria de 
software específico denominada de sistemas gerenciadores de bancos de dados 
(SGBDs). O banco de dados (os dados) e o sistema que o gerencia são denomi-
nados conjuntamente de sistemas de bancos de dados.
Durante esta unidade também descrevemos as características que identificam 
as propriedades de sistemas de bancos de dados quando comparados a aborda-
gens tradicionais de processamento de arquivos. Certamente que determinados 
casos de uso ainda exigem a utilização de arquivos como meio de armazenamento 
das informações. Mas com as informações que detalhamos como características 
desses sistemas de banco de dados, esperamos que você, como desenvolvedor(a), 
possa ter argumentos suficientes para decidir adequadamente entre uma abor-
dagem e outra.
Como existem muitos tipos de usuários diferentes que podem interagir com 
os sistemas de bancos de dados, também apresentamos uma lista não exaustiva 
dos papéis que esses usuários podem assumir nessas interações. Uma máxima 
que devemos sempre utilizar é a “técnica do espelho”. Olhe sempre para o sof-
tware que você desenvolve por meio dos olhos de quem usa. Compreender as 
situações em que cada tipo de usuário interage com um sistema de banco de 
dados permite que tenhamos uma melhor consciência das dificuldades e das 
necessidades que os usuários possuem em cada caso de uso cotidiano da nossa 
vida profissional.
Por fim, tentamos discutir algumas vantagens da abordagem de sistemas de 
bancos de dados em relação à implementação de aplicações sem a facilidade e 
funcionalidade de um SGBD. Claro que, tendenciosamente, um estudioso de sis-
temas de bancos de dados observaria argumentos bastante positivos em relação à 
abordagem dos SGBDs. O papel de um desenvolvedor experiente é distanciar-se 
CONCEITOS DE BANCOS DE DADOS
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IU N I D A D E40
desses apegos a uma determinada tecnologia ou outra e decidir sobriamente qual 
a solução mais adequada para a sua aplicação.
Uma vez entendidos esses conceitos, podemos nos dedicar a estudar melhor 
alguns dos detalhes internos dos modelos utilizados pelos sistemas de bancos de 
dados e das arquiteturas de software existentes que utilizam esses sistemas. Tais 
tópicos serão abordados em nossa próxima unidade.
41 
1. Transações tradicionalmente são melhor entendidas por meio do conjunto de 
suas propriedades ACID (Atomicidade, Consistência, Isolamento e Durabilida-
de). Em quais situações da vida real você consegue enxergar a necessidade de 
se executar operações com essas propriedades?
2. Ao enumerar as vantagens de se utilizar um SBGD, fizemos uma comparação 
com a utilização de arquivos para armazenamento dos dados. Tendenciosa-
mente, o SGBD apareceu como o vencedor nas comparações. Quais seriam as 
situações em que os arquivos seriam uma solução mais adequada? Você conse-
gue exemplificar alguma outra situação em que uma terceira alternativa seria 
mais viável?
3. Pense no SBGD como um módulo do sistema ou como uma outra aplicação a 
ser integrada (pois, em muitas concepções modernas, é assim que ele deve ser 
tratado). Uma das características dos SGBDs é o isolamento entre o programa e 
os dados. Quais os benefícios desse isolamento? Em que outras partes do siste-
ma essa característica também pode trazer benefícios?
U
N
ID
A
D
E II
Prof. Esp. Victor de Marqui Pedroso
MODELO RELACIONAL
Objetivos de Aprendizagem
 ■ Capacitar o aluno ao entendimento dos conceitos básicos na criação 
de um banco de dados.
 ■ Apresentar ao aluno, a melhor maneira de aplicação dos conceitos 
básicos. 
Plano de Estudo
A seguir, apresentam-se os tópicos que você estudará nesta unidade:
 ■ Modelo Relacional
 ■ Introdução à Modelagem
 ■ Atributos
 ■ Tipos de Atributos
 ■ Domínio
 ■ Chave Estrangeira (Foreign Key)
 ■ Relacionamentos
 ■ Cardinalidade
INTRODUÇÃO
A partir desta unidade, abordaremos o modelo de dados relacional, que é o 
modelo utilizado nos bancos de dados relacionais. O advento do modelo rela-
cional é atribuído a Ted Codd da IBM em 1970 e imediatamente se popularizou 
devido à sua simplicidade e sólidos fundamentos matemáticos: é baseado na teo-
ria geral dos conjuntos e em lógica matemática.
Os primeiros SGDBs Relacionais apareceram na década de 1980 como uma 
novidade boa no meio da computação, tanto que esses SGDBs acabaram suce-
dendo os bancos de dados hierárquicos em rede predominantes por mainframes.Por serem bancos de dados com características fortes como: capacidade de inse-
rir grande quantidade de dados, rapidez na identificação e tratamento de erros, 
realização de pesquisa de dados de maneira rápida e ainda garantir a integri-
dade dos dados, sua expansão foi enorme e aos poucos acabou crescendo tanto 
que tornou-se sinônimo de “banco de dados”. Alguns bons exemplos de ban-
cos de dados relacionais são DB2 (IBM), Oracle e MySQL (Oracle), SQLServer 
(Microsoft), Firebird (software livre), Interbase (Borland) e PostgreSQL (sof-
tware livre).
Agora que já sabemos quais são os bancos de dados relacionais existentes, 
vale lembrar que devemos sempre trabalhar para uma boa operacionalização 
deles e, para que isso ocorra, precisamos nos basear em normas concisas no 
momento da criação de um projeto de bancos de dados. Uma vez que nos apro-
fundemos nos estudos da teoria relacional, estaremos capacitados na criação de 
projetos que sejam corretos, consistentes e bem estruturados, evitando, assim, 
um futuro problema ou retrabalho.
Dada a relevância do assunto, estudaremos o modelo relacional introduzindo 
alguns conceitos fundamentais e importantes desse modelo, sempre mesclando a 
teoria com a prática, utilizando também exemplos concretos e que estejam par-
ticipando mais proximamente da nossa rotina de trabalho e do nosso cotidiano.
Introdução
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
45
MODELO RELACIONAL
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E46
O MODELO RELACIONAL
Quando nos propomos a criar um banco de dados, temos que saber da importância 
do modelo relacional, pois é nele que nos basearemos para uma implementa-
ção inicial. O modelo relacional é um modelo da segunda geração que surgiu 
depois dos modelos pré-relacionais, hierárquicos e de rede. Os modelos que hoje 
tentam substituir são os de terceira geração, os pós-relacionais, modelos orien-
tados a objetos, objeto relacional, temporal e geográfico. O Modelo relacional 
tem uma sólida base formal, construído sob a teoria dos conjuntos, seu nome é 
devido à relação matemática da teoria dos conjuntos e não aos relacionamen-
tos, como muitos pensam. Trata-se de um modelo com estruturas de tabelas e 
alguns conceitos.
O modelo relacional permite a representação da estrutura lógica do projeto 
com uma visão genérica. Sua estrutura é feita de forma clara e simples, possibili-
tando representar os dados do mundo real como objetos denominados entidades 
ou conjunto de entidade. 
Neste livro, estaremos utilizando a notação de Peter Chen (1990), notação 
esta que fora criada, em 1976, pelo Dr. Peter Pin-Shan Chen, que é um cientista 
da computação americano e professor de ciência da computação na Louisiana 
State University, conhecido como criador do modelo entidade relacionamento.
O Modelo Relacional
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
47
Entidade:
ouAtributo:
Relacionamento:
Figura 2: Componentes DER (Diagrama Entidade e Relacionamento)
Fonte: os autores.
ENTIDADES (TABELAS)
A entidade ou tabela trata-se de uma representação gráfica de um conjunto, 
conjunto este cuja representação física ou gráfica padrão é feita por meio de 
um retângulo com o nome da entidade dentro dele. Para identificarmos uma 
entidade, devemos considerar os objetos, coisas ou algo que seja relevante no 
levantamento dos dados. Segue abaixo alguns exemplos (Figura 3 e Figura 4):
 
Alunos
Carros
Viagem
Aluguel
Figura 3: Exemplo de Entidades
Fonte: os autores.
MODELO RELACIONAL
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E48
No exemplo dado na Figura 3, temos uma entidade Alunos, em que é repre-
sentado um conjunto de Alunos. Da mesma forma, podemos dizer que a Entidade 
Carros representa um conjunto de Carros, e assim sucessivamente.
Baseados no conceito de Entidade, podemos classificar as Entidades em 
Concretas e Abstratas, em que entidades Concretas são entendidas como objeto do 
mundo real que pode ser separado e distinguível de outro objeto. Já as Entidades 
Abstratas são aquelas que não temos de maneira tangível (intangível). Com isso, 
vale lembrar que, em ambos os Tipos de Entidades, a representação é a mesma. 
A seguir (Figura 4), iremos classificar algumas Entidades:
Alunos
Carro
Livro
Funcionário
Viagem
Aluguel
Compra
Empréstimo
Exemplos de Entidades Concretas Exemplos de Entidades Abstratas
Figura 4: Exemplo de Entidades Concretas e Entidades Abstratas
Fonte: os autores.
INTRODUÇÃO À MODELAGEM
Agora que já sabemos o que é uma entidade, é importante entendermos o motivo 
pelo qual ela será criada, para isso, podemos utilizar a Descrição Textual Narrativa, 
sendo essa nada mais que o levantamento de requisitos junto ao cliente, ou seja, 
uma entrevista em que iremos retirar as informações devidas para a implemen-
tação do nosso sistema. Nesse momento, é importante anotarmos TODAS as 
necessidades do nosso cliente e, a partir dessas anotações, iremos analisar os 
Introdução à Modelagem
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P
en
al
 e
 L
ei
 9
.6
10
 d
e 
19
 d
e 
fe
ve
re
iro
 d
e 
19
98
.
49
substantivos das frases e, caso esse substantivo seja relevante ao sistema, pode-
remos transformá-lo em uma entidade, por exemplo:
Na frase: “a bibliotecária empresta um livro”, podemos retirar duas possí-
veis entidades, sendo elas:
Bibliotecária Livro
Figura 5: Exemplo de Entidades
Fonte: os autores.
Já na frase: “o carro percorre vários itinerários”, podemos retirar duas possíveis 
entidades, sendo elas:
 
Carro Itinerário
Figura 6: Exemplo de Entidades
Fonte: os autores.
E, assim, iremos popular o nosso sistema com as entidades necessárias para a 
implementação, porém, vale lembrar que essa fase é IMPORTANTÍSSIMA e 
deve ser feita com muita atenção. Você pode estar se perguntando o motivo de 
tanta importância, vou exemplificar de maneira prática. A comparação dessa fase 
inicial é a mesma de uma obra de uma casa, pois, uma vez que for mal dimen-
sionada a estrutura, podemos ter sérios e irreversíveis problemas no futuro. A 
seguir, seguem dois exemplos de uma análise a partir de uma Descrição Textual 
Narrativa.
MODELO RELACIONAL
Reprodução proibida. A
rt. 184 do Código Penal e Lei 9.610 de 19 de fevereiro de 1998.
IIU N I D A D E50
Exemplo 1:
O atendente solicita os dados pessoais do cliente
no momento do seu cadastro, aproveita, inclusive, para
perguntar quais são os gêneros de sua preferência.
Funcionário Cliente Gênero
Figura 7: Exemplo 1 de Descrição Textual Narrativa
Fonte: os autores.
Analisando o Exemplo 1 (Figura 7), temos como substantivos atendente, que 
podemos nomear como funcionário e temos, também, as palavras cliente e gêne-
ros. Com isso, para a implementação do que fora relatado e do que é relevante, 
teremos a necessidade de criação de 3 entidades, sendo elas: FUNCIONÁRIO, 
CLIENTE E GÊNERO.
Exemplo 2:
O nosso cliente entra aqui na loja e escolhe o �lme
que deseja ver, os �lmes estão separados nas prateleiras
pelo gênero ao qual eles pertencem, facilitando assim a
sua localização
Cliente Filme Gênero
Figura 8: Exemplo 2 de Descrição Textual Narrativa
Fonte: os autores.
Introdução à Modelagem
Re
pr
od
uç
ão
 p
ro
ib
id
a.
 A
rt
. 1
84
 d
o 
Có
di
go
 P

Outros materiais