NoSQL

NoSQL é um termo usado para descrever bancos de dados não relacionais de alto desempenho. Os bancos de dados NoSQL usam diversos modelos de dados, incluindo documentos, gráficos, chave-valor e colunares. Bancos de dados NoSQL são amplamente reconhecidos pela facilidade de desenvolvimento, desempenho escalável, alta disponibilidade e resiliência. (Fonte)
—————————————————
—————————————————

Bancos de dados colunares

Os bancos de dados colunares são otimizados para colunas de leitura e gravação, ao contrário das linhas de dados. O armazenamento orientado a colunas para tabelas do banco de dados é um fator importante no desempenho de consulta analítica, pois ele reduz drasticamente os requisitos gerais de E/S e diminui a quantidade de dados que você precisa carregar do disco. Saiba mais »

 

Bancos de dados de documentos

Os bancos de dados de documentos são projetados para armazenar dados como documentos, geralmente em formato JSON ou XML. Diferentemente dos bancos de dados relacionais tradicionais, o esquema de cada documento não relacional (NoSQL) pode variar, dando a você mais flexibilidade ao organizar e armazenar dados do aplicativo e ao reduzir o armazenamento exigido para valores opcionais. Saiba mais »

 

Bancos de dados de gráficos

Os bancos de dados de gráficos armazenam vértices e links direcionados chamados de bordas. Gráficos podem ser construídos em bancos de dados relacionais (SQL) e não relacionais (NoSQL). Vértices e bordas podem ter propriedades associadas a eles. O diagrama abaixo mostra um gráfico simples de relações entre amigos e seus interesses. Saiba mais »

 

Armazéns em memória de chave-valor

Os armazéns em memória de chave-valor são bancos de dados NoSQL otimizados para cargas de trabalho de aplicativos de leitura pesada (como redes sociais, jogos, compartilhamento de mídia, e portais de P e R) ou cargas de trabalho com uso intenso da computação (como um mecanismo de recomendação). O armazenamento em cache na memória melhora o desempenho do aplicativo ao armazenar pedaços críticos de dados na memória para acesso de baixa latência. Saiba mais »

—————————————————


6 motivos para usar NoSQL que se aplicam a qualquer tipo de banco de dados NoSQL


1. Flexibilidade

Estruturas de dados intuitivas e flexíveis são funcionalidades que mais atraem desenvolvedores que trabalham em times de desenvolvimento ágil. A maioria dos bancos de dados NoSQL tem essas qualidades.A grande flexibilidade dos bancos de dados NoSQL é muito popular por suportar as práticas de desenvolvimento ágil, pois elimina a complexidade de mudanças dos bancos de dados gerando um bom suporte para adaptações rápidas.2. Escalabilidade
A maioria dos bancos de dados NoSQL são construídos para escalar horizontalmente, distribuindo os dados por clusters melhor que os SGBDs relacionais, que sofrem muito em performance quando executa consultas com “joins” em ambientes clusterizados. Como o NoSQL evita “joins” naturalmente, a performance das consultas permanece alta.A escalabilidade NoSQL aplica-se tanto ao crescimento dos dados quanto ao número de usuários agindo simultaneamente sobre os dados.3. Disponibilidade
A indisponibilidade de um banco de dados pode causar sérios prejuízos, incluindo perda de clientes. A maioria dos bancos de dados NoSQL oferecem eficientes arquiteturas de replicação de dados que proporciona aos NoSQLs maior disponibilidade. Ou seja, se um ou mais servidores (ou nós) cai um outro nó do cluster está apto a continuar o trabalho automaticamente sem perda de dados.4. Raízes open source
Muitos bancos de dados NoSQL tem raízes na comunidade open source. Talvez isso tenha sido fundamental para o rápido crescimento do seu uso e popularidade. Nota-se que as companhias que oferecem versões comerciais de bancos NoSQL com uma forte estrutura de suporte e serviços, estão ao mesmo tempo participando direta ou indiretamente de comunidades de bancos de dados NoSQL open source. Exemplos são Apache->Cassandra, IBM->CouchDB, MongoDB->MongoDB open source, entre outros.

5. Baixo custo operacional
Devido ao peso do open source no NoSQL, o custo para iniciar a utilização desses bancos de dados também se torna muito baixo ou zero. É comum ouvir dizerem que a transição relacional -> NoSQL diminuiu muito os custos enquanto obteve um desempenho melhor ou igual ao anterior.

Grandes bancos de dados relacionais requerem computadores ou mainframes caros. Com o NoSQL, esse custo também diminui, pois este foi desenvolvido para trabalhar em ambientes distribuídos.

6. Funcionalidades especiais
Também com o peso do open source sobre o NoSQL, muitos distribuidores de bancos de dados NoSQL oferecem algumas funcionalidades especiais para incentivar e atrair mais usuários. Índices específicos, capacidade de consulta de dados geoespaciais, replicação automática de dados, funcionalidades para sincronização, APIs RESTful são exemplos de funcionalidades especiais oferecidas pelos diferentes distribuidores NoSQL.
Conclusão

Na hora de escolher o banco de dados que você vai utilizar na sua próxima aplicação, considere usar um banco de dados NoSQL. Não é atoa que a popularidade do NoSQL cresceu tão rápido nos últimos anos.

Além de optar pela utilização de um NoSQL, há uma grande variedade de bancos de dados NoSQL com diferentes funcionalidades que podem lhe ser muito útil durante o desenvolvimento.

Uma coisa é certa: se você pretende desenvolver um software que vai crescer (escalar) MUITO, a melhor alternativa é um NoSQL.  (Fonte)

Bancos:

MongoDB (Document Store)
https://www.mongodb.com/

DynamoDB (Document Store)
https://aws.amazon.com/pt/nosql/

HBase (Wide column store)
http://hbase.apache.org/

Cassandra (Wide column store)
http://cassandra.apache.org/

Redis (Key-value store)
http://redis.io/

CouchDB (Apache CouchDB™ is a database that uses JSON for documents, JavaScript for MapReduce indexes, and regular HTTP for its API)
http://couchdb.apache.org/

Riak (Time Series)
http://basho.com/products/#riakNeo4j (Graph Database)
https://neo4j.com/Google BigQuery
https://cloud.google.com/bigquery/docs/InfluxDB (Time Series)
https://www.influxdata.com/
Mais…
Faça o download do whitepaper Migration Best Practices – RDBMS to Amazon DynamoDB
nosql-vs-sql-overview-1
%d blogueiros gostam disto: