Você está na página 1de 7

resumo / Introdução

O banco de dados NoSQL orientado a documento é um tipo de sistema de gerenciamento


de banco de dados que armazena, recupera e gerencia dados de forma diferente dos
bancos de dados relacionais tradicionais. No SQL (Not Only SQL) é um termo genérico
usado para descrever uma variedade de bancos de dados que não seguem o modelo
relacional.
No contexto de bancos de dados orientados a documentos, os dados são armazenados em
documentos, que são estruturas de dados semelhantes a JSON (JavaScript Object
Notation) ou BSON (Binary JSON) ou XML(Extensible Markup Language). Cada documento
representa uma entidade ou item de dados e pode conter pares de chave-valor, campos
aninhados e arrays.

Nomeclatura

O JSON (JavaScript Object Notation) é um formato de texto leve e independente de


linguagem usado para representar dados estruturados. Foi criado como uma alternativa ao
XML (Extensible Markup Language) para transmitir dados entre um servidor e um cliente.

XML (Extensible Markup Language) é uma linguagem de marcação que foi desenvolvida
para representar informações estruturadas de forma hierárquica e legível por máquina,
tornando-a adequada para armazenar e transmitir dados. XML não é uma linguagem de
programação, mas sim uma linguagem de marcação que permite que os desenvolvedores
definam suas próprias tags e estruturas para descrever dados.

O BSON (Binary JSON) é um formato binário usado para representar dados estruturados de
forma eficiente e compacta. Ele é frequentemente associado ao banco de dados NoSQL
MongoDB, que o utiliza como formato nativo de armazenamento de dados. O BSON é uma
extensão binária do JSON (JavaScript Object Notation) e compartilha muitas semelhanças
com o JSON em termos de estrutura de dados, mas oferece algumas vantagens específicas
em relação ao JSON, especialmente quando se trata de desempenho e eficiência de
armazenamento.

Diferentemente dos bancos de dados relacionais tradicionais o esquema de cada


documento não relacional(Nosql) pode variar, o que oferece a desenvolvedores ,
administradores de banco de dados, profissionais de Ti e Engenheiros maior flexibilidade
para organizar e armazenar dados de aplicativos reduzir o armazenamento exigido para
valores opcionais
Histórico

Linha do tempo de bancos de dados NoSQL orientados a documentos

● 1990: O conceito de banco de dados NoSQL é proposto pela primeira vez.

● 2000: O banco de dados CouchDB é lançado, um dos primeiros bancos de dados


NoSQL orientados a documentos.

● 2007: O banco de dados MongoDB é lançado, um dos bancos de dados NoSQL


orientados a documentos mais populares.

● 2008: O banco de dados Couchbase é lançado, um banco de dados NoSQL


orientado a documentos projetado para escalabilidade.

● 2010: O banco de dados Elasticsearch é lançado, um banco de dados NoSQL


orientado a documentos projetado para análise de texto.

● 2012: O banco de dados Redis é lançado, um banco de dados NoSQL orientado a


documentos projetado para armazenamento de dados de estrutura de dados.

● 2014: O banco de dados MarkLogic é lançado, um banco de dados NoSQL


orientado a documentos projetado para processamento de linguagem natural.

● 2016: O banco de dados FaunaDB é lançado, um banco de dados NoSQL orientado


a documentos projetado para escalabilidade e segurança.

● 2018: O banco de dados OrientDB é lançado, um banco de dados NoSQL orientado


a documentos projetado para escalabilidade e desempenho.

● 2020: O banco de dados BigchainDB é lançado, um banco de dados NoSQL


orientado a documentos projetado para blockchain.

● 2022: O banco de dados MongoDB Atlas é lançado, uma plataforma de nuvem do


MongoDB que facilita a implantação e gerenciamento de bancos de dados
MongoDB.

bd orientado a documento X chave-valor

banco de dados orientado a documento são inerentemente uma subclasse do


armazenamento chave-valor, outro conceito de dados NoSQL.

a principal diferença entre bancos de dados orientados a documento e bancos de dados


chave-valor está na forma como os dados são organizados e acessados. Bancos de dados
orientados a documento oferecem maior flexibilidade em termos de estrutura de dados e
suporte a consultas complexas, enquanto bancos de dados chave-valor são mais simples e
eficientes para cenários específicos, como armazenamento em cache.
Aplicabilidade

os bancos de dados NoSQL orientados a documento são aplicados em uma variedade de


cenários onde a flexibilidade na estrutura dos dados é fundamental. Eles permitem que os
desenvolvedores lidem com dados variáveis e semi-estruturados de forma eficiente, o que é
especialmente útil em aplicativos da web, sistemas de gerenciamento de jogos,
e-commerce e muito mais.

exemplos:

Aplicativos da Web e Móveis:

● Cenário: Aplicativos da web e móveis frequentemente precisam lidar com dados


provenientes de diferentes fontes, como formulários de usuário, feeds de notícias,
configurações do aplicativo e muito mais. Esses dados podem variar em estrutura e
não se encaixar bem em um modelo de banco de dados relacional tradicional.

● Uso do NoSQL Orientado a Documento: Os bancos de dados NoSQL orientados a


documento são ideais para esses cenários, pois permitem que os desenvolvedores
armazenem dados em documentos flexíveis. Por exemplo, um aplicativo de mídia
social pode armazenar informações de perfil de usuário em documentos JSON, onde
cada usuário pode ter campos diferentes.

Sistemas de Gerenciamento de Conteúdo de Jogos:

● Cenário: Jogos eletrônicos frequentemente precisam armazenar informações sobre


personagens, itens, missões e outros elementos do jogo, que podem variar em
complexidade e atributos.

● Uso do NoSQL Orientado a Documento: Bancos de dados NoSQL orientados a


documento são usados em jogos para armazenar dados de jogo em documentos
JSON ou BSON. Isso facilita a criação e a expansão do conteúdo do jogo à medida
que novos elementos são adicionados.

Catalogação de Produtos e E-Commerce:

● Cenário: Em lojas online e sistemas de e-commerce, a catalogação de produtos é


crucial. Cada produto pode ter atributos exclusivos, como preço, descrição,
tamanhos, cores, imagens e avaliações.
● Uso do NoSQL Orientado a Documento: Os bancos de dados NoSQL orientados a
documento permitem que os varejistas armazenem informações detalhadas de
produtos em documentos, onde cada documento representa um produto. Isso facilita
a adição de novos atributos de produto sem a necessidade de modificar a estrutura
do banco de dados.
Linguagem e Exemplo de utilização

A linguagem usada em um banco de dados orientado a documentos NoSQL varia


dependendo do sistema de gerenciamento de banco de dados (SGBD) específico que você
está utilizando. No entanto, em geral, esses bancos de dados usam uma linguagem de
consulta ou manipulação de dados que é adequada para documentos semelhantes a JSON
ou XML (Extensible Markup Language).
Exemplo mongo db

O MongoDB é um popular banco de dados NoSQL orientado a documentos, desenvolvido


pela MongoDB, Inc. Ele se destaca por sua flexibilidade, escalabilidade e capacidade de
armazenar, consultar e manipular dados em formato de documento JSON.
Outros banco de dados que são orientado a documento

​ -Couchbase: O Couchbase é um banco de dados NoSQL orientado a documento


que oferece escalabilidade e alta disponibilidade. Ele permite que você armazene,
consulte e busque documentos JSON de forma eficiente.

​ -CouchDB: O Apache CouchDB é um banco de dados NoSQL orientado a
documento que é altamente distribuído e projetado para ser tolerante a falhas. Ele
utiliza o formato JSON para armazenar documentos.

​ -RethinkDB: O RethinkDB é um banco de dados NoSQL orientado a documento que
oferece tempo real e atualizações em tempo real. Ele permite que você armazene e
consulte dados JSON de maneira flexível.

​ -Elasticsearch: Embora seja mais conhecido como um mecanismo de busca, o
Elasticsearch também pode ser usado como um banco de dados NoSQL orientado a
documento. Ele armazena dados em documentos JSON e é altamente escalável e
eficiente em termos de pesquisa.

​ -RavenDB: O RavenDB é um banco de dados NoSQL orientado a documento que
oferece suporte a transações ACID e é projetado para aplicativos empresariais. Ele
armazena dados em documentos JSON e oferece recursos de consulta avançados.

​ -Amazon DynamoDB: O Amazon DynamoDB é um serviço de banco de dados
NoSQL oferecido pela Amazon Web Services (AWS). Ele suporta armazenamento
de dados em formato JSON e é escalável e altamente disponível.

Vantagens e desvantagens

Vantagens de bancos de dados NoSQL orientados a documentos

● Flexibilidade: Os bancos de dados NoSQL orientados a documento permitem que os


desenvolvedores armazenem dados sem a necessidade de um esquema rígido. Isso
significa que você pode adicionar campos ou alterar a estrutura dos documentos
conforme necessário, sem afetar os documentos existentes.

● Escalabilidade Horizontal: A maioria dos bancos de dados NoSQL orientados a


documento é altamente escalável horizontalmente, o que significa que você pode
adicionar servidores ou nós para lidar com um maior volume de dados ou tráfego.
Isso facilita a expansão à medida que seu aplicativo cresce.

● Desempenho: Em muitos casos, os bancos de dados NoSQL orientados a


documento oferecem um desempenho rápido para operações de leitura e gravação,
especialmente quando bem otimizados e indexados.
Desvantagens de bancos de dados NoSQL orientados a documentos

● Complexidade: Os bancos de dados NoSQL orientados a documentos podem ser


mais complexos de usar do que os bancos de dados relacionais.

● Inconsistências: Os documentos podem ser gravados em diferentes nós, o que pode


levar a inconsistências.

● Transações: Os bancos de dados NoSQL orientados a documentos não oferecem


suporte a transações ACID(atomicidade, consistência,isolamento,durabilidade).

Conclusão:

Os bancos de dados NoSQL orientados a documento representam uma abordagem


inovadora para o armazenamento e gerenciamento de dados, desafiando o modelo
relacional tradicional. Eles oferecem uma flexibilidade significativa na estrutura dos dados, o
que é crucial para lidar com dados variáveis e semi-estruturados em aplicativos modernos,
como sites, jogos eletrônicos e sistemas de comércio eletrônico. A evolução desses bancos
de dados ao longo dos anos, desde o pioneiro CouchDB até os mais recentes como
MongoDB Atlas, demonstra a crescente importância desse paradigma na indústria de TI.

Além disso, a capacidade de escalabilidade horizontal, o desempenho ágil e a capacidade


de armazenar dados em formato JSON ou BSON fazem com que esses sistemas sejam
escolhas atraentes para muitos cenários de aplicativos. No entanto, é importante
reconhecer que eles também apresentam desafios, como a complexidade de uso,
potenciais inconsistências de dados e a falta de suporte a transações ACID em alguns
casos.

Você também pode gostar