Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Consulta Basica MongoDB

28 de octubre de 2016

Hola, estoy intentando aprender MongoDB y me surgen algunas preguntas puntuales.

Entiendo que MongoDB esta diseñado para una escalabilidad horizontal por lo que las relaciones entre colecciones no son lo que se espera, pero me surgio la siguiente pregunta. Yo tengo la coleccion alumnos con sus cursos:

{
    nombre: "Azure",
    cursos: [
                     { nombre:"Matematica", codigo:"M001"} ,
                     { nombre:"Fisica", codigo:"F001"},
     ]
}

Todo bien hasta ahi, supongamos que tengo muchisimos alumnos y quiero generar un listado de los cursos existentes. Como lo hago? Tengo que recorrer alumno por alumno para recolectar los diferentes cursos existentes? si es asi que pasa si existen cursos que ningun alumno tomo? Tengo que crear una nueva coleccion con los datos de los cursos?

Cual seria la manera de proceder en este caso?

Gracias


Respuestas

#1

Hola @GuidoFonticelli ,

Efectivamente la forma de hacerlo es como tú dices. Aunque MongoDb no es una base de datos relacionan en sí, el concepto de relaciones también existe. Debes crear una colección de los cursos y hacer una relación ya sea por referencia o embebiendo documentos. En la documentación oficial encuentras documentación al respecto.

El tipo de relación que escojas afecta el rendimiento, debes evaluar bien lo que quieres en tu App.

Saludos,

@miguelplazasr

30 octubre 2016, 1:14