Use o código e tenha 10% de desconto!

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

David Paniz

SOBRE O LIVRO

Este livro se destina a desenvolvedores e arquitetos de software que já tenham experiência com algum tipo de banco de dados relacional ou NoSQL e querem aprender mais sobre os tipos de bancos de dados e entender os impactos que a escolha deles pode trazer para sua arquitetura e seus clientes.

No decorrer do livro, quando um novo conceito ou funcionalidade é apresentado, normalmente existe a comparação com os bancos relacionais e o SQL. Então, ter um conhecimento prévio sobre conceitos básicos de bancos de dados, como tabelas, joins, forma normal (normalização de dados) e um pouco de SQL, ajudará muito o entendimento.

Apesar de o livro abordar exercícios práticos de programação, ele foca totalmente na camada de persistência, com alguns exemplos de código em JavaScript, erlang, bash, e algumas query languages. Por isso, não existe a necessidade de conhecer bem alguma linguagem de programação específica, nem mesmo as utilizadas, mas é importante ter noções de programação para compreender e reproduzir os códigos apresentados.

A maior parte das tecnologias apresentadas pode ser instalada em Windows, Mac ou Linux, e todas elas possuem imagens prontas para rodar em docker containers. Apesar da preferência por ambientes baseados em Unix, é possível reproduzir quase todos os exercícios em qualquer sistema operacional.

 

Sumário

  • 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 Casandra
    • 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

Dados do produto

Número de páginas:
177
ISBN:
978-85-5519-192-3
Data publicação:
07/2016

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter