Todos los datos que se guardan en MongoDB, son almacenados en documentos JSON.
Los documentos JSON se componen de dos estructuras básicas: arreglos y diccionarios. Los arreglos son un conjunto de valores que se encuentran encerrados entre corchetes cuadrados []
y los diccionarios son mapas asociativos representados por llave:valor
que se encuentran encerrados entre corchetes {}
.
Cada una de estas estructuras pueden contener a la otra o a si misma, es decir, una arreglo puede contener más arreglos o quizás un diccionario, así mismo, los diccionarios pueden contener diccionarios y también arreglos.
El concepto para los diccionarios de llave:valor
se refiere a que podemos insertar valores con algún identificador para reconocerlo más facilmente, como por ejemplo si tuvieramos un diccionario con datos personales sería algo como esto:
{"nombre" : "Jason", "edad" : 20}
Como se pudo apreciar en el ejemplo anterior, un diccionario puede tener varios valores, éstos deben separarse por una coma, además los strings siempre deberían estar entre comillas, en cambio un integer debe estar sin comillas para poder hacer operaciones con ese dato de ser necesario en el futuro.
Como se dijo anteriormente, un diccionario puede contener otros diccionarios y arreglos dentro, así que continuaré con el ejemplo de datos personales para ingresar datos dentro de un arreglo y de otro diccionario:
{
"nombre" : "Jason",
"edad" : 20,
"email" : {
"email personal" : "[email protected]",
"email corporativo" : "[email protected]"
},
"frutas favoritas" : [pera, manzana, ciruela]
}
De la anterior manera se puede apreciar como se usan arreglos y diccionarios dentro de un diccionario, teniendo en cuenta esto es más fácil organizar varios datos de una persona en un mismo documento, haciendo (en el caso de MongoDB) que no se necesiten de otras tablas adicionales para ingresar varios datos personales a una persona, como lo son en este caso las email
y frutas favoritas
.
Para saber más del tema, puedes visitar www.json.org
para más información y entender mucho mejor que es y como se usa JSON
.