Cuando nos referimos a la información que se almacena en una base de datos dee MongoDB, podemos distinguir dos conceptos importantes, colecciones y documentos. Los documentos son los registros que almacenamos, estos pueden contener propiedades.
Si comparamos con una base de datos SQL, estos documentos son similares a las filas que almacenamos en una tabla. Son similares en que representan los registros guardados, sin embargo, mientras que una tabla tiene una serie de columnas predefinidas, en un documento podemos guardar la información que necesitemos, sin una estructura definida.
Y así, mientras las filas se guardan en tablas, los documentos se guardan en colecciones. Las colecciones representan un grupo de documentos similares entre sí, de manera que si necesitas guardar usuarios, tu colección sería de usuarios y cada documento un usuario distinto.
Decimos que Mongoose es un ODM, un Object Document Mapper, lo que significa que aunque ene la base de datos tenemos documentos, estos se representan como objetos cuando usamos Mongoose. La parte de mapper hace referencia a como un documento es representado por un objeto, y otro documento por un objeto distinto.
Los ODM son similares a los ORM, que usamos en bases de datos relacionales, su objetivo como el de Mongoose es el de proveer una capa adicional de abstracción entre nuestro código y el motor de la base de datos, esta abstracción permite que librerías como Mongoose extiendan la funcionalidad del motor de la base de datos y nos permiten trabajar de manera más productiva y expresiva con la base de datos.
A lo largo del curso hablaremos mucho de documentos, de colecciones, por lo que es importante tener en cuenta a qué nos referimos con estos términos.
-
check_circle_outlineMódulo 1 | 4 clases
Introducción
expand_more -
check_circle_outlineMódulo 2 | 9 clases
El esquema y modelos
expand_more -
check_circle_outlineMódulo 3 | 5 clases
Operaciones CRUD
expand_more -
check_circle_outlineMódulo 4 | 5 clases
Otras consultas
expand_more -
check_circle_outlineMódulo 5 | 8 clases
Relaciones
expand_more
0 comentario(s)