Yah tidak mungkin $lookup
akan lebih cepat daripada memiliki daftar id komentar pada objek video yang sebenarnya. Maksud saya, Anda harus melakukan whole other request
ke mongo untuk mendapatkannya sekarang. Jadi kinerja bijaksana jelas pencarian akan menambah waktu. Itu dengan asumsi Anda tidak menggunakan mongoose populate
untuk "mengubah" id komentar tersebut menjadi objek yang direferensikan.
Jika Anda kemudian menghapus komentar dari video (serta prop count sebenarnya) dan melakukan pencarian adalah cara yang harus dilakukan. Karena Anda langsung mencocokkan argumen Anda dan kemudian melakukan lookup
simple sederhana Saya tidak melihat bagaimana ini akan menjadi hambatan bagi Anda. Anda juga dapat mengoptimalkan/mengubah/menyetel agregasi Anda melalui jelaskan
dll.
Skema video Anda akan cukup bersih seperti itu:
const VideoSchema = new mongoose.Schema({
caption: {
type: String,
trim: true,
maxlength: 512,
required: true,
},
owner: {
type: mongoose.Schema.ObjectId,
ref: 'User',
required: true,
},
// some more fields
}, { timestamps: true });