NoSQL Como armazenar os dados de uma aplicação moderna

David Paniz

*Você terá acesso às futuras atualizações do livro.

Conteúdo

Ao começar um novo projeto, surgem questões importantes sobre quais linguagens de programação serão usadas, os principais frameworks e como será a arquitetura. Nessa tomada de decisões, a escolha por um banco de dados relacional costuma ser praticamente unânime. Porém, com o aumento das exigências de um banco de dados com alto volume de armazenamento e leitura, surgiu o movimento NoSQL – Não apenas SQL, ressaltando a importância de se questionar qual a melhor ferramenta para a sua necessidade, que pode ser um banco relacional ou não.

Neste livro, David Paniz apresenta bancos não relacionais, tratando de suas vantagens e desvantagens, para você poder escolher qual a melhor opção para o seu contexto. Ao longo da leitura, você vai desenvolver um exemplo real para aprender na prática a utilização dos bancos de dados NoSQL, aplicando soluções mais elegantes e práticas, e muitas vezes mais performáticas e escaláveis, que abrirão seu leque de opções ao montar seu projeto.

Saiba o que você vai aprender

 

Sumário

Parte 1 — Nome da parte

  • 1 Introdução
  • 1.1 O problema do relacional
  • 1.2 Tipos de bancos de dados não relacionais
  • 1.3 O problema na vida real
  • 2 Começando com NoSQL
  • 2.1 Conhecendo o MongoDB
  • 2.2 Instalando o MongoDB
  • 2.3 Criando nosso primeiro documento
  • 2.4 Inserindo documentos no MongoDB
  • 2.5 Buscando documentos no MongoDB
  • 2.6 Removendo documentos no MongoDB
  • 2.7 Alterando documentos no MongoDB
  • 3 Mais sobre bancos orientados a documentos
  • 3.1 Criando relacionamentos
  • 3.2 Listando álbuns e o problema "n+1 query"
  • 3.3 Trabalhando com documentos embutidos
  • 3.4 Desnormalizando os dados
  • 4 Consistência versus disponibilidade e os bancos chave valor
  • 4.1 CAP Theorem
  • 4.2 O modelo chave/valor e o Riak
  • 4.3 Instalando o Riak
  • 4.4 Manipulando objetos
  • 4.5 O problema das escritas concorrentes
  • 4.6 Outros tipos de dados do Riak
  • 5 Mais sobre bancos chave valor e persistência poliglota
  • 5.1 Consistência x consistência eventual
  • 5.2 MongoDB, Riak ou outro banco?
  • 5.3 Armazenando playlists
  • 6 Implementando playlists em um banco colunar
  • 6.1 Instalando o Cassandra
  • 6.2 Criando tabelas no Cassandra
  • 6.3 Manipulando registros no Cassandra
  • 6.4 Buscando dados no Cassandra
  • 6.5 Armazenando as playlists
  • 6.6 Migrando o modelo de versionamento para um banco colunar
  • 7 Mais sobre bancos Colunares
  • 7.1 Como o Cassandra armazena os dados internamente
  • 7.2 Adicionando tags às listas
  • 7.3 Usando tipos especiais do Cassandra
  • 7.4 Relacionando artistas
  • 8 Relacionamentos complexos com bancos orientados a grafos
  • 8.1 Instalando o Neo4j
  • 8.2 Criando nosso primeiro nó no Neo4j
  • 8.3 Criando relacionamentos
  • 8.4 Fazendo buscas no Neo4j
  • 8.5 Explorando mais opções com o MATCH
  • 8.6 Apagando e editando nós e relacionamentos
  • 9 Mais sobre bancos orientados a grafos
  • 9.1 Importando dados para o Neo4j
  • 9.2 Mais sobre o MATCH
  • 9.3 Queries complexas
  • 10 Tudo junto e um pouco mais
  • 10.1 O conselho final
  • 10.2 Outras ferramentas relacionadas
  • 11 Referências bibliográficas

Autor

David Paniz

David Paniz é desenvolvedor de software desde 2005. Já passou por diversos tipos de empresas e projetos, grandes consultorias (prestando serviço para bancos e para BM&F), até pequenas empresas, incluindo times de desenvolvimento notáveis como o da Caelum, e das startups Baby e Nubank. Ao longo de sua carreira, trabalhou com várias linguagens e plataformas, em especial Java, Ruby e atualmente Clojure, na maior parte do tempo com foco no desenvolvimento back-end e nas práticas ágeis. Além de manter seu blog pessoal (http://www.davidpaniz.com/), já palestrou em importantes eventos nacionais, como Agile Brazil, Oxente Rails e QCon.

Dados do produto

Número de páginas:
195
ISBN:
978-85-5519-192-3
Data publicação:
07/2016. Atualizado em 10/2020

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter