MONGO DB Document Field Indexing db.users.find({ name: "Rahul" }) Agar 1 lakh records hain, to MongoDB sabhi check karega πŸ˜“ db.users.createIndex({ name: 1 }) Ab wahi query bahut fast chalegi ⚑ db.users.createIndex({ age: 1 }) 1 = Ascending -1 = Descending db.users.createIndex({ name: 1, age: -1 }) db.users.getIndexes() db.users.dropIndex("age_1") Index kyon zaroori hai? βœ” Query fast hoti hai βœ” Performance behtar hoti hai βœ” Large data handle karna aasaan hota hai Isliye wahi field par index banao jo: πŸ‘‰ Baar-baar search me aati ho πŸ‘‰ where / find me use hoti ho Lekin mera sawal ye hai ki agar 500 document me name hai aur maine name ko index kar diya to MongoDB kaise kaam karega? { name: "Rahul", age: 25 } { name: "Amit", age: 30 } { name: "Neha", age: 22 } ... (500 records) Ab aapne ye index bana diya: db.users.createIndex({ name: 1 }) MongoDB alag se ek index table bana leta hai (internally B-Tree structure): Kuch aisa: Amit β†’ document address Neha β†’ document address Pooja β†’ document address Rahul β†’ document address Har name value ke saamne uska document location store ho jaata hai. Ab jab aap query chalate ho: db.users.find({ name: "Rahul" }) Bina Index: MongoDB bolega: πŸ˜“ β€œChalo 500 ke 500 documents check karte hain…” Isko kehte hain Collection Scan Index ke saath: MongoDB bolega: ⚑ β€œIndex table me Rahul dhoondo β†’ address mila β†’ seedha wahin jump” Bas 2–3 steps me record mil gaya. Isko kehte hain Index Scan Aasaan bhaasha me: Index banne ke baad MongoDB: Poore 500 documents nahi dekhta Pehle index table dekhta hai Wahin se exact document location leta hai Seedha data utha leta hai Isi liye speed bahut badh jaati hai πŸš€