MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Mongoose:was sind die Unterschiede zwischen Model.create und Collection.insert

In Mongoose gibt es Model.create und Collection.insert (Letzteres ist nicht unbedingt Teil von Mongoose, sondern des zugrunde liegenden MongoDB-Treibers).

Laut dem Mongoose-Entwickler sind sie im Grunde gleich, wenn sie mit einer Reihe von Dokumenten aufgerufen werden, obwohl ein Blick auf den Code mich denken lässt, dass es subtile Unterschiede gibt (Warnung :Ich habe mir den Code dass nicht angesehen gut, also könnte ich mich in folgendem irren):

  • unter Verwendung von Model.create ruft alle in Ihrem Schema deklarierten Validatoren/Hooks auf;
  • Model.create macht ein .save für jedes Dokument im Array, was zu N führt Datenbankaufrufe (wobei N ist die Anzahl der Dokumente im Array); Collection.insert führt einen großen Datenbankaufruf durch;