o Que é NoSQL?

NoSQL banco de dados é um sistema de gerenciamento de dados não relacional, que não requer um esquema fixo. Evita ligações, e é fácil de escalar. A principal finalidade de usar um banco de dados NoSQL é para armazenamento de dados distribuídos com enormes necessidades de armazenamento de dados. NoSQL é usado para grandes dados e aplicativos web em tempo real. Por exemplo, empresas como o Twitter, Facebook e Google coletam terabytes de dados de usuários todos os dias.,

NoSQL base de dados significa “não só SQL” ou “não SQL.”Embora um termo melhor fosse “NoREL”, NoSQL percebeu. Carl Stroz introduziu o conceito NoSQL em 1998.

RDBMS tradicional usa sintaxe SQL para armazenar e recuperar dados para mais informações. Em vez disso, um sistema de banco de dados NoSQL abrange uma ampla gama de tecnologias de banco de dados que podem armazenar dados estruturados, semi-estruturados, não estruturados e polimórficos., Vamos entender sobre NoSQL com um diagrama em que este banco de dados NoSQL tutorial:

neste NoSQL tutorial para iniciantes, você vai aprender NoSQL básicos como:

  • Por que NoSQL?
  • Breve História das bases de dados NoSQL
  • Características de NoSQL
  • Tipos de bases de dados NoSQL
  • ferramentas do mecanismo de consulta para NoSQL
  • Qual é o Teorema do CAP? vantagens de NoSQL Por Que NoSQL?,

    o conceito de bases de dados NoSQL tornou-se popular com gigantes da Internet como Google, Facebook, Amazon, etc. que lidam com enormes volumes de dados. O tempo de resposta do sistema torna-se lento quando você usa RDBMS para volumes maciços de dados.

    para resolver este problema, nós poderíamos “escalar” nossos sistemas atualizando nosso hardware existente. Este processo é caro.

    a alternativa para este problema é distribuir a carga da base de dados em várias máquinas sempre que a carga aumenta. This method is known as ” scaling out.,”

    NoSQL database is non-relational, so it scales out better than relational databases as they are designed with web applications in mind.,ST com JSON

  • Mais utilizado nenhum padrão com base NoSQL linguagem de consulta
  • habilitado para Web e bancos de dados executando como serviços voltados para a internet

Distribuído

  • Vários bancos de dados NoSQL pode ser executado em um sistema distribuído de moda
  • Oferece auto de escala e de recursos de tolerância a falhas
  • Muitas vezes ÁCIDO conceito pode ser sacrificado para a escalabilidade e a taxa de transferência
  • Mais nenhuma replicação síncrona entre distribuídos nós Assíncrona de Replicação de vários mestres, peer-to-peer, o HDFS Replicação
  • Só a prestação de consistência eventual
  • Shared Nothing Arquitetura., Isso permite menos coordenação e maior distribuição.

NoSQL é Compartilhado Nada.

tipos de bases de dados NoSQL

bases de dados NoSQL são categorizados principalmente em quatro tipos: par de valores-chave, orientado em coluna, baseado em Grafos e orientado para documentos. Cada categoria tem seus atributos e limitações únicos. Nenhum dos bancos de dados acima especificados é melhor para resolver todos os problemas. Os usuários devem selecionar a base de dados com base em suas necessidades de produto.,

Tipos de Bancos de dados NoSQL:

  • Par Chave-valor Base
  • Coluna orientada Gráfico
  • Gráficos com base
  • orientados a Documento

Par de Valor-Chave com Base

Os dados são armazenados em pares chave/valor. Ele é projetado de tal forma para lidar com muitos dados e carga pesada.

Banco de dados de armazenamento de pares de chaves armazenam dados como uma tabela de hash onde cada chave é única, e o valor pode ser um JSON, BLOB(objetos binários grandes), string, etc.,

Por exemplo, um par de valores-chave pode conter uma chave como” Site “associado a um valor como “Guru99”.

