Logo Passei Direto
Buscar

UNIDADE 4 - INTEGRACAO E ESCALABILIDADE/FOCUS FACULDADE

Unidade 4 sobre Integração e Escalabilidade em bancos de dados NoSQL; aborda escalabilidade horizontal e vertical, consistência e disponibilidade, integração com Big Data, casos de uso, desafios e futuro (tecnologias emergentes e integração com IA), além de legenda de ícones e autoria.

Material
páginas com resultados encontrados.
páginas com resultados encontrados.

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Escolha uma das opções e acesse esse e outros materiais sem bloqueio. 🤩

Cadastre-se ou realize login

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

BANCOS DE DADOS 
NÃO RELACIONAIS
Unidade 4
Integração e 
escalabilidade 
em NoSQL
CEO 
DAVID LIRA STEPHEN BARROS
Diretora Editorial 
ALESSANDRA FERREIRA
Gerente Editorial 
LAURA KRISTINA FRANCO DOS SANTOS
Projeto Gráfico 
TIAGO DA ROCHA
Autoria 
JÉSSICA LAISA DIAS DA SILVA
4 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
A
U
TO
RI
A
Jéssica Laisa Dias da Silva
Olá, possuo graduação em Sistema da Informação e 
Mestrado em Sistema e Computação na UFRN. Tenho experiência 
na área de Informática na educação, com ênfase em Mineração 
de Dados Educacionais, como também atuo no estímulo dos 
jovens e crianças no estudo da programação. Realizo trabalhos 
e pesquisas voltados ao universo dos jogos digitais inseridos no 
contexto educacional, como incentivo deles no ensino dos jovens 
e aos professores. Atualmente realizo pesquisas no contexto de 
disseminação do pensamento computacional, para crianças e 
jovens. As minhas áreas de interesse são: Educação, Engenharia 
de software, Mineração de dados, Pensamento computacional, 
Jogos digitais educativos e Gerenciamento de projeto. Sou 
apaixonada pelo que faço e adoro transmitir minha experiência 
de vida àqueles que estão iniciando em suas profissões. Por isso 
fui convidada pela Editora Telesapiens a integrar seu elenco de 
autores independentes. Estou muito feliz em poder ajudar você 
nesta fase de muito estudo e trabalho. Conte comigo!
5BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
ÍC
O
N
ES
Esses ícones aparecerão em sua trilha de aprendizagem nos seguintes casos:
OBJETIVO
No início do 
desenvolvimento 
de uma nova 
competência. DEFINIÇÃO
Caso haja a 
necessidade de 
apresentar um novo 
conceito.
NOTA
Quando são 
necessárias 
observações ou 
complementações. IMPORTANTE
Se as observações 
escritas tiverem que 
ser priorizadas.
EXPLICANDO 
MELHOR
Se algo precisar ser 
melhor explicado ou 
detalhado. VOCÊ SABIA?
Se existirem 
curiosidades e 
indagações lúdicas 
sobre o tema em 
estudo.
SAIBA MAIS
Existência de 
textos, referências 
bibliográficas e links 
para aprofundar seu 
conhecimento.
ACESSE
Se for preciso acessar 
sites para fazer 
downloads, assistir 
vídeos, ler textos ou 
ouvir podcasts. 
REFLITA
Se houver a 
necessidade de 
chamar a atenção 
sobre algo a 
ser refletido ou 
discutido.
RESUMINDO
Quando for preciso 
fazer um resumo 
cumulativo das últimas 
abordagens.
ATIVIDADES
Quando alguma 
atividade de 
autoaprendizagem 
for aplicada. TESTANDO
Quando uma 
competência é 
concluída e questões 
são explicadas.
6 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
SU
M
Á
RI
O
Escalabilidade horizontal e vertical em NoSQL ...................... 9
Entendendo a necessidade de escalabilidade em bancos de dados 
NoSQL .................................................................................................................... 9
Estratégias de escalabilidade horizontal em NoSQL................................... 13
 Abordagens de escalabilidade vertical em NoSQL ..................................... 16
Práticas de gerenciamento para manter a escalabilidade em 
bancos de dados NoSQL ...................................................................18
Consistência e disponibilidade em NoSQL ........................... 24
Modelos de consistência em bancos de dados NoSQL ............................. 24
Disponibilidade em sistemas NoSQL .............................................................27
Desafios de consistência e disponibilidade no NoSQL .............................. 29
Melhores práticas e estratégias de implementação .................... 33
Integração de bd NoSQL com big data e análise de dados .. 37
Fundamentos da integração NoSQL e Big Data ........................................... 37
Arquiteturas de integração: conectando NoSQL e ecossistemas de Big 
Data ......................................................................................................................39
Casos de uso e aplicações práticas ................................................................44
Desafios e melhores práticas na integração de NoSQL com Big 
Data .......................................................................................................48
Futuro dos bancos de dados não relacionais ....................... 53
Tecnologias emergentes em bancos de dados não relacionais ............... 53
Integração com Inteligência Artificial e aprendizado de máquina............ 55
Desafios e soluções em escalabilidade e desempenho ............................. 59
Futuro dos bancos de dados não relacionais: previsões e 
direções ................................................................................................62
7BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
A
PR
ES
EN
TA
ÇÃ
O
Você sabia que a área de Integração e Escalabilidade 
em Bancos de Dados NoSQL é uma das mais demandadas na 
indústria da tecnologia da informação, e será responsável pela 
geração de mais de 500.000 empregos nos próximos cinco anos? 
Isso mesmo. A área de Gerenciamento e Otimização de Bancos 
de Dados NoSQL faz parte da cadeia de valor de dados de uma 
empresa. Sua principal responsabilidade é garantir que os 
sistemas de armazenamento e processamento de dados sejam 
não apenas eficientes e robustos, mas também capazes de se 
adaptar e escalar de acordo com as necessidades em constante 
mudança do ambiente de negócios. Isso envolve a implementação 
de soluções que possam lidar com grandes volumes de dados não 
estruturados, garantir a disponibilidade constante desses dados 
e integrar-se perfeitamente com outras tecnologias emergentes 
como Big Data, Inteligência Artificial e Aprendizado de Máquina. 
Com o aumento exponencial dos dados gerados diariamente 
e a crescente necessidade de análises rápidas e precisas, a 
habilidade de gerenciar e escalar bancos de dados NoSQL tornou-
se uma competência crítica e altamente valorizada no mercado de 
trabalho. Ao longo desta unidade letiva, você vai mergulhar nesse 
universo, explorando desde os fundamentos da escalabilidade e 
consistência em NoSQL, até as tendências futuras e emergentes no 
campo dos bancos de dados não relacionais. Entendeu? Prepare-
se para uma jornada educativa profunda e enriquecedora!
8 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
O
BJ
ET
IV
O
S
Olá. Seja muito bem-vindo à Unidade 4. Nosso objetivo 
é auxiliar você no desenvolvimento das seguintes competências 
profissionais até o término desta etapa de estudos:
 • Planejar e gerenciar a escalabilidade de bancos de 
dados NoSQL.
 • Garantir consistência e disponibilidade em sistemas 
NoSQL.
 • Integrar bancos de dados NoSQL com plataformas de 
Big Data.
 • Identificar as tendências e evoluções em bancos de 
dados não relacionais.
9BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Escalabilidade horizontal e 
vertical em NoSQL
OBJETIVO
Ao término deste capítulo, você será capaz de 
entender como funciona a escalabilidade em 
bancos de dados NoSQL. Isso será fundamental 
para o exercício de sua profissão na área 
de Gerenciamento de Dados e Sistemas de 
Informação. As pessoas que tentaram lidar 
com bancos de dados NoSQL sem a devida 
instrução tiveram problemas ao dimensionar suas 
infraestruturas e manter a disponibilidade de 
dados. E então? Motivado para desenvolver essa 
competência? Vamos lá!
Entendendo a necessidade de 
escalabilidade em bancos de 
dados NoSQL
O entendimento da necessidade de escalabilidade em 
bancos de dados NoSQL é fundamental para o planejamento e 
a gestão eficazes desses sistemas. À medida que as organizações 
enfrentam volumes progressivamente maiores de dados 
e demandas de acesso rápido e confiável a esses dados, a 
escalabilidade torna-se uma preocupação crítica. Nesse contexto, 
os bancos de dados NoSQL desempenham um papel significativo, 
pois são projetados para lidar com cargas de trabalho variáveis e 
distribuídas.
A escalabilidade se refere à capacidade de um sistema ou 
banco de dadosrespeito ao manejo de grandes volumes 
de dados não estruturados e semiestruturados. Com a evolução 
para uma era de dados sucessivamente mais complexos, os 
avanços em bancos de dados não relacionais estão redefinindo 
padrões em eficiência, segurança e integração.
No aspecto da eficiência, novas abordagens, como os 
sistemas baseados em grafos, têm sido desenvolvidas para 
proporcionar análises mais rápidas e insights aprofundados. 
54 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
A otimização no armazenamento e na recuperação de 
dados permite operações de leitura e gravação mais eficazes, 
cruciais para aplicações de processamento em tempo real.
A segurança também recebeu atenção especial, com a 
incorporação de recursos avançados de criptografia e autenticação 
para proteger contra acessos não autorizados e ataques 
cibernéticos. Técnicas como fragmentação de dados e replicação 
em vários nós asseguram a integridade e disponibilidade dos 
dados.
Além disso, uma característica revolucionária desses 
bancos de dados é a capacidade de integração com outras tecno-
logias emergentes, como plataformas de Big Data, sistemas de 
Inteligência Artificial e soluções de Aprendizado de Máquina. Essa 
sinergia permite usos inovadores dos dados, desde alimentar 
algoritmos de IA até análise preditiva e tomada de decisão basea-
da em dados.
EXEMPLO: A tecnologia de banco de dados em grafos 
está emergindo como uma solução poderosa devido à 
sua habilidade única de lidar com relações complexas 
e interconectadas entre dados. Isso se torna ainda 
mais relevante em um mundo em que os dados estão 
mais interligados e a necessidade de compreender 
essas conexões em profundidade é crítica para muitas 
aplicações.
Os desafios dessa tecnologia incluem a necessidade de 
desenvolver consultas e algoritmos mais eficientes para 
lidar com grandes redes de dados. Inovações contínuas 
nesta área estão levando ao desenvolvimento de novas 
técnicas para otimizar o desempenho, a escalabilidade e 
a flexibilidade dos bancos de dados baseados em grafos.
55BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Essas tecnologias emergentes em bancos de dados não 
relacionais estão redefinindo o potencial de gerenciamento 
e análise de dados. Profissionais de TI e empresas precisam se 
manter atualizados para maximizar as oportunidades oferecidas 
por esses sistemas avançados, enfrentando os desafios de dados 
modernos e pavimentando o caminho para futuras inovações.
Integração com Inteligência 
Artificial e aprendizado de 
máquina
A integração da Inteligência Artificial (IA) e Aprendizado de 
Máquina (Machine Learning - ML) tem se tornado um campo de 
rápido desenvolvimento e aplicação prática em diversos setores. 
Essa integração representa a convergência de duas tecnologias 
poderosas, cada uma complementando a outra para criar sistemas 
mais eficientes e inteligentes.
A Inteligência Artificial, em seu sentido mais amplo, 
refere-se à capacidade de uma máquina de imitar a inteligência 
humana. Isso inclui a capacidade de aprender, raciocinar, resolver 
problemas, perceber, linguagem natural e até ter consciência do 
próprio ambiente. A IA pode ser programada para realizar tarefas 
específicas e complexas, permitindo que as máquinas operem 
com um grau de autonomia.
Já o Aprendizado de Máquina, um subconjunto da IA, envolve 
o desenvolvimento de algoritmos que permitem que as máquinas 
aprendam a partir de dados e melhorem seu desempenho ao 
longo do tempo sem serem explicitamente programadas para 
isso. Isso significa que, ao invés de codificar regras específicas para 
cada tarefa, os algoritmos de ML identificam padrões nos dados e 
fazem previsões ou tomam decisões com base nesses padrões.
56 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
A integração dessas duas tecnologias está revolucionando 
diversas áreas. Na saúde, por exemplo, algoritmos de ML estão 
sendo utilizados para diagnosticar doenças com precisão 
gradativamente maior, analisando imagens médicas ou dados 
genéticos. 
No setor financeiro, a IA e o ML estão ajudando a detectar 
fraudes e automatizar processos de tomada de decisão em 
investimentos. No campo da automação, veículos autônomos 
estão se tornando uma realidade graças à combinação de IA e ML, 
que permite que os veículos aprendam e se adaptem a diferentes 
ambientes de trânsito.
Um dos aspectos mais empolgantes dessa integração 
é a capacidade de autoaprendizado e adaptação. Os sistemas 
que utilizam IAM e ML podem não apenas executar tarefas, mas 
também melhorar continuamente seu desempenho ao aprender 
com novos dados e experiências. Isso leva a uma melhoria 
constante e à criação de sistemas que podem lidar com situações 
cada vez mais complexas.
No entanto, também existem desafios significativos. 
Questões de privacidade e segurança dos dados são primordiais, 
pois os sistemas de IA e ML muitas vezes requerem grandes 
quantidades de dados para treinamento. Além disso, há 
preocupações sobre a transparência e explicabilidade desses 
sistemas, especialmente em áreas críticas como a saúde e a justiça.
Em resumo, a integração de IA e ML está abrindo novos 
horizontes e criando oportunidades inovadoras em praticamente 
todos os setores. Ao mesmo tempo, impõe desafios éticos e práticos 
que devem ser abordados para garantir que seu desenvolvimento 
e aplicação sejam benéficos e responsáveis.
57BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Sobre a integração entre Inteligência Artificial e Aprendiza-
do de Máquina destacamos algumas áreas:
 • Autoaprendizado melhorado - você sabia que um dos 
aspectos mais fascinantes da combinação de IA e ML é 
a capacidade de autoaprendizado? Sistemas integrados 
com essas tecnologias não apenas realizam tarefas 
designadas, mas também aprimoram continuamente 
suas habilidades por meio da aprendizagem contínua. 
Isso é especialmente evidente em sistemas como 
assistentes virtuais, que se tornam mais eficientes 
e personalizados à medida que interagem com os 
usuários.
 • Revolução na saúde - você sabia que a integração 
de IA e ML está revolucionando o campo da saúde? 
Algoritmos avançados estão sendo usados para análise 
de dados médicos, desde diagnósticos mais precisos 
até a personalização de tratamentos para pacientes. 
Por exemplo, algumas IA podem analisar imagens 
de ressonância magnética para identificar sinais de 
doenças como câncer, muitas vezes com maior precisão 
do que humanos.
 • Impacto no setor financeiro - você sabia que a IA e o ML 
estão transformando o setor financeiro? Eles são usados 
para detectar padrões em transações que podem 
indicar fraude, além de automatizar o trading de ações. 
Algoritmos de ML podem analisar grandes volumes de 
dados de mercado para identificar tendências e fazer 
previsões, muitas vezes superando analistas humanos.
 • Desafios éticos e de privacidade - você sabia que, 
apesar dos avanços, a integração de IA e ML levanta 
importantes questões éticas e de privacidade? O uso 
dessas tecnologias implica em lidar com grandes 
58 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
volumes de dados pessoais, levantando preocupações 
sobre como esses dados são coletados, armazenados e 
utilizados.
 • Veículos autônomos - você sabia que os veículos 
autônomos são um dos exemplos mais notáveis da 
aplicação prática dessa integração? Eles utilizam 
complexos sistemas de IA e ML para processar 
informações de sensores, GPS e outros veículos para 
navegar com segurança, aprendendo e se adaptando a 
novos ambientes e situações de trânsito.
 • Tradução automática - você sabia que os avanços em IA 
e ML levaram a melhorias significativas em ferramentas 
de tradução automática? Essas tecnologias permitem 
que máquinas aprendam diferentes línguas e contextos, 
proporcionando traduções mais precisas e naturais.
 • Desafios de transparência - você sabia que um 
dos maiores desafios na integração de IA e ML é a 
transparência dos algoritmos? Muitas vezes, mesmo 
os desenvolvedores desses sistemastêm dificuldades 
em explicar como certas decisões são tomadas, o que é 
particularmente problemático em áreas críticas como a 
justiça criminal e a tomada de decisões médicas.
Esses pontos destacam tanto as incríveis oportunidades 
quanto os desafios significativos apresentados pela integração 
da Inteligência Artificial e do Aprendizado de Máquina em nossa 
sociedade.
59BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Desafios e soluções em 
escalabilidade e desempenho
Atualmente, um dos maiores desafios enfrentados pelos 
bancos de dados não relacionais é a escalabilidade e o desem-
penho. Esses sistemas foram inicialmente projetados para oferecer 
flexibilidade e eficiência no tratamento de grandes volumes de 
dados, mas à medida que as demandas de dados aumentam, 
surgem novos desafios.
A escalabilidade é crucial para bancos de dados não 
relacionais, especialmente em aplicações que necessitam de 
rápida expansão ou redução de recursos.
Tradicionalmente, esses bancos de dados são conhecidos 
por sua escalabilidade horizontal, ou seja, a capacidade de 
aumentar a capacidade por meio da adição de mais nós ao 
sistema. No entanto, essa abordagem pode levar a problemas 
de gerenciamento e eficiência quando o número de nós se torna 
muito grande (Redmond; Wilson, 2012). 
Um dos principais desafios relacionados à escalabilidade 
é a consistência dos dados. Em um ambiente distribuído, garantir 
que todas as cópias dos dados estejam sincronizadas é complexo. 
Esse desafio é frequentemente abordado pelo teorema 
CAP, que afirma que é impossível para um sistema de banco 
de dados distribuído garantir simultaneamente consistência, 
disponibilidade e tolerância a partições. Muitos bancos de dados 
não relacionais optam por comprometer a consistência em favor 
da disponibilidade e da tolerância a partições.
Além disso, o desempenho pode ser afetado pela latência, 
especialmente em sistemas distribuídos globalmente. A latência 
pode ser um obstáculo significativo para aplicações que exigem 
60 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
respostas em tempo real. Para lidar com isso, algumas soluções 
envolvem a otimização de algoritmos de roteamento de dados e o 
uso de técnicas de cache avançadas.
Para superar esses desafios, novas abordagens e tecnolo-
gias estão sendo desenvolvidas. Uma dessas abordagens é o uso 
de bancos de dados não relacionais em memória. Esses sistemas 
armazenam dados na memória RAM, proporcionando tempos de 
resposta muito rápidos. Por exemplo, o Redis, um banco de dados 
em memória, é amplamente usado para aplicações que necessi-
tam de alta performance.
Outra solução inovadora é a utilização de algoritmos 
de sharding inteligentes. O sharding é o processo de dividir e 
distribuir dados entre vários nós para melhorar a escalabilidade 
e o desempenho. Algoritmos de sharding inteligentes podem 
distribuir os dados de maneira mais eficiente, reduzindo a carga 
em nós individuais e melhorando o desempenho geral do sistema.
Também há um foco crescente no desenvolvimento de 
soluções de autogerenciamento, em que os sistemas de bancos 
de dados não relacionais podem se adaptar dinamicamente às 
mudanças nas cargas de trabalho. Isso inclui o ajuste automático 
de recursos e a redistribuição de dados entre nós, o que pode 
ajudar a manter um desempenho ótimo sem intervenção manual.
Além disso, muitos bancos de dados não relacionais 
estão incorporando funcionalidades de aprendizado de máquina 
para prever padrões de acesso aos dados e otimizar a alocação 
de recursos. Essas técnicas podem ajudar a antecipar picos de 
demanda e ajustar a infraestrutura de acordo.
O crescimento da computação em nuvem também oferece 
novas possibilidades para os bancos de dados não relacionais. 
Serviços de banco de dados gerenciados na nuvem, como o Amazon 
61BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
DynamoDB e o Google Cloud Bigtable, oferecem escalabilidade 
automática, o que permite que os sistemas se ajustem facilmente 
às necessidades variáveis de carga de trabalho.
Imagem 4.6 - Computação em nuvem
Fonte: Freepik. 
Outro avanço significativo é a adoção de arquiteturas 
baseadas em microserviços. Em um ambiente de microserviços, 
cada serviço pode usar o tipo de banco de dados mais adequado 
às suas necessidades, o que pode melhorar tanto a escalabilidade 
quanto o desempenho.
62 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Futuro dos bancos de dados não 
relacionais: previsões e direções
À medida que avançamos em um mundo gradualmente 
mais orientado por dados, o campo dos Bancos de Dados Não 
Relacionais está passando por transformações significativas e 
promissoras. 
Olhando para o futuro, podemos vislumbrar várias previ-
sões e direções que indicam para qual lugar essa área está se 
dirigindo e como essas tecnologias continuarão a evoluir para 
atender às crescentes demandas por armazenamento, processa-
mento e análise de dados.
Crescimento Exponencial de Dados Não Estruturados, 
uma das tendências mais notáveis no futuro dos bancos de 
dados não relacionais é o crescimento exponencial dos dados 
não estruturados. Com o advento da Internet das Coisas (IoT), 
mídias sociais, streaming de vídeo e outras fontes de dados não 
tradicionais, a quantidade de informações não estruturadas 
disponíveis está em constante expansão. Isso exigirá bancos de 
dados não relacionais mais poderosos e flexíveis, capazes de lidar 
com uma variedade ainda maior de formatos de dados.
A integração entre bancos de dados não relacionais e 
tecnologias de Inteligência Artificial (IA) e Aprendizado de Máquina 
(ML) continuará a crescer. Essa sinergia permitirá que os sistemas 
de banco de dados se tornem mais inteligentes e capazes de 
oferecer insights ainda mais valiosos. Prevê-se que os bancos de 
dados não relacionais desempenharão um papel fundamental 
no armazenamento e na recuperação de dados utilizados por 
algoritmos de ML e sistemas de IA em rápida evolução.
63BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Por conseguinte, uma tendência emergente é a adoção 
de bancos de dados multimodelo, que permitem armazenar e 
consultar dados em vários formatos, como documentos, gráficos, 
séries temporais e muito mais. 
Essa abordagem oferece maior flexibilidade e eficiência, 
permitindo que os desenvolvedores escolham o modelo de dados 
mais adequado para cada aplicação. Espera-se que essa tendência 
cresça à medida que as necessidades de armazenamento de 
dados se tornem mais diversas.
Com a crescente preocupação com a privacidade dos 
dados e o aumento das regulamentações de proteção de 
dados, os bancos de dados não relacionais se concentrarão em 
aprimorar ainda mais a segurança e a privacidade. Prevê-se que 
novas técnicas de criptografia, gerenciamento de identidade e 
controle de acesso se tornarão padrão, garantindo que os dados 
permaneçam protegidos contra ameaças cibernéticas.
À medida que os bancos de dados não relacionais 
continuam a se desenvolver, veremos um aumento na adoção em 
setores específicos, como saúde, finanças e manufatura. Esses 
setores têm necessidades únicas de gerenciamento de dados e 
estão começando a reconhecer os benefícios da flexibilidade e 
escalabilidade oferecidos por esses sistemas.
64 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
SAIBA MAIS
O termo “NoSQL” não significa “Sem SQL”? Apesar 
de ser comumente associado à ausência de 
linguagem SQL (Structured Query Language), o 
termo “NoSQL” originalmente se refere a “Not Only 
SQL”. Isso significa que os bancos de dados NoSQL 
não excluem necessariamente o uso de SQL, mas 
complementam-no, permitindo o armazenamento 
e a recuperação de dados de formas que vão além 
do modelo relacional tradicional.
Essa abordagem “Not Only SQL” destaca a flexibi-
lidade dos bancos de dados NoSQL, que podem 
lidar com dados não estruturados e semiestrutu-
rados de maneira eficaz, além de oferecer escala-
bilidade horizontal e outras características que se 
tornaram essenciais na eramoderna da compu-
tação e análise de dados. Portanto, quando se 
trata de NoSQL, não significa apenas de rejeitar o 
SQL, mas de expandir o conjunto de ferramentas 
disponíveis para gerenciar uma ampla variedade 
de tipos de dados e cargas de trabalho.
O futuro dos bancos de dados não relacionais é promissor, 
com previsões que apontam para uma integração mais profunda 
com tecnologias de ponta, maior flexibilidade na modelagem de 
dados e um foco renovado na segurança e privacidade dos dados. 
À medida que os dados continuam a desempenhar um 
papel central em todos os aspectos da nossa sociedade, esses 
bancos de dados desempenharão um papel crucial na capacitação 
de empresas e organizações a tirar o máximo proveito do vasto 
oceano de informações disponíveis.
65BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
RESUMINDO
E então? Gostou do que lhe mostramos? Aprendeu 
mesmo tudinho? Agora, só para termos certeza 
de que você realmente entendeu o tema de 
estudo deste capítulo, vamos resumir tudo o que 
vimos. Você deve ter aprendido que o futuro dos 
Bancos de Dados Não Relacionais é uma área 
dinâmica e em constante evolução, marcada por 
inovações e desafios fascinantes. Exploramos as 
“Tecnologias emergentes em bancos de dados 
não relacionais”, aqui, destacamos como novas 
tecnologias estão expandindo as capacidades dos 
bancos de dados não relacionais, permitindo-lhes 
lidar com grandes volumes de dados de forma 
mais eficiente e flexível do que os bancos de 
dados tradicionais. Essas tecnologias emergentes 
não apenas aprimoram o armazenamento e a 
recuperação de dados, mas também introduzem 
novas formas de processamento e análise de 
dados. Em seguida, abordamos a “Integração 
com inteligência artificial e aprendizado de 
máquina”, nessa seção destamos como a IA e o 
ML estão sendo integrados aos bancos de dados 
não relacionais para proporcionar análises mais 
profundas e insights mais significativos a partir dos 
dados armazenados. Vimos exemplos de como 
essa integração está transformando a maneira 
como os dados são utilizados em várias indústrias, 
trazendo uma nova dimensão à gestão e análise 
de dados. No subtítulo 4.3, discutimos os “Desafios 
e soluções em escalabilidade e desempenho”, em 
que compreendemos que, apesar dos avanços, 
os bancos de dados não relacionais enfrentam 
desafios significativos, principalmente relacionados 
à escalabilidade e ao desempenho em ambientes 
de grande escala. Analisamos várias soluções e 
estratégias que estão sendo desenvolvidas para 
superar esses desafios, garantindo que os bancos 
de dados não relacionais possam continuar a
66 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
evoluir e a atender às crescentes demandas do 
mundo digital. Finalmente, olhamos para o “Futuro 
dos bancos de dados não relacionais: previsões e 
direções”, nessa parte do capítulo oferecemos uma 
visão sobre o que podemos esperar no futuro, 
incluindo inovações em potencial e as direções 
que os bancos de dados não relacionais podem 
tomar. Ficou claro que, embora existam desafios, 
o futuro é promissor, com avanços contínuos que 
moldarão a forma como interagimos e utilizamos 
dados em uma variedade de contextos. Esperamos 
que este capítulo lhe tenha proporcionado uma 
compreensão sólida do estado atual e do futuro 
potencial dos bancos de dados não relacionais, 
bem como das tecnologias emergentes, desafios e 
oportunidades associadas a eles. Com essa base, 
você está agora mais preparado para navegar e 
aproveitar as possibilidades que essas tecnologias 
oferecem.
67BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
LAKSHMAN, A.; MALIK, P. Cassandra: A Decentralized Structured 
Storage System. SIGOPS Oper, v. 44, n. 2, p. 35-40. Abr., 2010. 
Disponível em: https://dl.acm.org/doi/10.1145/1773912.1773922. 
Acesso em: 18 jan. 2024.
REDMOND, E.; WILSON, J. Seven Databases in Seven Weeks: A 
Guide to Modern Databases and the NoSQL Movement. New York: 
Pragmatic Bookshelf, 2012.
SADALAGE, P. J.; FOWLER, M. NoSQL Distilled: A Brief Guide to 
the Emerging World of Polyglot Persistence. Sebastopol: Addison-
Wesley Professional, 2012.
VOGELS, W. Eventually Consistent: Building reliable distributed 
systems at a worldwide scale demands trade-offs?between 
consistency and availability. ACM Queue, v. 6, n. 6, p. 14-19, 2008. 
Disponível em: https://dl.acm.org/doi/10.1145/1466443.1466448. 
Acesso em 18 jan. 2024.
RE
FE
RÊ
N
CI
A
S
https://dl.acm.org/doi/10.1145/1773912.1773922
https://dl.acm.org/doi/10.1145/1466443.1466448
	_Hlk156733908
	_Hlk156735958
	Escalabilidade horizontal e vertical em NoSQL
	Entendendo a necessidade de escalabilidade em bancos de dados NoSQL
	Estratégias de escalabilidade horizontal em NoSQL
	 Abordagens de escalabilidade vertical em NoSQL
	Práticas de gerenciamento para manter a escalabilidade em bancos de dados NoSQL
	Consistência e disponibilidade em NoSQL 
	Modelos de consistência em bancos de dados NoSQL
	Disponibilidade em sistemas NoSQL
	Desafios de consistência e disponibilidade no NoSQL 
	Melhores práticas e estratégias de implementação
	Integração de bd NoSQL com big data e análise de dados
	Fundamentos da integração NoSQL e Big Data
	Arquiteturas de integração: conectando NoSQL e ecossistemas de Big Data
	Casos de uso e aplicações práticas
	Desafios e melhores práticas na integração de NoSQL com Big Data
	Futuro dos bancos de dados não relacionais
	Tecnologias emergentes em bancos de dados não relacionais
	Integração com Inteligência Artificial e aprendizado de máquina
	Desafios e soluções em escalabilidade e desempenho
	Futuro dos bancos de dados não relacionais: previsões e direçõesde lidar com um aumento no volume de dados e 
tráfego sem comprometer o desempenho ou a disponibilidade. 
Em bancos de dados NoSQL, essa escalabilidade pode ser 
10 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
alcançada de duas maneiras principais: escalabilidade horizontal 
e escalabilidade vertical.
A escalabilidade horizontal envolve a adição de mais 
servidores ou nós ao cluster de banco de dados. Isso permite que o 
sistema distribua a carga entre os nós, distribuindo assim a carga 
e aumentando a capacidade de armazenamento e processamento 
de dados. É uma abordagem mais flexível, pois os recursos podem 
ser expandidos conforme a demanda aumenta.
Por outro lado, a escalabilidade vertical envolve a adição 
de recursos (CPU, RAM, armazenamento) a um único nó do banco 
de dados. Isso permite que o nó lide com mais carga, tornando-o 
mais poderoso. No entanto, essa abordagem tem limites físicos e 
pode se tornar menos viável em casos de crescimento exponencial 
dos dados.
A compreensão da necessidade de escalabilidade em 
bancos de dados NoSQL envolve a análise cuidadosa das demandas 
de tráfego, da quantidade de dados a serem armazenados e do 
desempenho esperado. É importante equilibrar as vantagens da 
escalabilidade horizontal com os custos envolvidos na expansão 
do cluster e a complexidade de gerenciamento resultante. A 
escolha entre escalabilidade horizontal e vertical dependerá das 
necessidades específicas de cada aplicação e da estratégia de 
dimensionamento adequada.
Em resumo, a necessidade de escalabilidade em bancos 
de dados NoSQL é vital para atender às crescentes demandas de 
dados e garantir um desempenho consistente. Compreender as 
diferentes abordagens de escalabilidade disponíveis permitirá 
que as organizações tomem decisões informadas ao projetar 
e gerenciar sistemas NoSQL que atendam eficazmente às suas 
necessidades de armazenamento e recuperação de dados.
11BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Podemos destacar, aqui estão alguns pontos importantes 
a serem considerados sobre a escalabilidade em bancos de dados 
NoSQL:
 • Crescimento exponencial de dados - com a explosão 
de dados gerados por aplicativos e dispositivos, 
a capacidade de escalabilidade tornou-se crucial 
para lidar com o aumento contínuo de volume e 
complexidade dos dados.
 • Escalabilidade horizontal vs. Vertical - a escolha entre 
escalabilidade horizontal (adicionando nós) e vertical 
(aumentando recursos em um nó) depende das 
necessidades específicas do sistema, custos e limitações 
técnicas. É importante entender quando e como aplicar 
cada abordagem.
 • Modelo de dados flexível - bancos de dados NoSQL 
oferecem flexibilidade no esquema de dados, 
permitindo acomodar novos tipos de dados sem a 
necessidade de uma estrutura rígida. Isso facilita a 
adaptação a mudanças nos requisitos de aplicativos.
 • Alta disponibilidade - escalabilidade está intimamente 
ligada à alta disponibilidade. Bancos de dados NoSQL 
muitas vezes são usados em sistemas que exigem 
disponibilidade constante, e a escalabilidade ajuda a 
evitar interrupções e garantir que os dados estejam 
sempre acessíveis.
 • Consistência x Disponibilidade x Tolerância a Partições 
(CAP) - bancos de dados NoSQL geralmente seguem 
o teorema CAP, que descreve o equilíbrio entre 
consistência, disponibilidade e tolerância a partições. É 
importante compreender como as diferentes soluções 
NoSQL abordam esse trade-off.
12 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
 • Distribuição geográfica - à medida que as empresas se 
expandem globalmente, a distribuição geográfica dos 
dados se torna importante. Bancos de dados NoSQL são 
projetados para suportar a replicação e a distribuição 
de dados em vários locais.
 • Gerenciamento de cluster - a escalabilidade horizontal 
muitas vezes envolve a criação de clusters de servidores. 
O gerenciamento adequado desses clusters é essencial 
para garantir a integridade e o desempenho do sistema.
 • Monitoramento e dimensionamento automático - 
ferramentas de monitoramento e dimensionamento 
automático são essenciais para manter um ambiente 
NoSQL escalável. Isso permite que o sistema se ajuste 
dinamicamente às mudanças na carga de trabalho.
 • Integração com tecnologias relacionadas - a integração 
de bancos de dados NoSQL com outras tecnologias, 
como Big Data e análise de dados, é fundamental 
para criar soluções abrangentes que atendam às 
necessidades de negócios modernas.
 • Evolução tecnológica - o campo de bancos de dados 
NoSQL está em constante evolução, com novas 
tecnologias e soluções surgindo regularmente. É 
importante estar atualizado sobre as tendências e 
inovações nesse espaço.
Esses são pontos fundamentais que você possa explorar 
ao escrever sobre escalabilidade em bancos de dados NoSQL. 
Cada um deles oferece insights valiosos sobre os desafios e 
oportunidades associados à gestão de sistemas NoSQL em um 
mundo de dados em constante expansão.
13BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Estratégias de escalabilidade 
horizontal em NoSQL
A escalabilidade horizontal, também conhecida como 
“scaling out”, é uma estratégia fundamental em bancos de dados 
NoSQL para lidar com o aumento de demanda de dados e tráfego. 
Essa abordagem envolve a expansão do sistema distribuindo a carga 
entre múltiplos servidores ou nós. Abaixo, exploraremos algumas 
das principais estratégias utilizadas na escalabilidade horizontal em 
bancos de dados NoSQL e contextualizaremos seu uso.
O sharding é uma técnica comum para distribuir os dados 
de um banco de dados NoSQL em vários servidores. Cada servidor 
(ou shard) contém apenas um subconjunto dos dados, o que 
permite que a carga de trabalho seja distribuída de forma mais 
equitativa. Isso é especialmente benéfico em ambientes em que o 
volume de dados é enorme e não pode ser mantido em um único 
servidor.
EXEMPLO: Imagine uma empresa de comércio eletrônico 
com milhões de produtos em seu catálogo. O sharding 
poderia ser usado para dividir os produtos em categorias 
(eletrônicos, roupas, alimentos) e distribuí-los em 
servidores separados. Isso reduziria a carga de cada 
servidor e permitiria que a empresa lidasse com um 
grande número de consultas de pesquisa de produtos 
simultaneamente.
A replicação envolve a criação de cópias dos dados em 
vários servidores para garantir alta disponibilidade e tolerância a 
falhas. Cada réplica é sincronizada com as outras para manter a 
consistência dos dados.
14 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
EXEMPLO: Em um aplicativo de rede social, a replicação 
pode ser usada para garantir que as mensagens e os 
dados do perfil do usuário estejam disponíveis em 
diferentes servidores geograficamente distribuídos. Isso 
reduz a latência para os usuários e garante que os dados 
estejam acessíveis, mesmo em caso de falha em um dos 
servidores.
Algumas bases de dados NoSQL oferecem recursos de 
particionamento automático, nos quais o sistema gerencia a 
distribuição de dados entre os servidores de forma transparente 
para o usuário. Isso simplifica o processo de escalabilidade 
horizontal, pois os desenvolvedores não precisam se preocupar 
com a alocação manual de dados em shards.
Uma empresa de streaming de música pode usar o 
particionamento automático para dividir sua vasta biblioteca 
de músicas entre servidores. À medida que novas músicas são 
adicionadas, o sistema automaticamente distribui essas músicas 
entre os servidores existentes, permitindo um escalonamento 
sem interrupções.
Para alguns cenários, como sistemas distribuídos de grande 
escala, pode ser aceitável abrir mão da consistência imediata dos 
dados em troca de um desempenho superior. Nesses casos, os 
bancos de dados NoSQL podem adotar modelos de consistência 
eventual, em que os dados podem ser lidos antes que todas as 
réplicas estejam atualizadas.
Em um aplicativo de análise de big data, em que várias fontes 
de dados estão constantemente sendo agregadas, a consistência 
eventualpode ser suficiente. Os resultados da análise podem ser 
atualizados gradualmente à medida que os dados chegam, sem 
esperar por uma consistência imediata em todos os nós.
15BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Desse modo, as estratégias de escalabilidade horizontal 
em bancos de dados NoSQL oferecem flexibilidade e desempenho 
necessários para atender às demandas de sistemas modernos. A 
escolha da estratégia certa depende das necessidades específicas 
de sua aplicação e do equilíbrio entre disponibilidade, consistência 
e desempenho desejado.
EXEMPLO: Imagine uma empresa de comércio eletrônico 
com um vasto catálogo de produtos. O sharding poderia 
ser aplicado para dividir os produtos em categorias, como 
eletrônicos, roupas e alimentos, e alocar cada categoria 
em servidores separados. Isso garante que a consulta de 
produtos seja distribuída de maneira uniforme, evitando 
sobrecargas em um único servidor e garantindo uma 
experiência de compra rápida e eficiente para os clientes.
Outra estratégia importante na escalabilidade horizontal é 
a replicação. A replicação envolve a criação de cópias dos dados em 
vários servidores, com o objetivo de garantir alta disponibilidade 
e tolerância a falhas. Cada réplica é sincronizada com as outras 
para manter a consistência dos dados. Essa abordagem é crucial 
em sistemas que precisam garantir que os dados estejam sempre 
acessíveis, mesmo em caso de falha de um servidor.
IMPORTANTE
É interessante notar que a escalabilidade 
horizontal não se limita apenas a essas duas 
estratégias. Alguns sistemas NoSQL oferecem 
recursos de particionamento automático, nos 
quais o sistema gerencia a distribuição de dados 
de forma transparente para o usuário. Isso 
simplifica o processo de escalabilidade, pois os 
desenvolvedores não precisam se preocupar com 
a alocação manual de dados em shards ou réplicas.
16 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Assim, entender e aplicar as estratégias de escalabilidade 
horizontal em bancos de dados NoSQL é essencial para garantir 
que os sistemas possam se desenvolver e se adaptar às crescentes 
demandas de armazenamento e acesso a dados. Essas estratégias 
oferecem flexibilidade e desempenho necessários para manter 
sistemas modernos em funcionamento de maneira eficaz e 
eficiente.
Imagem 4.1 - A replicação envolve a criação de cópias dos dados em vários servidores, com o 
objetivo de garantir alta disponibilidade e tolerância a falhas
Fonte: Freepik. 
 Abordagens de escalabilidade 
vertical em NoSQL
As abordagens de escalabilidade vertical em bancos de 
dados NoSQL, também conhecidas como “scaling up”, envolvem 
o aumento dos recursos de um único servidor, como CPU, RAM 
e armazenamento, para atender às crescentes demandas de 
desempenho e capacidade de armazenamento. 
17BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Ao contrário da escalabilidade horizontal, que adiciona 
mais servidores ao cluster, a escalabilidade vertical concentra-se 
em tornar um único servidor mais poderoso para lidar com cargas 
de trabalho mais intensivas.
Existem várias maneiras de implementar a escalabilidade 
vertical em bancos de dados NoSQL:
 • Aumento de CPU e RAM - uma abordagem comum é 
aumentar a capacidade de processamento e memória 
do servidor. Isso permite que o servidor execute 
consultas mais complexas e manipule volumes maiores 
de dados em memória, melhorando significativamente 
o desempenho.
 • Aumento de armazenamento - quando a capacidade 
de armazenamento se torna um gargalo, é possível 
adicionar mais discos rígidos ou unidades de 
armazenamento de alto desempenho ao servidor. 
Isso aumenta a capacidade de armazenamento e a 
velocidade de leitura e gravação.
 • Otimização de software - às vezes, a escalabilidade 
vertical pode ser alcançada por meio de otimizações de 
software. Isso envolve o aprimoramento do código do 
banco de dados para usar de forma mais eficiente os 
recursos existentes, como índices, caches e algoritmos 
de consulta.
 • Particionamento de dados inteligente - embora o 
particionamento de dados seja mais comumente 
associado à escalabilidade horizontal, em algumas 
situações, pode ser aplicado de forma inteligente em um 
servidor de banco de dados NoSQL. Isso pode envolver 
a divisão lógica dos dados em partições gerenciáveis, 
mesmo em um servidor verticalmente escalado.
18 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
As abordagens de escalabilidade vertical têm suas 
vantagens e limitações. Elas são adequadas quando se lida 
com cargas de trabalho que podem ser atendidas por um único 
servidor altamente configurado. Essa abordagem é mais simples 
de implementar, requer menos complexidade de gerenciamento 
de cluster e pode ser mais econômica em algumas situações.
No entanto, a escalabilidade vertical tem limitações físicas. 
Há um ponto em que não é mais possível adicionar mais recursos a 
um servidor existente, o que limita o potencial de crescimento. Além 
disso, essa abordagem pode ser menos resiliente a falhas, já que a 
falha de um único servidor pode causar interrupções no serviço.
Em resumo, as abordagens de escalabilidade vertical em 
bancos de dados NoSQL oferecem uma maneira de atender a 
demandas de desempenho e capacidade sem a necessidade de 
dimensionar horizontalmente. A escolha entre escalabilidade 
vertical e horizontal dependerá das necessidades específicas do 
sistema e das limitações de recursos.
Práticas de gerenciamento para 
manter a escalabilidade em bancos de 
dados NoSQL
A escalabilidade é uma característica crítica em bancos de 
dados NoSQL, pois esses sistemas são frequentemente adotados 
em ambientes em que o volume de dados e a demanda de acesso 
são significativos. No entanto, apenas implementar estratégias de 
escalabilidade não é suficiente. É igualmente importante adotar 
práticas de gerenciamento adequadas para manter e otimizar essa 
escalabilidade ao longo do tempo. Abaixo, exploraremos algumas 
das práticas fundamentais para garantir a eficácia contínua da 
escalabilidade em bancos de dados NoSQL.
19BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Um dos pilares do gerenciamento eficaz da escalabilidade 
é o monitoramento contínuo do sistema. Isso envolve a coleta 
de métricas de desempenho, como uso de CPU, utilização de 
memória, taxa de transferência de disco e latência de consulta. 
O monitoramento permite identificar gargalos de desempenho 
e tendências que podem indicar a necessidade de ajustes na 
configuração.
Um dos benefícios da escalabilidade horizontal em 
bancos de dados NoSQL é a capacidade de adicionar ou remover 
servidores conforme necessário. O gerenciamento eficaz da 
escalabilidade envolve a capacidade de redimensionar o cluster de 
forma ágil para atender às flutuações na carga de trabalho. Isso 
pode ser feito manualmente ou automaticamente, dependendo 
das necessidades e da infraestrutura.
Os bancos de dados NoSQL frequentemente oferecem 
uma variedade de configurações que podem ser ajustadas 
para otimizar o desempenho. Isso inclui a definição de índices 
apropriados, a configuração de caches, a alocação de recursos e a 
escolha de políticas de replicação. O gerenciamento eficaz envolve 
a capacidade de entender e ajustar essas configurações conforme 
necessário.
A escalabilidade não deve comprometer a segurança e 
a integridade dos dados. Práticas de gerenciamento adequadas 
incluem a implementação de políticas de backup e recuperação 
robustas para proteger os dados contra perdas acidentais ou 
corrupção. Os procedimentos de backup devem ser testados 
regularmente para garantir que os dados possam ser recuperados 
com eficiência.
20 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
IMPORTANTE
A otimização de consulta desempenha um papel 
fundamental no gerenciamento da escalabilidade. 
Isso envolve a análise das consultas mais 
frequentes e a identificação de maneiras de 
otimizá-las. Índices adequados, estratégias de 
consulta eficazes e ajustes de esquema podem 
melhorarsignificativamente o desempenho do 
banco de dados.
Para manter a escalabilidade, é importante considerar 
o crescimento futuro e planejar a capacidade do sistema 
adequadamente. Isso envolve estimar as futuras demandas de 
armazenamento e processamento de dados e garantir que o 
sistema possa acomodá-las sem interrupções.
Em resumo, as práticas de gerenciamento desempenham 
um papel crucial na manutenção da escalabilidade em bancos de 
dados NoSQL. Monitoramento constante, redimensionamento 
sob demanda, ajustes de configuração, backup e recuperação, 
otimização de consulta e planejamento de capacidade são aspectos 
essenciais desse gerenciamento. Ao adotar essas práticas, as 
organizações podem garantir que seus sistemas NoSQL continuem 
a atender às demandas crescentes de dados e desempenho.
Podemos destacar, aqui estão alguns pontos importantes 
relacionados com a escalabilidade em bancos de dados NoSQL:
 • Explosão de dados - o aumento exponencial na 
quantidade de dados gerados por aplicativos, 
dispositivos e sistemas de IoT tornou a escalabilidade 
uma necessidade premente em bancos de dados. A 
capacidade de expandir eficazmente a infraestrutura 
de armazenamento e processamento é essencial para 
lidar com essa explosão de dados.
21BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
 • Modelos de dados flexíveis - bancos de dados NoSQL 
oferecem esquemas flexíveis que permitem acomodar 
diversos tipos de dados, desde estruturados até 
semiestruturados e não estruturados. Isso é crucial 
para acomodar a variedade de informações geradas 
em ambientes modernos.
 • Tipos de escalabilidade - existem duas abordagens 
principais para a escalabilidade em bancos de dados 
NoSQL: horizontal e vertical. A escalabilidade horizontal 
envolve a adição de mais servidores, enquanto 
a escalabilidade vertical envolve a expansão dos 
recursos de um único servidor. A escolha depende das 
necessidades e dos recursos disponíveis.
 • Consistência, Disponibilidade e Tolerância a Partições 
(Teorema CAP) - bancos de dados NoSQL operam 
sob o Teorema CAP, que descreve o equilíbrio entre 
consistência, disponibilidade e tolerância a partições. É 
fundamental compreender como esses fatores afetam 
o sistema e tomar decisões de design de acordo.
 • Práticas de escalabilidade - além de escolher a abordagem 
de escalabilidade adequada, é importante implementar 
práticas de gerenciamento, monitoramento e ajustes 
de configuração para manter a escalabilidade de forma 
eficaz ao longo do tempo.
 • Replicação e alta disponibilidade - a replicação de 
dados é uma técnica comum para garantir alta 
disponibilidade. As réplicas dos dados são distribuídas 
em vários servidores, garantindo que, em caso de falha, 
os dados permaneçam acessíveis.
 • Distribuição geográfica - à medida que as empresas 
se expandem globalmente, a distribuição geográfica 
22 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
dos dados se torna importante para garantir o acesso 
rápido e eficiente aos dados em diferentes regiões do 
mundo.
 • Integração com Big Data e análise de dados - a 
capacidade de integrar bancos de dados NoSQL com 
tecnologias de Big Data e ferramentas de Análise de 
Dados é essencial para obter insights valiosos a partir 
dos dados armazenados.
 • Manutenção da segurança e integridade dos dados 
- à medida que os sistemas crescem, a segurança e a 
integridade dos dados continuam sendo prioridades 
críticas. Políticas de segurança e práticas de backup e 
recuperação são essenciais.
 • Esses pontos destacam a importância da escalabilidade 
em bancos de dados NoSQL e as considerações 
essenciais ao projetar, implementar e gerenciar esses 
sistemas em um cenário de dados em constante 
expansão.
RESUMINDO
E então? Gostou do que lhe mostramos? Aprendeu 
mesmo tudinho? Agora, só para termos certeza 
de que você realmente entendeu o tema de 
estudo deste capítulo, vamos resumir tudo 
o que vimos. Você deve ter aprendido que a 
escalabilidade em bancos de dados NoSQL é uma 
competência fundamental para profissionais da 
área de Gerenciamento de Dados e Sistemas de 
Informação. Exploramos os principais tópicos 
relacionados a esse tema, começando pela 
compreensão da necessidade de escalabilidade 
em bancos de dados NoSQL. Vimos como o 
aumento exponencial de dados e a demanda por 
acesso rápido têm impulsionado a necessidade de 
sistemas escaláveis. Em seguida, abordamos as
23BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
estratégias de escalabilidade horizontal em 
NoSQL, que envolvem a distribuição da carga 
de trabalho em vários servidores ou nós. Isso é 
fundamental para acomodar grandes volumes de 
dados e garantir o desempenho adequado. Além 
disso, discutimos as abordagens de escalabilidade 
vertical em NoSQL, destacando a importância 
de aumentar os recursos de um único servidor 
para atender às demandas de processamento 
e armazenamento. Finalmente, exploramos as 
práticas de gerenciamento necessárias para 
manter a escalabilidade em bancos de dados 
NoSQL. Isso incluiu o monitoramento contínuo, 
o redimensionamento sob demanda, ajustes de 
configuração, backup e recuperação, otimização 
de consulta e planejamento de capacidade. 
Esperamos que este capítulo tenha fornecido 
uma compreensão sólida sobre a importância 
da escalabilidade em bancos de dados NoSQL 
e as estratégias e práticas necessárias para 
implementá-la de forma eficaz. À medida que você 
avança em sua jornada de aprendizado, esses 
conhecimentos serão cruciais para enfrentar os 
desafios do gerenciamento de dados em ambientes 
modernos e em constante crescimento. Continue a 
explorar e aprimorar suas habilidades nessa área 
emocionante e em constante evolução. Avante!
24 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Consistência e disponibilidade 
em NoSQL 
OBJETIVO
Ao término deste capítulo, você será capaz 
de entender como garantir consistência e 
disponibilidade em sistemas NoSQL. Isso será 
fundamental para o exercício de sua profissão 
na área de Bancos de Dados Não Relacionais. As 
pessoas que tentaram gerenciar a consistência e 
disponibilidade em sistemas NoSQL sem o devido 
conhecimento enfrentaram desafios complexos e, 
muitas vezes, enfrentaram problemas relacionados 
à integridade dos dados e à acessibilidade das 
informações. E então? Motivado para desenvolver 
essa competência essencial? Vamos lá!
Modelos de consistência em 
bancos de dados NoSQL
A compreensão dos fundamentos de consistência 
em sistemas de bancos de dados NoSQL é crucial para o 
desenvolvimento e a manutenção de aplicações robustas e 
eficientes. 
Diferentemente dos bancos de dados relacionais, 
que tradicionalmente seguem o modelo ACID (Atomicidade, 
Consistência, Isolamento e Durabilidade), os bancos de dados 
NoSQL oferecem uma variedade de modelos de consistência que 
podem ser escolhidos com base nas necessidades específicas de 
cada aplicação.
Um dos modelos mais conhecidos no contexto NoSQL 
é a consistência eventual. Esse modelo assegura que, se não 
houver novas atualizações para um determinado item de dados, 
25BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
eventualmente todas as cópias desse item em diferentes nós do 
banco de dados convergiram para o mesmo valor. 
A consistência eventual é ideal para sistemas em que a 
disponibilidade e a tolerância a falhas são prioritárias, mesmo que 
isso signifique que os dados possam não estar completamente 
sincronizados em todos os momentos.
Por outro lado, existe o modelo de consistência forte, 
nele é garantido que qualquer leitura de um dado retornará a 
versão mais recente dele mesmo. Esse modelo é semelhante ao 
comportamento dos bancos de dados relacionais e é adequado 
para aplicações em que a precisão dos dados é crítica. No entanto, 
a consistência forte geralmente implica em uma redução na 
disponibilidade e na tolerância a falhas, uma vez que as operações 
de leitura e escrita requerem uma coordenação mais rígida entre 
os nós.
Além desses, existem outros modelos intermediárioscomo a consistência causal, na qual as operações são vistas por 
todos os nós na mesma ordem causal, e a consistência de sessão, 
na qual um cliente sempre vê suas próprias operações de escrita.
IMPORTANTE
A gestão da consistência em ambientes NoSQL 
varia significativamente em comparação com os 
bancos de dados relacionais. Enquanto os sistemas 
relacionais tendem a enfatizar a integridade dos 
dados e a consistência em todas as operações, os 
sistemas NoSQL oferecem uma abordagem mais 
flexível. 
Essa flexibilidade permite que os desenvolvedores 
escolham o nível de consistência mais adequado para cada parte 
de sua aplicação, equilibrando as necessidades de precisão dos 
dados com as de desempenho e disponibilidade.
26 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Um aspecto fundamental a ser considerado é o Teorema 
CAP, que afirma que é impossível para um sistema de banco 
de dados distribuído garantir simultaneamente a Consistência 
(todos os nós veem os mesmos dados ao mesmo tempo), a 
Disponibilidade (cada solicitação recebe uma resposta sobre se 
foi bem-sucedida ou não) e a Tolerância a Partições (o sistema 
continua a operar apesar de falhas arbitrárias de rede). NoSQL, 
frequentemente, opta por sacrificar a consistência em favor da 
disponibilidade e da tolerância a partições.
A escolha do modelo de consistência em um sistema 
NoSQL deve considerar o tipo de dados armazenados, a natureza 
das operações realizadas e as expectativas dos usuários finais. Por 
exemplo, sistemas que gerenciam dados financeiros ou de saúde 
podem necessitar de uma consistência mais forte, enquanto 
aplicações como redes sociais ou sistemas de análise de dados em 
larga escala podem se beneficiar da flexibilidade oferecida pela 
consistência eventual.
Outro ponto importante é a maneira como as operações 
de leitura e escrita são tratadas. Em sistemas de consistência 
forte, as operações de escrita devem ser confirmadas por uma 
maioria ou todos os nós antes de serem consideradas completas, 
o que pode aumentar a latência. Já em modelos de consistência 
eventual, as escritas podem ser concluídas rapidamente, mas as 
leituras podem não refletir imediatamente essas atualizações.
A replicação de dados também desempenha um papel 
crucial na gestão da consistência em NoSQL. A replicação pode 
ser configurada de diversas maneiras, dependendo do modelo 
de consistência escolhido. Por exemplo, estratégias de replicação 
síncrona são comuns em ambientes que exigem consistência forte, 
enquanto a replicação assíncrona é frequentemente utilizada em 
sistemas com consistência eventual.
27BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
IMPORTANTE
Vale destacar que não existe um “melhor” modelo 
de consistência universalmente aplicável. Cada 
abordagem tem seus prós e contras, e a decisão 
deve ser baseada nas características específicas da 
aplicação e nos requisitos dos usuários.
Disponibilidade em sistemas 
NoSQL
A alta disponibilidade é um dos pilares fundamentais em 
sistemas de bancos de dados NoSQL, crucial para garantir que 
aplicações baseadas em tais sistemas sejam confiáveis, resilientes 
e capazes de fornecer um serviço contínuo. 
Diferentemente dos sistemas tradicionais de bancos 
de dados relacionais, os NoSQL são projetados para operar em 
ambientes distribuídos e escaláveis, em que a disponibilidade é 
uma preocupação central. Vários mecanismos são empregados 
para assegurar essa alta disponibilidade, como a replicação de 
dados, o balanceamento de carga e a tolerância a falhas.
 • Replicação de dados: a replicação é uma técnica 
fundamental em sistemas NoSQL para garantir 
disponibilidade. Ela envolve a criação de cópias 
de dados em múltiplos nós ou locais. Isso garante 
que, mesmo se um nó falhar, as cópias dos dados 
permaneçam acessíveis em outros nós. A replicação 
pode ser síncrona, em que as escritas são confirmadas 
apenas após serem replicadas para todos os nós, ou 
assíncrona, em que as escritas são confirmadas antes 
da replicação estar completa. A replicação assíncrona 
é mais comum em ambientes NoSQL, pois oferece um 
equilíbrio entre disponibilidade e desempenho.
28 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
 • Balanceamento de carga: o balanceamento de carga é 
outro aspecto crucial para manter a alta disponibilidade 
em sistemas NoSQL. Ele distribui as solicitações de 
leitura e escrita uniformemente entre os nós do cluster, 
evitando sobrecargas em nós individuais e garantindo 
que todos os nós contribuam para o processamento 
das solicitações. Isso não só melhora a disponibilidade, 
como também aumenta a eficiência e a escalabilidade 
do sistema.
 • Tolerância a falhas: sistemas NoSQL são projetados 
