Vantagens e limitações de bancos chave-valor

Conceitos de NoSQL

Miriam Antona

Software engineer

Vantagens - muito simples

  • Tupla chave-valor
  • Sem esquema/tipos definidos
  • Operações básicas:
    • Put
      • insere uma nova tupla chave-valor
      • atualiza o valor se a chave já existir
    • Get
      • retorna o valor por uma chave dada
    • Delete
      • remove uma chave e seu valor
  • Operações rápidas
Conceitos de NoSQL

Vantagens - flexível

  • Permitem mudar tipos de dados
    • userID:123 = 123456
    • userID:123 = "Miriam"
  • Adicionar atributos extras
    • user:457:preferences = {"language" : "en:US"}
    • user:457:preferences = {"language" : "en:US", "color" : "green","timezone" :"GTM-4"}
Conceitos de NoSQL

Vantagens - informação em memória

  • Leituras/gravações rápidas
  • Pode perder dados
  • Combina persistência em disco e memória
Conceitos de NoSQL

Vantagens - escalabilidade

  • Escalam horizontalmente
  • Sharding
    • distribui partes dos dados em vários servidores

Explicação visual de sharding. Os dados são distribuídos entre os servidores.

Conceitos de NoSQL

Vantagens - escalabilidade

  • Escalam horizontalmente
  • Sharding
    • distribui partes dos dados em vários servidores

Explicação visual de sharding. Os dados são distribuídos entre os servidores.

Conceitos de NoSQL

Vantagens - escalabilidade

  • Escalam horizontalmente
  • Sharding
    • distribui partes dos dados em vários servidores

Explicação visual de sharding. Os dados são distribuídos entre os servidores.

Conceitos de NoSQL

Vantagens - escalabilidade

  • Escalam horizontalmente
  • Sharding
    • distribui partes dos dados em vários servidores

Explicação visual de sharding. Os dados são distribuídos entre os servidores.

Conceitos de NoSQL

Limitações

  • Pesquisa só por chave
    • Problema se não soubemos a chave
    • Alguns bancos chave-valor adicionaram funções
      • buscar por valor
      • adicionar índices secundários
      • buscar por várias chaves ao mesmo tempo
    • Consultas não complexas
Conceitos de NoSQL

Vamos praticar!

Conceitos de NoSQL

Preparing Video For Download...