Diferencia entre MongoDB y Mangosta


Quería usar la base de datos mongodb, pero me di cuenta de que hay dos bases de datos diferentes con su propio sitio web y métodos de instalación: mongodb y mongoose. Así que me planteé esta pregunta: "¿Cuál uso?".

Entonces, para responder a esta pregunta, pregunto a la comunidad si podría explicar cuáles son las diferencias entre estos dos. Y si es posible pros y contras? Porque realmente se ven muy similares a mí.

Author: Ravindra Galav, 2015-02-25

5 answers

Asumo que ya sabe que MongoDB es un sistema de base de datos NoSQL que almacena datos en forma de documentos BSON. Su pregunta, sin embargo, es sobre los paquetes para Node.js.

En términos de Nodo.js, mongodb es el controlador nativo para interactuar con una instancia de mongodb y mongoose es una herramienta de modelado de objetos para MongoDB.

Mongoose se basa en el controlador MongoDB para proporcionar a los programadores una forma de modelar su datos.

EDITAR: No quiero comentar cuál es mejor, ya que esto haría que esta respuesta fuera obstinada. Sin embargo, enumeraré algunas ventajas y desventajas de usar ambos enfoques.

Usando Mongoose, un usuario puede definir el esquema para los documentos de una colección en particular. Proporciona mucha comodidad en la creación y gestión de datos en MongoDB. En el lado negativo, aprender mangosta puede tomar algún tiempo, y tiene algunas limitaciones en el manejo de esquemas que son bastante complejo.

Sin embargo, si su esquema de colección es impredecible, o si desea una experiencia como Mongo-shell dentro de Node.js, a continuación, seguir adelante y utilizar el controlador MongoDB. Es el más simple de recoger. La desventaja aquí es que tendrá que escribir mayores cantidades de código para validar los datos, y el riesgo de errores es mayor.

 125
Author: ZeMoon,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-09-30 08:24:27

Mongo es una base de datos NoSQL.

Si no desea usar ningún OR para sus modelos de datos, también puede usar el controlador nativo mongo.js: https://github.com/mongodb/node-mongodb-native .

Mongoose es uno de losm que nos da funcionalidad para acceder a los datos de mongo con consultas fácilmente comprensibles.

Mangosta juega un papel de abstracción sobre su modelo de base de datos.

 27
Author: Anubhav Singh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-20 10:50:55

Una diferencia más que encontré con respecto a ambos es que es bastante fácil connect to multiple databases con mongodb native driver mientras que tienes que usar soluciones alternativas en mongoose que todavía tienen algunos inconvenientes.

Así que si quieres ir para una aplicación multitenant, ir para mongodb controlador nativo.

 7
Author: Rahul,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-11-19 12:51:39

Mongodb y Mangosta son dos cosas completamente diferentes!

Mongodb es la propia base de datos , mientras que Mongoose es una herramienta de modelado de objetos para Mongodb

EDITAR: Como se señaló MongoDB es el paquete npm, gracias!

 0
Author: Secret,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-09-24 06:38:53

Mongodb y Mongoose son dos controladores diferentes para interactuar con la base de datos MongoDB.

Mongoose : biblioteca de modelado de datos de objetos (ODM) que proporciona un entorno de modelado riguroso para sus datos. Utilizado para interactuar con MongoDB, hace la vida más fácil al proporcionar comodidad en la administración de datos.

Mongodb: controlador nativo en el Nodo.js para interactuar con MongoDB.

 0
Author: dhaker,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-08-11 10:42:25