sql >> Base de Datos >  >> NoSQL >> MongoDB

Mongoose:¿cuáles son las diferencias entre Model.create y Collection.insert?

En Mongoose, hay Model.create y Collection.insert (este último no es estrictamente parte de Mongoose, sino del controlador MongoDB subyacente).

Según el desarrollador de Mongoose, son básicamente iguales cuando se les llama con una serie de documentos, aunque mirar el código me hace pensar que hay diferencias sutiles (advertencia :No he mirado el código que bueno, puede que me equivoque en lo siguiente):

  • usando Model.create llamará a cualquier validador/gancho declarado en su esquema;
  • Model.create hace un .save para cada documento de la matriz, lo que da como resultado N llamadas a la base de datos (donde N es el número de documentos en la matriz); Collection.insert realiza una gran llamada a la base de datos;