é um dos exemplos mais básicos da Base de dados NoSQL. Este tipo de banco de dados NoSQL é usado como uma coleção, dicionários, arrays associativos, etc. O valor-chave armazena ajuda o desenvolvedor a armazenar dados sem esquemas. Eles trabalham melhor para o conteúdo do carrinho de compras.

Redis, Dynamo, Riak são alguns exemplos NoSQL de bases de dados de valor-chave. Todos eles são baseados no papel dínamo da Amazon.,

bases de dados baseadas em colunas

bases de dados orientadas em colunas trabalham em colunas e são baseadas em papel BigTable pelo Google. Cada coluna é tratada separadamente. Os valores das bases de dados de uma única coluna são armazenados contiguamente.

Coluna base de banco de dados NoSQL

Eles oferecem alto desempenho na agregação de consultas, como SUM, COUNT, AVG, MIN, etc. como os dados estão prontamente disponíveis em uma coluna.,

bases de dados NoSQL baseadas em colunas são amplamente usadas para gerenciar armazéns de Dados, Inteligência de negócios, CRM, catálogos de cartões de Biblioteca,

HBase, Cassandra, HBase, Hypertable são exemplos de pesquisa NoSQL de base de dados baseada em colunas.

Document-Oriented:

Document-Oriented NoSQL DB armazena e recupera dados como um par de valores-chave, mas a parte do valor é armazenada como um documento. O documento é armazenado em formatos JSON ou XML. O valor é compreendido pelo DB e pode ser questionado.

Relacional Vs., Documento

neste diagrama à sua esquerda você pode ver que temos linhas e colunas, e à direita, temos um banco de dados de documentos que tem uma estrutura semelhante ao JSON. Agora, para a base de dados relacional, você tem que saber que colunas você tem e assim por diante. No entanto, para uma base de dados de documentos, você tem data store como JSON object. Você não precisa definir o que o torna flexível.

O tipo de documento é usado principalmente para sistemas CMS, plataformas de blogagem, analytics em tempo real & e-commerce applications., Não deve ser utilizado para transacções complexas que exijam múltiplas operações ou consultas em função de estruturas agregadas variáveis.

Amazon SimpleDB, CouchDB, MongoDB, Riak, Lotus Notes, MongoDB, são sistemas DBMS originados por documentos populares.

baseado em Grafos

um tipo de grafo banco de dados armazena entidades, bem como as relações entre essas entidades. A entidade é armazenada como um nó com a relação como bordas. Uma aresta dá uma relação entre nós. Cada nó e aresta tem um identificador único.,

em comparação com uma base de dados relacional onde as tabelas estão vagamente conectadas, uma base de dados de grafos é de natureza multi-relacional. A relação de travessia é rápida, já que eles já são capturados no DB, e não há necessidade de calculá-los.

base de dados de Base de Grafos utilizada principalmente para redes sociais, logística, dados geográficos.

Neo4J, grafo infinito, OrientDB, FlockDB são algumas bases de dados populares baseadas em grafos.,

ferramentas do mecanismo de consulta para NoSQL

o mecanismo mais comum de recuperação de dados é a recuperação baseada no resto de um valor baseado na sua chave/ID com recurso GET

Document store Database oferece consultas mais difíceis como eles entendem o valor em um par de valores-chave. Por exemplo, CouchDB permite definir vistas com MapReduce

o que é o teorema de CAP?

CAP theorem is also called brewer’s theorem., Afirma que é impossível para um armazenamento de dados distribuído oferecer mais de duas em cada três garantias consistência disponibilidade tolerância de partição tolerância consistência:

os dados devem permanecer consistentes mesmo após a execução de uma operação. Isto significa que uma vez que os dados são escritos, qualquer pedido de leitura futura deve conter esses dados. Por exemplo, depois de atualizar o status da encomenda, todos os clientes devem ser capazes de ver os mesmos dados.

