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
…