Capítulo 8 NoSQL

El modelo NoSQL, por “not only SQL” es un modelo de almacenamiento de datos que a diferencia del modelo relacional no es tabular sino que permite diversos tipos según el modelo de datos. Los principales son documentos, pares clave-valor (key-value), wide-colum, grafos. Comparten en común que son bastante más flexibles a la hora de almacenar datos y son más fáciles de escalar con grandes volumenes de datos.

…

8.1 Modelo Documental

Este modelo se basa en el almacenamiento de documentos en un formato JSON que esta compuesto por pares campo:valor que permite datos simples y/o complejos según su jerarquía.

-- modelo simple de documento JSON
{
  name  : "Carlos Araneda",
  age   : 29,
  alias : "caraneda",
  member : "Unilever",
  address  : "San Antonio 456, Concepción",
  zipCodes : 1234,
  phone: "+56978872845"
}
  
-- modelo complejo de JSON
{
  name  : "Carlos Araneda",
  age   : 29,
  alias : "caraneda",
  memberOf : ["Unilever", "Sanatorio"],
  address  : { street : "San Antonio", number : 234, city: "Concepción" },
  zipCodes : { zipCode : 4130000, zone: "Concepción" },
  phone : { work: "+5641234670", cell: "+56978872845", home: "+5641890345"}
}

Los valores están constituidos por:

  • texto
  • Números (enteros y decimales)
  • arreglos
  • documentos
  • arreglos de documentos

Este tipo de construcción permite reducir en gran medida las “relaciones” requeridas entre tablas en el modelo relacional.

alias work home cell
caraneda +5641234670 +5641890345 +56978872845
paolis +5698007896
paravena +5641567908

8.2 Key-Value

…

8.3 Grafos

…

8.4 Wide-Column

…