disponibilidade:

a base de dados deve estar sempre disponível e a responder. Não deve ter tempo livre., tolerância à partição: A tolerância à partição significa que o sistema deve continuar a funcionar mesmo que a comunicação entre os servidores não seja estável. Por exemplo, os servidores podem ser divididos em vários grupos que podem não se comunicar uns com os outros. Aqui, se parte da base de dados não estiver disponível, Outras partes não são sempre afetadas.

eventual consistência

o termo “eventual consistência” significa ter cópias de dados em várias máquinas para obter alta disponibilidade e escalabilidade., Assim, as alterações feitas a qualquer item de dados em uma máquina tem que ser propagado a outras réplicas. a replicação de dados pode não ser instantânea, uma vez que algumas cópias serão actualizadas imediatamente, enquanto outras serão actualizadas no devido tempo. Estas cópias podem ser mutuamente, mas no devido tempo, tornam-se consistentes. Daí, o nome consistência eventual.,i> Basicamente, meios disponíveis DB está disponível o tempo todo, como por teorema CAP

  • Soft estado significa que, mesmo sem entrada; o estado do sistema pode alterar
  • consistência Eventual significa que o sistema vai tornar-se consistente ao longo do tempo
  • > Vantagens de NoSQL

    • Pode ser usado como Primário ou análise de Fonte de Dados
    • Grande Capacidade de Dados
    • Sem Ponto Único de Falha
    • Fácil de Replicação
    • Não há Necessidade de Separar Camada de Cache
    • fornece uma rápida performance e escalabilidade horizontal.,
    • Pode lidar estruturada, semi-estruturada, e dados não estruturados, com igual efeito
    • programação orientada a Objeto, o que é fácil de usar e flexível
    • bancos de dados NoSQL não precisa de um dedicado servidor de alto desempenho
    • Suporte Chave de Desenvolvedor de Plataformas e Linguagens
    • Simples de implementar do que usando RDBMS
    • pode servir como a principal fonte de dados para aplicações online.,ariety, volume, e a complexidade
    • se Destaca no banco de dados distribuídos e multi-operações do centro de dados
    • Elimina a necessidade para uma determinada camada de cache para armazenar dados
    • Oferece um esquema flexível de design que podem ser alterados facilmente, sem tempo de inatividade ou interrupção do serviço

    Desvantagens do NoSQL

    • Nenhuma padronização de regras
    • Limitadas capacidades de consulta
    • RDBMS bancos de dados e ferramentas são relativamente maduras
    • não oferece qualquer base de dados tradicional capacidades, como a consistência quando várias transações são executadas simultaneamente.,quando o volume de dados aumenta, é difícil manter valores únicos à medida que as chaves se tornam difíceis, não funciona bem com os dados relacionais.

    Resumo

    • NoSQL é um não-relacional DMS, que não necessita de um esquema fixo, evita junta, e é fácil de escala
    • O conceito de bancos de dados NoSQL beccame popular com gigantes da Internet como Google, Facebook, Amazon, etc., que lidam com enormes volumes de dados
    • No ano de 1998 – Carlo Strozzi usa o termo NoSQL para a sua base de dados relacional leve e de código aberto
    • bases de dados NoSQL nunca seguem o modelo relacional, ou é livre de esquemas ou tem esquemas relaxados
    • quatro tipos de Base de dados NoSQL são 1).2).Grafo orientado em coluna 3). Graphs based 4).,Orientados a documento
    • NOSQL pode lidar estruturados, semi-estruturados e dados não estruturados, com igual efeito
    • teorema CAP é composto de três palavras de Consistência, Disponibilidade e Partição de Tolerância
    • BASE significa, Basicamente, Disponível, Soft state, Consistência Eventual
    • O termo “consistência eventual” significa ter cópias de dados em vários computadores para obter alta disponibilidade e escalabilidade
    • NOSQL oferta limitada capacidades de consulta