para serem tolerantes a falhas, o que significa que 
eles continuam operacionais mesmo quando alguns 
componentes falham. Isso é alcançado por meio de 
técnicas como o particionamento de dados (dividindo os 
dados entre vários nós para que a falha de um não afete 
os outros) e mecanismos de detecção e recuperação 
de falhas (como reconstruir automaticamente dados 
perdidos a partir de réplicas).
Além dessas, outras técnicas são igualmente importantes 
para a disponibilidade em sistemas NoSQL. Por exemplo, o uso de 
cache de dados pode melhorar significativamente o desempenho 
das operações de leitura, aliviando a carga nos bancos de dados e 
aumentando a disponibilidade. 
Da mesma forma, estratégias de escalabilidade horizontal, 
que envolvem a adição de mais nós ao sistema para lidar com 
cargas de trabalho crescentes, são fundamentais para manter 
sistemas NoSQL disponíveis e responsivos sob demanda.
É também relevante mencionar o conceito de “design para 
falhas”, que é uma filosofia importante no desenvolvimento de 
sistemas NoSQL. Esse conceito implica na aceitação de que falhas 
são inevitáveis e que o sistema deve ser projetado de forma a 
29BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
minimizar o impacto dessas falhas na disponibilidade geral. Isso 
inclui a implementação de estratégias de redundância, como ter 
múltiplas cópias de dados importantes e garantir que os sistemas 
de backup e recuperação sejam robustos e confiáveis.
A alta disponibilidade nos sistemas NoSQL não é apenas 
uma questão de implementar tecnologias específicas, mas 
também de adotar uma abordagem holística e flexível ao design 
do sistema. 
Isso envolve entender as necessidades específicas 
da aplicação, escolher a estratégia de replicação adequada, 
implementar um balanceamento de carga eficaz e garantir 
que o sistema seja resiliente a falhas e capaz de se recuperar 
rapidamente quando ocorrem.
Em resumo, a disponibilidade em sistemas NoSQL é 
assegurada por uma combinação de técnicas de replicação 
de dados, balanceamento de carga, tolerância a falhas, e uma 
abordagem de design que prioriza a robustez e a resiliência.
Essas técnicas, quando aplicadas de maneira eficaz, 
permitem que os sistemas NoSQL ofereçam um nível de 
disponibilidade que atende às exigências das aplicações 
modernas, que são caracterizadas por grandes volumes de dados, 
necessidades de acesso em tempo real e expectativas de serviço 
ininterrupto.
Desafios de consistência e 
disponibilidade no NoSQL 
A adoção de bancos de dados NoSQL trouxe consigo uma 
série de desafios no que diz respeito à garantia de consistência e 
disponibilidade. Esses desafios são especialmente pronunciados 
devido à natureza distribuída e à flexibilidade dos modelos de 
30 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
dados NoSQL. A seguir, exploraremos esses desafios e como eles 
são superados, recorrendo a estudos de caso e exemplos práticos.
IMPORTANTE
Um dos principais desafios em sistemas NoSQL 
é encontrar o equilíbrio entre consistência e 
disponibilidade. De acordo com o Teorema 
CAP, é impossível para um sistema distribuído 
garantir simultaneamente consistência total, 
disponibilidade e tolerância a partições (Vogels, 
2008).
NoSQL, muitas vezes, opta por sacrificar a consistência 
em favorda disponibilidade e da tolerância a falhas. Isso pode ser 
problemático para aplicações que requerem dados extremamente 
precisos e atualizados.
A consistência eventual, por exemplo, é uma estratégia 
comum em NoSQL. Ela garante que, eventualmente, todas as 
cópias de um item de dados serão consistentes, mas não especifica 
quando isso ocorrerá. Isso pode levar a situações em que os 
usuários veem dados desatualizados, o que pode ser inaceitável 
em certas aplicações críticas (Lakshman, 2010). 
EXEMPLO: Em e-commerce, em que a consistência dos 
dados do inventário é crucial. Um desafio é garantir que os 
usuários vejam a disponibilidade atualizada dos produtos. 
A solução muitas vezes passa por uma abordagem híbrida, 
utilizando NoSQL para operações de alta velocidade e um 
sistema relacional para garantir a consistência crítica dos 
dados.
Outro desafio é a complexidade da replicação de dados. 
Embora essencial para a disponibilidade, a replicação em 
ambientes NoSQL pode ser complexa, especialmente em sistemas 
distribuídos globalmente. Gerenciar a consistência entre réplicas 
31BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
geograficamente dispersas requer soluções sofisticadas e pode 
levar a um aumento na latência.
Um estudo de caso relevante é o do Facebook, que utiliza um 
sistema NoSQL distribuído globalmente. Eles enfrentaram desafios 
significativos na sincronização de dados entre centros de dados 
em diferentes continentes. A solução envolveu a implementação 
de algoritmos avançados de replicação e consistência, garantindo 
que as atualizações de dados sejam propagadas de forma eficiente 
e confiável.
Além disso, sistemas NoSQL enfrentam desafios 
relacionados à tolerância a falhas. Em um ambiente distribuído, 
falhas de nós são comuns e devem ser gerenciadas de maneira 
eficiente para manter a disponibilidade. Isso requer mecanismos 
robustos de detecção de falhas e estratégias de recuperação 
rápida.
EXEMPLO: A Amazon, com seu serviço DynamoDB, um 
banco de dados NoSQL, implementou um sistema em que 
os dados são automaticamente replicados em três locais 
diferentes dentro de uma região da AWS. Isso garante alta 
disponibilidade e recuperação rápida em caso de falhas 
de hardware ou outros problemas.
O balanceamento de carga é outro desafio crítico em 
sistemas NoSQL. Garantir que as solicitações sejam distribuídas 
uniformemente entre os nós para evitar sobrecargas é 
fundamental. No entanto, em sistemas altamente distribuídos e 
com grandes volumes de dados, o balanceamento de carga eficaz 
pode ser complexo.
Serviços de streaming como o Netflix, que utilizam NoSQL 
para gerenciar grandes volumes de dados de usuários, enfrentam 
esse desafio. Eles desenvolveram sistemas sofisticados de 
32 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
balanceamento de carga para distribuir as solicitações de forma 
eficiente entre os servidores, garantindo um serviço de alta 
disponibilidade para seus usuários.
Imagem 4.2 - Serviços de streaming
Fonte: Freepik. 
Outro aspecto desafiador no NoSQL é a questão da 
segurança dos dados, especialmente em relação à replicação e 
ao armazenamento distribuído. A garantia de que os dados estão 
seguros e protegidos em todos os pontos do sistema é complexa, 
mas essencial.
EXEMPLO: Em sistemas bancários que adotaram NoSQL 
para algumas operações. Eles precisam garantir que 
todas as réplicas de dados sejam seguras e estejam 
em conformidade com regulamentações rigorosas de 
segurança e privacidade.
Por fim, a atualização de esquemas de dados em sistemas 
NoSQL é outro desafio. Diferentemente dos bancos de dados 
33BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
relacionais, em que as mudanças de esquema são relativamente 
diretas, em NoSQL, devido à natureza flexível dos esquemas, as 
atualizações podem ser complexas e propensas a erros.
Um exemplo disso pode ser visto em sistemas de 
gerenciamento de conteúdo que utilizam NoSQL. À medida que 
o esquema de dados evolui, a migração de dados antigos para 
o novo esquema pode ser um processo desafiador e requer 
planejamento cuidadoso.
Esses desafios destacam a necessidade de uma aborda-
gem zelosa e considerada na implementação e manutenção de 
sistemas NoSQL. Soluções criativas e o uso de tecnologias avan-
çadas são fundamentais para superar esses obstáculos e garantir 
sistemas eficientes e confiáveis.
Melhores práticas e estratégias de 
implementação
Garantir consistência e disponibilidade em sistemas 
NoSQL requer a adoção de uma série de melhores práticas e 
estratégias meticulosamente planejadas. A natureza flexível 
e escalável dos bancos de dados NoSQL traz desafios únicos, e 
entender como enfrentá-los é fundamental para o sucesso de 
qualquer implementação.
Uma das práticas mais cruciais é a escolha adequada 
do modelo de consistência. Em NoSQL, diferentes modelos de 
consistência, como forte, eventual, de sessão ou causal, oferecem 
trade-offs entre consistência e disponibilidade. 
A decisão deve ser baseada nas necessidades específicas 
da aplicação. Por exemplo, sistemas que lidam com transações 
financeiras podem exigir consistência forte, enquanto aplicações 
34 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
como mídias sociais podem se beneficiar de uma abordagem de 
consistência eventual, privilegiando a disponibilidade.
IMPORTANTE
Outra prática relevante é a replicação de dados. 
Essa é uma maneira eficaz de aumentar a 
disponibilidade e a tolerância a falhas. Criar várias 
cópias dos dados em diferentes nós ou regiões 
geográficas assegura que, mesmo em caso de 
falhas de hardware ou desastres naturais, os dados 
permanecem acessíveis. 
No entanto, a replicação traz desafios relacionados à 
sincronização de dados e pode aumentar a complexidade do 
sistema. É essencial gerenciar essas réplicas de forma eficiente, 
utilizando algoritmos de replicação adequados ao modelo de 
consistência escolhido.
O balanceamento de carga é outra estratégia-chave. 
Distribuir equitativamente as solicitações de dados entre os nós do 
cluster pode evitar gargalos, melhorando assim a disponibilidade e 
o desempenho. Isso é particularmente importante em ambientes 
de alta demanda, em que o balanceamento de carga pode prevenir 
falhas do sistema devido a sobrecargas.
A monitorização e a detecção proativa de falhas também 
são fundamentais. Implementar sistemas de monitorização 
que possam detectar e alertar sobre problemas em tempo real 
permite uma resposta rápida às falhas, minimizando o tempo de 
inatividade e mantendo a alta disponibilidade. Isso pode incluir 
desde a monitorização da saúde dos servidores até a verificação 
da integridade dos dados.
Além disso, uma estratégia eficaz é o planejamento para 
recuperação de desastres. Ter planos de contingência para 
cenários de falhas graves, como backups de dados e estratégias de 
35BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
failover, é essencial para garantir que o sistema possa se recuperar 
rapidamente de desastres inesperados.
A segurança dos dados também deve ser uma prioridade. 
Implementar criptografia, controle de acesso e outras medidas 
de segurança protege os dados contra acessos não autorizados 
e violações, que podem comprometer a disponibilidade e a 
confiabilidade do sistema.
Por fim, é importante considerar a escalabilidade do 
sistema. Sistemas NoSQL são conhecidos por sua capacidade de 
escalar horizontalmente. Planejar a escalabilidade desde o início, 
de modo que o sistema possa se adaptar ao crescimento de dados 
e ao aumento do número de usuários, é crucial para manter a 
disponibilidade a longo prazo.
Implementar essas práticas e estratégias requer um 
planejamento cuidadoso e uma compreensão profunda do 
sistema NoSQL em uso. Uma abordagem bem pensada, que 
leva em conta as características específicas do banco de dados e 
as necessidades da aplicação, pode garantir que os desafios de 
consistência e disponibilidade sejam superados de forma eficaz.
36 BANCOS DE DADOS NÃO RELACIONAISU
ni
da
de
 4
