वैसे कोई रास्ता नहीं है $lookup
वास्तविक वीडियो ऑब्जेक्ट पर टिप्पणी आईडी की सूची रखने से तेज़ होगा। मेरा मतलब है कि आपको एक whole other request
करना होगा मोंगो के लिए अब उन्हें पाने के लिए। तो प्रदर्शन के लिहाज से जाहिर तौर पर लुकअप में समय लगेगा। यह माना जा रहा है कि आप mongoose populate
. का उपयोग नहीं कर रहे हैं उन टिप्पणी आईडी को संदर्भित वस्तुओं में "रूपांतरित" करने के लिए।
यदि आप वीडियो से टिप्पणियों को हटा रहे हैं (साथ ही वास्तविक गणना प्रोप) और लुकअप करना जाने का रास्ता है। चूंकि आप तुरंत अपने तर्क में मिलान कर रहे हैं और फिर एक साधारण lookup
. कर रहे हैं मैं नहीं देखता कि यह आपके लिए कैसे एक अड़चन होगी। साथ ही आप अपने एग्रीगेशन को ऑप्टिमाइज़/बदल/ट्यून कर सकते हैं स्पष्ट करें
आदि.
आपका वीडियो स्कीमा इस तरह से बहुत साफ होगा:
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 });