最初に2つの概念。アプリケーションはクライアントです 、Mongodbはサーバー 。
主な違いは、.save()
を使用することです クライアント側のコードにすでにオブジェクトが含まれているか、データを書き戻す前にサーバーからデータを取得する必要があり、すべてを書き戻しています。
一方、.update()
しません サーバーからクライアントにデータをロードする必要があります。すべての対話は、クライアントに取得せずにサーバー側で行われます。したがって、.update()
このようにして、既存のドキュメントにコンテンツを追加するときに非常に効率的になります。
さらに、multi
があります .update()
へのパラメータ これにより、クエリ条件に一致する複数のドキュメントに対してアクションを実行できます。
.update()
を使用すると、コンビニエンスメソッドで失われることがいくつかあります。 呼び出しとしてですが、特定の操作の利点は、負担しなければならない「トレードオフ」です。これと利用可能なオプションの詳細については、ドキュメントを参照してください。
要するに.save()
クライアント側のインターフェース、.update()
サーバー側です。