NoSQL

Autor: Robert Simon
Data De Criação: 19 Junho 2021
Data De Atualização: 1 Julho 2024
Anonim
Что такое NoSQL за 6 минут
Vídeo: Что такое NoSQL за 6 минут

Contente

Definição - O que significa NoSQL?

NoSQL é uma classe de sistemas de gerenciamento de banco de dados (DBMS) que não segue todas as regras de um DBMS relacional e não pode usar o SQL tradicional para consultar dados. O termo é um pouco enganador quando interpretado como "No SQL", e a maioria o traduz como "Not Only SQL", pois esse tipo de banco de dados geralmente não é um substituto, mas uma adição complementar aos RDBMSs e SQL.


Os sistemas baseados em NoSQL são normalmente usados ​​em bancos de dados muito grandes, que são particularmente propensos a problemas de desempenho causados ​​pelas limitações do SQL e pelo modelo relacional de bancos de dados. Muitos pensam no NoSQL como o banco de dados moderno de escolha que se adapta aos requisitos da Web. Algumas implementações notáveis ​​do NoSQL são o banco de dados s Cassandra, Googles BigTable e Amazons SimpleDB e Dynamo.

Uma introdução ao Microsoft Azure e Microsoft Cloud | Neste guia, você aprenderá sobre o que é a computação em nuvem e como o Microsoft Azure pode ajudá-lo a migrar e administrar seus negócios a partir da nuvem.

Techopedia explica NoSQL

Um banco de dados NoSQL não segue necessariamente as regras estritas que governam as transações nos bancos de dados relacionais. Essas regras violadas são conhecidas pelo acrônimo ACID (Atomicidade, Consistência, Integridade, Durabilidade). Por exemplo, os bancos de dados NoSQL não usam estruturas de esquema fixas e junções SQL.


Em um RDBMS tradicional, as operações básicas são leituras e gravações. As leituras podem ser dimensionadas replicando os dados para várias máquinas, balanceando assim as solicitações de leitura. No entanto, isso afeta as gravações porque a consistência dos dados deve ser mantida. Somente gravações podem ser dimensionadas particionando os dados. Isso afeta as leituras, pois as junções distribuídas geralmente são lentas e difíceis de implementar. Além disso, para manter as propriedades ACID, os bancos de dados devem bloquear os dados. Isso significa que quando um usuário abre um item de dados, nenhum outro usuário poderá fazer alterações no mesmo item. Essa restrição tem sérias implicações no desempenho.

Essas limitações não foram um grande problema no passado. No entanto, com o advento das redes sociais e do big data, vários bancos de dados maciços surgiram foram forçados a atender as dezenas, ou mesmo centenas, de milhões de clientes em todo o mundo, com milhares de leituras e gravações a cada minuto. Os RDBMSs tradicionais simplesmente não atendem a essa necessidade porque podem apenas "aumentar a escala" ou aumentar os recursos em um servidor central. Uma implementação NoSQL, por outro lado, pode "expandir" ou distribuir a carga do banco de dados por mais servidores.


Os bancos de dados NoSQL estão focados em classes específicas de problemas - desde serem mais flexíveis sobre dados armazenados (repositórios de documentos) até direcionar casos de uso, como relacionamentos (bancos de dados de gráficos) e dados agregados (bancos de dados de colunas) ou apenas simplificar a idéia de um banco de dados até algo que armazena um valor (chave / valor armazena).

Os bancos de dados NoSQL oferecem as vantagens de escalabilidade rápida, desempenho muito melhor e uma estrutura mais simples em comparação com RDBMSs. No entanto, eles também sofrem por serem uma tecnologia relativamente nova e não comprovada e não podem fornecer relatórios ricos em RDBMS e funcionalidade analítica.

Esta definição foi escrita no con do Database