RESUMINDO
E então? Gostou do que lhe mostramos? Aprendeu 
mesmo tudinho? Agora, só para termos certeza 
de que você realmente entendeu o tema de 
estudo deste capítulo, vamos resumir tudo o 
que vimos. Você deve ter aprendido que neste 
capítulo exploramos a competência relacionada 
à “Consistência e disponibilidade em NoSQL” e 
abordamos os seguintes subtítulos: “Modelos 
de consistência em bancos de dados NoSQL” 
em que discutimos os diferentes modelos de 
consistência, como consistência forte, eventual, de 
sessão e causal, destacando suas características e 
aplicações. “Disponibilidade em sistemas NoSQL” 
que nos permitiu entender como os sistemas NoSQL 
garantem alta disponibilidade por meio de técnicas 
como replicação de dados, balanceamento de carga 
e tolerância a falhas. “Desafios de consistência e 
disponibilidade no NoSQL” em que identificamos 
e discutimos desafios comuns enfrentados 
ao garantir consistência e disponibilidade em 
sistemas NoSQL. Além disso, examinamos estudos 
de caso ou exemplos reais que ilustraram esses 
desafios e como foram superados. “Melhores 
práticas e estratégias de implementação” em que 
apresentamos as melhores práticas para garantir 
consistência e disponibilidade em sistemas 
NoSQL, fornecendo orientações e estratégias para 
implementar essas práticas de forma eficaz. Ao 
longo deste capítulo, você teve a oportunidade de 
mergulhar no mundo dos bancos de dados NoSQL, 
compreendendo os fundamentos da consistência, 
disponibilidade e os desafios associados a esses 
sistemas. Esperamos que esse conhecimento 
seja valioso em sua jornada de aprendizado e 
na aplicação prática em contextos relacionados 
a bancos de dados não relacionais. Continue 
explorando e aprimorando suas habilidades nessa 
fascinante área da tecnologia da informação.
37BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Integração de bd NoSQL com 
big data e análise de dados
OBJETIVO
Ao término deste capítulo, você será capaz de 
compreender profundamente o funcionamento 
da integração de bancos de dados NoSQL com 
plataformas de big data. Essa habilidade se revelará 
fundamental para o exercício de sua profissão 
em um cenário de dados em constante evolução. 
Pessoas que tentaram realizar essa integração 
sem o devido conhecimento enfrentaram desafios 
significativos ao lidar com a complexidade e a 
diversidade dessas tecnologias. E então? Motivado 
para desenvolver essa competência? Vamos lá. 
Avante!
Fundamentos da integração 
NoSQL e Big Data
Os bancos de dados NoSQL emergiram como uma solução 
eficaz para lidar com volumes massivos e variados de dados, 
desafiando os limites dos sistemas tradicionais de banco de dados 
relacional. 
Ao contrário dos sistemas relacionais que seguem o 
modelo estrito de tabelas e relações, os bancos de dados NoSQL 
oferecem uma abordagem mais flexível e escalável, essencial para 
o processamento de big data.
Tipos de bancos de dados NoSQL:
 • Chave-valor - esse é o tipo mais simples de NoSQL, 
focado em eficiência e velocidade. Ele armazena dados 
como um conjunto de pares chave-valor. Exemplos 
incluem Redis e DynamoDB. Eles são ideais para 
38 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
cenários em que o acesso rápido e a recuperação de 
dados são cruciais.
 • Documentos - bancos de dados orientados a 
documentos, como MongoDB e CouchDB, armazenam 
dados em documentos (geralmente em JSON ou 
BSON). Eles são adequados para gerenciar dados 
semiestruturados e têm a vantagem de permitir 
estruturas de dados mais complexas.
 • Colunas - esse tipo, exemplificado por Cassandra e 
HBase, é otimizado para leituras e gravações rápidas 
em larga escala e é adequado para analisar grandes 
volumes de dados.
 • Grafos - bancos de dados de grafos, como Neo4j e 
Amazon Neptune, são projetados para armazenar 
e navegar relações. Eles são ideais para dados 
interconectados, como redes sociais ou sistemas de 
recomendação.
Integração com big data, de modo que o big data refere-se 
a conjuntos de dados tão grandes e complexos que os métodos 
tradicionais de processamento de dados são inadequados. Eles 
são caracterizados pelos “3 Vs”: Volume, Variedade e Velocidade. 
Os bancos de dados NoSQL desempenham um papel crucial, 
devido à sua capacidade de gerenciar grandes volumes de dados 
variados e sua habilidade de escalar horizontalmente.
A integração de bancos de dados NoSQL com plataformas 
de Big Data, como Hadoop ou Apache Spark, possibilita o 
processamento eficiente de grandes volumes de dados. Enquanto 
o Hadoop é excelente para processamento batch de grandes 
conjuntos de dados, NoSQL pode fornecer capacidades de leitura/
gravação em tempo real. Essa complementaridade permite que 
39BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
as organizações tirem insights valiosos de seus dados de maneira 
mais eficiente.
Destacamos algumas aplicações, a seguir:
 • MongoDB e Hadoop - a integração entre MongoDB, 
um banco de dados orientado a documentos, e 
Hadoop, uma plataforma de processamento de big 
data, é um exemplo prático dessa complementaridade. 
Essa integração permite que as organizações 
processem e analisem grandes quantidades de dados 
semiestruturados em tempo real.
 • Cassandra e Apache Spark - a combinação do Cassandra, 
um banco de dados NoSQL baseado em colunas, com 
o Apache Spark, conhecido por seu processamento 
rápido e capacidades analíticas, oferece uma solução 
poderosa para análises complexas em larga escala.
A integração de NoSQL e Big Data representa uma evolução 
significativa na maneira como os dados são armazenados, 
processados e analisados. Essa combinação não apenas aborda os 
desafios apresentados pelos grandes volumes de dados variados, 
mas também abre caminho para análises mais profundas e insights 
mais significativos.
Arquiteturas de integração: 
conectando NoSQL e 
ecossistemas de Big Data
No cenário atual de tecnologia da informação, a integração 
de bancos de dados NoSQL com ecossistemas de Big Data, como 
Hadoop e Spark, tem se tornado sucessivamente mais relevante. 
Essa integração é crucial para gerenciar e analisar eficientemente o 
crescente volume de dados gerados diariamente. Vamos explorar 
40 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
as arquiteturas comuns e os padrões de integração envolvidos 
nesse processo.
Assim, para entender a arquitetura de big data, ela é 
caracterizada pela capacidade de processar grandes volumes de 
dados, estruturados ou não, de diversas fontes. As plataformas 
como Hadoop e Spark são projetadas para lidar com esses 
desafios. 
EXEMPLO: O Hadoop utiliza o Hadoop Distributed File 
System (HDFS) para armazenar dados e o MapReduce para 
processá-los. Já o Spark, conhecido por sua velocidade 
e capacidade de processamento em memória, oferece 
uma abordagem mais rápida e eficiente para análises 
complexas.
Dessa forma, o papel dos bancos de dados NoSQL, com 
sua escalabilidade e flexibilidade, complementam as plataformas 
de Big Data ao fornecer uma maneira eficiente de armazenar 
e acessar grandes volumes de dados não estruturados ou 
semiestruturados. Eles são particularmente úteis em cenários em 
que o esquema de dados pode mudar ao longo do tempo ou não 
é bem definido.
Algumas curiosidades fascinantes sobre as arquiteturas 
de integração que conectam bancos de dados NoSQL com 
ecossistemas de Big Data:
 • Escala exponencial - uma das características mais im-
pressionantes das arquiteturas de integração NoSQL e 
Big Data é a capacidade de escalabilidade exponencial. 
Esses sistemas podem acomodar o processamento de 
enormes volumes de dados, tornando-os ideais para 
empresas que lidam com crescimento rápido e impre-
visível.
41BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
 • Diversidade de dados - as arquiteturas de integração são 
projetadas para lidar com uma variedade surpreendente 
de tipos de dados. Desde dados estruturados em 
bancos de dados NoSQL até dados não estruturados em 
plataformas de Big Data, essa combinaçãotecnológica 
oferece flexibilidade incomparável.
 • Processamento em tempo real: uma característica 
empolgante é a capacidade de processamento em 
tempo real. Isso permite que as empresas tomem 
decisões instantâneas com base em insights recentes. 
Imagine a detecção de fraudes em cartões de crédito 
em tempo real ou a personalização de conteúdo em 
sites e aplicativos à medida que os usuários navegam.
 • Análise de streaming de dados - as arquiteturas 
de integração também são usadas para análise 
de streaming de dados. Isso significa que os dados 
podem ser analisados à medida que são gerados, 
permitindo respostas imediatas a eventos em tempo 
real. Um exemplo é a análise de dados de sensores em 
dispositivos IoT.
 • Armazenamento distribuído - muitas dessas arquitetu-
