Prima due concetti. La tua applicazione è il Cliente , Mongodb è il Server .
La differenza principale è quella con .save()
hai già un oggetto nel tuo codice lato client o hai dovuto recuperare i dati dal server prima di riscriverlo e stai riscrivendo tutto.
D'altra parte .update()
non richiedono che i dati vengano caricati sul client dal server. Tutta l'interazione avviene lato server senza essere richiamata sul client. Quindi .update()
può essere molto efficiente in questo modo quando aggiungi contenuto a documenti esistenti.
Inoltre, c'è il multi
parametro a .update()
che consente di eseguire le azioni su più di un documento che soddisfa la condizione della query.
Ci sono alcune cose nei metodi di convenienza che perdi quando usi .update()
come una chiamata, ma i vantaggi per determinate operazioni sono il "compromesso" che devi sopportare. Per ulteriori informazioni su questo e sulle opzioni disponibili, vedere la documentazione.
In breve .save()
è un'interfaccia lato client, .update()
è lato server.