Quer ter acesso a todos os cursos desse Guia?
NoSQL para Programadores
Neste guia de consulta você encontrará diversos conteúdos sobre bancos de dados NoSQL, principalmente sobre o MongoDB, que é um dos mais utilizados na atualidade. Encontre também conteúdo sobre Cassandra, Redis, entre outros.
Introdução ao NoSQL
NoSQL é o nome dado aos bancos de dados que não se baseiam no conhecido modelo relacional. Ou seja, os bancos NoSQL não usam tabelas com colunas e linhas para armazenar os dados. Ao invés disso, eles implementam diferentes modelos. Se esse é seu primeiro contato com esse conceito, sugerimos assistir o curso abaixo:
Em seguida, os seguintes links lhe darão um maior embasamento sobre esse paradigma:
-
ArtigoIntrodução ao NoSQL
-
ArtigoConheça a geração de banco de dados NoSQL e NewSQL
-
ArtigoBancos de dados NoSQL: conhecendo modelos de dados
Aqui você deve estar se perguntando por que usar um banco NoSQL ao invés de um baseado no tradicional modelo relacional, como SQL Server, MySQL e Oracle. Para lhe ajudar a diferenciar esses dois paradigmas, confira os artigos a seguir:
-
ArtigoComparando o NoSQL ao modelo relacional
-
ArtigoModelagem SQL x NoSQL
-
ArtigoRepositório de Dados Relacional ou NoSQL?
-
ArtigoComparação de desempenho entre bancos SQL e NoSQL
-
ArtigoParticionamento de dados em bancos relacionais e NoSQL
E aí, ficou animado(a) com o conceito de NoSQL e já está considerando utilizá-lo em seus próximos projetos? Antes disso confira os conteúdos a seguir, que vão lhe ajudar a ter uma visão mais clara sobre a adoção dessa tecnologia:
MongoDB
O MongoDB é atualmente um dos principais bancos NoSQL do mercado. Ele implementa o modelo orientado a documentos e armazena os dados no formato JSON. Ou seja, toda informação é gravada como um documento JSON dentro de uma coleção.
Comparando com o modelo relacional, podemos considerar as coleções equivalentes às tabelas e os documentos equivalentes às linhas. Já as propriedades de cada documento são comparáveis às colunas da tabela, que definem as características de cada registro.
No curso abaixo você aprenderá desde os conceitos básicos sobre o MongoDB até a sua hospedagem na nuvem:
E a seguir temos mais alguns conteúdos para que você aprofunde seus conhecimentos nesse banco:
Modelagem
A modelagem é um dos primeiros passos do desenvolvimento de sistemas. Trata-se de uma fase em que desenhamos como os dados serão representados no banco. Apesar de essa técnica ser bastante conhecida para bases relacionais, em bancos NoSQL esse processo pode não ser tão claro inicialmente. Para lhe ajudar com isso, sugerimos o seguinte artigo:
Administração
Como em todo banco de dados, ter uma boa ferramenta de administração é fundamental para gerenciarmos o MongoDB, criando, alterando e excluindo bancos, coleções e registros. Abaixo listamos algumas das mais utilizadas:
-
ArtigoFerramentas de administração do MongoDB
-
DevCastRobomongo: Ferramenta de administração do MongoDB
Hospedagem
Apesar de normalmente desenvolvermos o projeto com um banco de dados local, é comum que precisemos publicá-lo em um servidor externo posteriormente. No artigo abaixo você encontra formas de hospedar seu banco MongoDB:
A seguir você encontra links de conteúdos ensinando a trabalhar com MongoDB utilizando algumas das principais linguagens de programação:
MongoDB e Java
-
ArtigoComo criar uma API REST com Spring Data, REST e MongoDB
-
ArtigoDesenvolva aplicações web com JSF, MongoDB e JasperReports
-
ArtigoCriando um blog com MongoDB e Spark Framework
-
ArtigoMorphia: Como simplificar o desenvolvimento de aplicações NoSQL
MongoDB e C#
-
CursoComo acessar o MongoDB com o C#
-
DevCastVerificando a conexão no MongoDB com C#
-
ArtigoServiços REST com ASP.NET Web API e MongoDB
MongoDB e Node.js
Cassandra
Com um modelo de armazenamento e distribuição de dados próprio, baseado no DynamoDB e no Bigtable, o Cassandra é um banco de dados que foi inicialmente desenvolvido pelo Facebook, e posteriormente teve seu código aberto. Hoje ele é mantido pela comunidade da Fundação Apache e é conhecido como um dos bancos com melhor desempenho. Entre seus grandes casos de uso estão a Netflix, o Instagram e o GitHub.
Saiba mais sobre essa banco nos artigos a seguir:
Redis
O Redis implementa o modelo chave-valor e é a solução mais conhecida que usa formato. Entre seus principais casos de uso estão a criação de mecanismos de cache e armazenamento de sessão, ou seja, situações em que se deseja armazenar dados de diferentes tipos que precisam ser acessados rapidamente a partir de um identificador específico.
Nos links abaixo, além de conhecer o Redis você verá como acessá-lo por meio de aplicações Java:
Neo4j
O Neo4j é um banco que implementa o modelo de grafos, uma estrutura de dados composta por nós (vértices) que estão ligados por meio de relacionamentos (arestas). Esse banco é muito utilizado, por exemplo, em sistema de sugestão de conteúdo por empresas como o Wallmart. No curso abaixo você conhecerá melhor o que são grafos, como o Neo4j usa essa estrutura e possibilidades de uso:
Couchbase
O Couchbase é um banco de dados multi-modelo, pois tanto implementa o modelo chave-valor, quanto o modelo de documentos (armazenando dados no formato JSON). Trata-se também de um software open source utilizada por grandes companhias como Cisco e Ebay e conta com funcionalidades como replicação automática entre servidores, que permite garantir a integridade e disponibilidade das informações.
Conheça mais sobre o Couchbase no artigo abaixo:
Elasticsearch
E aí? Tá afim de utilizar o Elasticsearch em um projeto? Abaixo apresentamos uma aplicação com dados de filmes, séries e outros conteúdos coletados do IMDB, com um sistema de busca criado em Angular, Node e Elasticsearch. Confira!
Mais sobre bancos de dados
Além dos cursos e artigos sugeridos nesse guia, a DevMedia publica com frequência novos conteúdos sobre bancos e dados, os quais você pode conferir nos Guias de Consulta abaixo:
-
Guia de CarreiraBanco de dados para Programadores Guia
-
Guia de consultaModelagem de dados Guia
-
Guia de consultaLinguagem SQL Guia
-
Guia de consultaSQL Server Guia
-
Guia de ConsultaMySQL Guia
-
Guia de ConsultaPostgreSQL Guia
-
Guia de ConsultaOracle Guia
Além disso, você pode conferir todo o conteúdo sobre bancos de dados clicando aqui.
Promoção de Natal
Oferta exclusiva de Natal!
Pagamento anual
12x no cartão
De: R$ 69,00
Por: R$ 59,90
Total: R$ 718,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- 12 meses de acesso
Pagamento recorrente
Cobrado mensalmente no cartão
De: R$ 79,00
Por: R$ 59,90 /mês
Total: R$ 718,80
Garanta o desconto
- Formação FullStack Completa
- Carreira Front-end I e II, Algoritmo e Javascript, Back-end e Mobile
- +10.000 exercícios gamificados
- +50 projetos reais
- Comunidade com + 200 mil alunos
- Estude pelo Aplicativo (Android e iOS)
- Suporte online
- Fidelidade de 12 meses
- Não compromete o limite do seu cartão
<Perguntas frequentes>