ras utilizam sistemas de armazenamento distribuído, o 
que significa que os dados são distribuídos por vários 
servidores ou nós. Isso melhora a redundância e a dis-
ponibilidade dos dados, tornando-os mais resilientes a 
falhas.
Essas curiosidades demonstram o poder e a versatilidade 
das arquiteturas de integração que conectam NoSQL e Big Data, 
capacitando empresas a lidar com desafios de dados cada vez 
mais complexos em um mundo digital em constante expansão.
42 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Com relação a um dos métodos mais comuns de integração 
entre NoSQL e Big Data é o processo ETL. Nesse cenário, os dados 
são extraídos de várias fontes, transformados em um formato 
adequado e carregados no sistema de destino.
EXEMPLO: Dados de um banco de dados NoSQL como 
o MongoDB podem ser extraídos, transformados e 
carregados em um cluster Hadoop para análises mais 
profundas.
Outro padrão importante é o streaming de dados em tempo 
real. Tecnologias como Apache Kafka e Apache Storm permitem a 
ingestão de grandes fluxos de dados em tempo real, que podem 
ser armazenados em bancos de dados NoSQL e processados 
usando plataformas como o Spark. Isso é particularmente útil 
para aplicações que requerem análise rápida de dados, como 
monitoramento de redes sociais ou detecção de fraude.
EXEMPLO: Uma aplicação prática da integração NoSQL 
com Hadoop pode ser vista na análise de dados de mídias 
sociais. Por exemplo, dados coletados de plataformas 
como Twitter ou Facebook são armazenados em um banco 
de dados NoSQL e depois processados usando o Hadoop 
para extrair insights sobre tendências ou comportamentos 
do consumidor.
A integração do Spark com bancos de dados NoSQL, como 
o Cassandra, oferece uma solução poderosa para processamento 
rápido e análises de grandes conjuntos de dados. O Spark permite 
realizar operações complexas de análise de dados, como machine 
learning e processamento de grafos, sobre os dados armazenados 
no Cassandra, proporcionando insights em tempo quase real.
43BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Um dos maiores desafios na integração de NoSQL com 
Big Data é garantir a consistência dos dados. Diferentes sistemas 
podem ter diferentes modelos de consistência, e a integração 
deve garantir que os dados sejam precisos e confiáveis em todo o 
ecossistema.
A escalabilidade é outra consideração importante. Bancos 
de dados NoSQL são projetados para escalar horizontalmente, o 
que os torna uma escolha ideal para trabalhar com plataformas 
de Big Data que também são projetadas para operar em clusters 
de servidores.
Existem várias ferramentas disponíveis para facilitar a 
integração de NoSQL e Big Data, como Apache Sqoop, que é 
uma ferramenta para transferir dados entre bancos de dados 
relacionais e Hadoop, e Apache Flume, que é usada para coletar, 
agregar e mover grandes quantidades de dados de log.
A segurança e a governança de dados são aspectos cruciais 
em qualquer arquitetura de big data. Ao integrar NoSQL com Big 
Data, é essencial implementar políticas de segurança robustas e 
mecanismos de governança para proteger os dados e garantir a 
conformidade com as regulamentações.
O campo de Big Data e NoSQL está em constante evolução. 
Novas tecnologias e abordagens estão sendo desenvolvidas para 
melhorar ainda mais a integração, a eficiência e a eficácia dos 
sistemas.
44 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Casos de uso e aplicações 
práticas
A integração de bancos de dados NoSQL com plataformas 
de Big Data tem impulsionado uma variedade de aplicações 
práticas em diversos setores. Essas tecnologias estão sendo 
usadas para resolver problemas complexos, gerar insights valiosos 
e apoiar a tomada de decisão baseada em dados. Vamos explorar 
alguns casos de uso e aplicações práticas significativos.
A integração de NoSQL e Big Data é amplamente utilizada 
na análise de dados de mídias sociais. Empresas utilizam essas 
tecnologias para monitorar e analisar grandes volumes de dados 
gerados por plataformas como Twitter, Facebook e Instagram. 
EXEMPLO: Um banco de dados NoSQL pode ser usado 
para armazenar dados de mídias sociais em tempo real, 
enquanto ferramentas de Big Data são empregadas para 
processar e analisar esses dados, ajudando as empresas 
a entender tendências de mercado, sentimentos dos 
consumidores e padrões de comportamento.
No setor financeiro, a combinação de NoSQL e Big Data é 
crucial para a detecção de fraudes em tempo real. Bancos de dados 
NoSQL, como o Cassandra, podem lidar com enormes volumes 
de transações em tempo real, enquanto sistemas de Big Data, 
como o Apache Spark, são usados para analisar essas transações 
e identificar padrões suspeitos. Essa integração permite que 
as instituições financeiras detectem e previnam fraudes quase 
instantaneamente.
Empresas de e-commerce e serviços de streaming utilizam 
NoSQL e Big Data para personalizar conteúdo e fornecer 
recomendações precisas aos usuários. Dados de interações do 
45BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
usuário, preferências e histórico de compras são armazenados 
em bancos de dados NoSQL. Em seguida, algoritmos de machine 
learning rodando em plataformas de Big Data analisam esses 
dados para oferecer recomendações personalizadas.
Imagem 4.3 - E-commerce
Fonte: Freepik. 
Na indústria de Internet das Coisas (IoT), NoSQL e Big Data 
são usados para monitoramento e manutenção preditiva. Sensores 
em máquinas e equipamentos geram continuamente dados que 
são armazenados em bancos de dados NoSQL. Plataformas de 
Big Data processam esses dados para prever falhas e programar 
manutenções preventivas, aumentando a eficiência operacional.
46 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Imagem 4.4 - Internet das Coisas (IoT)
Fonte: Freepik. 
O setor de saúde utiliza NoSQL e Big Data para análises 
de saúde pública e pesquisa biomédica. Dados de pacientes, 
incluindo registros médicos eletrônicos e resultados de exames, 
são armazenados em bancos de dados NoSQL. Esses dados são 
então analisados usando ferramentas de Big Data para identificar 
padrões de doenças, melhorar tratamentos e facilitar pesquisas 
médicas.
47BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Imagem 4.5 - O setor de saúde
Fonte: Freepik. 
Empresas de TI e segurança cibernética usam NoSQL e Big 
Data para gerenciamento de logs e análise de segurança. Logs de 
sistemas e redes são armazenados em bancos de dados NoSQL, 
e ferramentas de Big Data são utilizadas para analisar esses logs, 
detectando atividades suspeitas e potenciais vulnerabilidades.
No campo de análises geoespaciais, a integração de NoSQL 
e Big Data é usada para processar e analisar dados de localização. 
Isso inclui o uso em sistemas de mapeamento, monitoramento 
ambiental e planejamento urbano. Bancos de dados NoSQL 
são adequados para lidar com grandes conjuntos de dados 
geoespaciais, enquanto as plataformas de Big Data permitem a 
realização de análises complexas desses dados.
Empresas de pesquisa de mercado utilizam NoSQL e Big 
Data para analisar tendências de consumo e comportamento do 
mercado. Dados de pesquisas, compras e interações on-line são 
48 BANCOS DE DADOS NÃO RELACIONAISU
ni
da
de
 4
armazenados em bancos de dados NoSQL, e análises de big data 
são realizadas para identificar tendências emergentes e insights 
de mercado.
Esses casos de uso demonstram a versatilidade e a eficácia 
da integração entre bancos de dados NoSQL e plataformas de Big 
Data. Ao fornecer soluções para armazenamento e análise de 
grandes volumes de dados diversos, essa combinação tecnológica 
está permitindo avanços significativos em várias áreas, desde o 
comércio eletrônico até a pesquisa biomédica. 
À medida que essas tecnologias continuam a evoluir, 
é provável que novos casos de uso e aplicações emergirão, 
expandindo ainda mais o impacto dessas ferramentas no mundo 
dos negócios e da pesquisa.
Desafios e melhores práticas na 
integração de NoSQL com Big Data
A integração de bancos de dados NoSQL com plataformas 
de Big Data é uma estratégia poderosa para lidar com grandes 
volumes de dados e realizar análises avançadas. No entanto, 
essa integração enfrenta uma série de desafios que devem 
ser abordados para garantir seu sucesso. Além disso, a adoção 
de melhores práticas desempenha um papel fundamental na 
maximização dos benefícios dessa integração.
Um dos principais desafios na integração de NoSQL com 
Big Data é o gerenciamento de dados e a garantia de consistência. 
Diferentes bancos de dados NoSQL têm abordagens variadas 
em relação à consistência dos dados, o que pode complicar a 
integração com sistemas de Big Data que operam em larga escala 
e distribuição. 
49BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Por conseguinte, a complexidade da escalabilidade tam-
bém é um desafio significativo, uma vez que ambas as tecnologias 
devem ser capazes de dimensionar horizontalmente de maneira 
eficiente para lidar com grandes volumes de dados.
Além da segurança e a privacidade dos dados também 
são preocupações críticas, especialmente quando se lida com 
dados sensíveis ou regulamentados. A integração requer a 
implementação de mecanismos robustos de segurança para 
proteger contra acessos não autorizados e vazamentos de dados.
A complexidade da integração técnica e da manutenção 
contínua da infraestrutura é outra questão importante. Integrar 
diferentes tecnologias e garantir que elas funcionem harmoniosa-
mente requer conhecimento técnico e experiência. Além disso, a 
formação das equipes de TI é fundamental para manter e otimizar 
esses sistemas integrados.
Para superar esses desafios, é importante adotar algumas 
melhores práticas:
 • Estabelecer uma estratégia de gerenciamento de dados 
coesa, levando em consideração os tipos de dados, a 
frequência de acesso e os requisitos de consistência. 
Uma abordagem híbrida que combina diferentes tipos 
de bancos de dados NoSQL com sistemas de Big Data 
pode ser eficaz.
 • Focar na escalabilidade e no desempenho, garantindo 
que a infraestrutura seja capaz de crescer à medida 
que os dados e as necessidades de processamento 
aumentam.
 • Implementar políticas de segurança sólidas, incluindo 
autenticação forte, criptografia de dados e controle de 
50 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
acesso, para proteger os dados e garantir conformidade 
com regulamentos de privacidade.
 • Simplificar a integração e a manutenção usando 
ferramentas e plataformas que facilitem o processo e 
reduzam a complexidade.
 • Investir em treinamento e desenvolvimento da equipe 
de TI para garantir que eles estejam bem preparados 
para gerenciar a infraestrutura integrada.
 • Monitorar regularmente o desempenho dos sistemas 
e otimizá-los continuamente para manter a eficiência 
operacional.
Em resumo, a integração de NoSQL com Big Data oferece 
oportunidades significativas, mas também apresenta desafios que 
precisam ser enfrentados. Seguir melhores práticas é fundamental 
para maximizar os benefícios dessa integração e garantir que as 
organizações possam extrair insights valiosos de seus dados e 
manter a eficiência operacional.
RESUMINDO
E então? Gostou do que lhe mostramos? Aprendeu 
mesmo tudinho? Agora, só para termos certeza de 
que você realmente entendeu o tema de estudo 
deste capítulo, vamos resumir tudo o que vimos. 
Você deve ter aprendido que no capítulo “Integrar 
bancos de dados NoSQL com plataformas de Big 
Data” trouxemos uma compreensão profunda das 
complexidades e oportunidades associadas a essa 
integração essencial no cenário de dados atual. No 
início do capítulo, examinamos os fundamentos 
da integração NoSQL e Big Data, destacando como 
essas tecnologias se complementam. Aprendemos 
sobre os diferentes tipos de bancos de dados 
NoSQL, como chave-valor, documentos, colunas 
e grafos, e como eles se adaptam a diversos 
requisitos de análise em Big Data. Isso nos forneceu
51BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
uma base sólida para entender os conceitos 
fundamentais subjacentes a essa integração. Em 
seguida, exploramos as arquiteturas comuns 
utilizadas para conectar bancos de dados NoSQL 
com ecossistemas de Big Data, como Hadoop e 
Spark. Discutimos padrões de integração, como 
ETL e streaming de dados em tempo real, e 
examinamos como diferentes tipos de bancos de 
dados NoSQL se encaixam nessas arquiteturas. 
Isso nos permitiu compreender as abordagens 
técnicas para implementar com sucesso essa 
integração. Sobre casos de uso e aplicações 
práticas, analisamos uma variedade de cenários 
reais em que a integração de NoSQL e Big Data 
desempenha um papel fundamental. Desde a 
análise de mídias sociais até a detecção de fraudes 
em tempo real, ficou claro como essas tecnologias 
têm um impacto significativo em setores diversos, 
gerando insights valiosos e melhorando processos. 
Por fim, exploramos os desafios e melhores práticas 
na integração de NoSQL com Big Data. Entendemos 
que a consistência de dados, a escalabilidade, a 
segurança e a complexidade técnica são desafios a 
serem superados. No entanto, ao adotar melhores 
práticas, como estratégias de gerenciamento de 
dados coesas e foco na escalabilidade e segurança, 
é possível mitigar esses desafios e aproveitar ao 
máximo essa integração. Isso posto, este capítulo 
ofereceu uma visão abrangente da integração de 
bancos de dados NoSQL com plataformas de Big 
Data. Aprendemos que essa integração é essencial 
para lidar com grandes volumes de dados e gerar 
insights valiosos. Ao compreender os fundamentos, 
as arquiteturas, os casos de uso e as melhores 
práticas, estamos preparados para aplicar esse 
conhecimento de forma eficaz em projetos futuros 
envolvendo NoSQL e Big Data. A integração de 
bancos de dados NoSQL com plataformas de
52 BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Big Data é fundamental para lidar com grandes 
volumes de dados, gerar insights valiosos e 
melhorar processos em diversos setores. Além 
disso, compreendemos os desafios associados a 
essa integração e as melhores práticas para superá-
los. Esse conhecimento é essencial para aproveitar 
ao máximo as oportunidades oferecidas por essa 
combinação tecnológica dinâmica.
53BANCOS DE DADOS NÃO RELACIONAIS
U
ni
da
de
 4
Futuro dos bancos de dados 
não relacionais
OBJETIVO
Ao término deste capítulo, você será capaz de 
entender como funcionam as tendências e 
evoluções emergentes em Bancos de Dados 
Não Relacionais. Esses obstáculos podem ser 
significativos, mas com a compreensão adequada 
das tecnologias emergentes, integração com 
IA e aprendizado de máquina, e as estratégias 
para enfrentar desafios de desempenho, você 
estará bem equipado para navegar nesse campo 
em constante evolução. E então? Motivado para 
desenvolver essa competência? Vamos lá!
Tecnologias emergentes em 
bancos de dados não relacionais
No dinâmico mundo da tecnologia da informação, os 
bancos de dados não relacionais têm emergido como soluções 
cruciais para os desafios contemporâneos de gerenciamento de 
dados. 
Esses sistemas oferecem flexibilidade, escalabilidade e 
desempenho superiores aos modelos relacionais tradicionais, 
especialmente no que diz

Mais conteúdos dessa disciplina