كما هو الحال مع أي قاعدة بيانات ، تعد الفهارس هياكل بيانات أساسية في MongoDB. إنها تعزز استعلامات قاعدة البيانات السهلة وتتيح لك تخزين جزء من مجموعتك وترتيبها في حقول فريدة. تدعم الفهارس أيضًا الاستعلام عن النطاق دون وجود عوائق.

إذا كان تطبيقك يستخدم MongoDB ، فأنت تريد الاستفادة من قوة الفهارس لجعل استعلاماتك أسرع وأكثر كفاءة. إذن ما هي الفهارس في MongoDB ، وكيف يمكنك إنشاؤها؟

ما هي الفهارس في MongoDB؟

تتيح لك الفهارس في MongoDB تحديد أولويات بعض الحقول في المستند وتحويلها إلى معلمات استعلام لاحقًا. عند إنشاء مجموعة ، يقوم MongoDB بإنشاء فهرس معرف افتراضي. ولكن يمكنك إضافة المزيد إذا كانت لديك استفسارات أو احتياجات ترتيب أعلى.

تمنع الفهارس الفريدة أيضًا التكرارات أثناء إدخال البيانات. إنها مفيدة لرفض الإدخالات الموجودة بالفعل في قاعدة البيانات. لذلك يمكنك استخدام فهرسة فريدة لأسماء المستخدمين وحقول البريد الإلكتروني ، على سبيل المثال.

تساعدك الفهارس في الحصول على ما تريده تحديدًا باستخدام تنسيق الاستعلام المحدد بالكمية المطلوبة دون مسح مجموعة كاملة. عند إنشاء فهرس ، يمكنك تحديد الطريقة التي تريد بها فرز بياناتك متى طلبت الاستعلام عنها.

instagram viewer

على سبيل المثال ، إذا قررت فرز نقاط البيانات حسب تواريخ إدخالها دون استخدام فهرس ، فستوفر عادةً معايير الاستعلام وترتيب الفرز.

لنفترض أنك تريد ترتيب الأعمار أعلى من رقم معين حسب التاريخ التنازلي لإدخالاتها. عادة ما يبدو الاستعلام الخاص بك كما يلي:

db.collectionName.find ({age: {$ gt: 50}}). sort ({date: -1})

ولكن إذا كان لديك فهرس في تواريخ الإدخال ، فستحتاج فقط إلى تقديم معايير الاستعلام. هذا لأنك قمت بالفعل بفرز التاريخ تنازليًا أثناء إنشاء الفهرس.

في هذه الحالة ، يصبح الاستعلام أعلاه:

db.collectionName.find ({العمر: {$ gt: 50}})

كيفية إنشاء فهرس في MongoDB

يمكنك إنشاء فهارس في MongoDB باستخدام واجهة shell المدمجة. إذن هذا ما سنستخدمه في هذا البرنامج التعليمي.

ومع ذلك ، لا توجد الفهارس وحدها. يجب أن يكون لديك إنشاء قاعدة بيانات ومجموعة قبل أن تتمكن من إنشاء فهرس.

كما ذكرنا سابقًا ، تتمثل إحدى الميزات البارزة للفهرسة في أنها تتيح لك تحديد معايير الفرز أثناء إنشاء الفهرس.

على سبيل المثال ، يبدو الفهرس الذي يرتب العمر بترتيب عكسي كما يلي:

db.userCollection.createIndex ({age: -1})

العدد الصحيح السالب (-1) في الكود يخبر MongoDB بترتيب العمر بترتيب عكسي كلما استفسرت عن البيانات باستخدام ملف عمر فهرس. وبالتالي ، قد لا تحتاج إلى تحديد ترتيب الفرز أثناء الاستعلامات لأن الفهرس يعالج ذلك بالفعل.

لإنشاء فهرس لنفس الحقل تصاعديًا ، استبدل -1 مع 1:

db.userCollection.createIndex ({العمر: 1})

على الرغم من وجود أنواع فهرس أخرى في MongoDB ، فهذه هي طريقة إنشاء النماذج الفردية والمركبة — نظرًا لأنها الأكثر استخدامًا.

ولكن قبل أن نمضي قدمًا ، تأكد من ذلك إنشاء MongoDB الخادم على جهاز الكمبيوتر الخاص بك. إذا كنت قد فعلت ذلك بالفعل ، فافتح غطاء MongoDB وتابعه.

قم بإنشاء فهرس واحد في MongoDB

الفهرسة الفردية في MongoDB واضحة ومباشرة. للبدء ، حدد قاعدة بيانات تحتوي بالفعل على مجموعات.

قل اسم قاعدة البيانات لدينا هو MUO:

استخدم MUO

بمجرد اختيار قاعدة بيانات ، استخدم ملف createIndex () الأمر في الغلاف لإنشاء فهرس واحد.

على سبيل المثال ، لإنشاء فهرس اسم مستخدم واحد في مجموعة واستخدامه للاستعلام بترتيب عكسي:

db.collectionName.createIndex ({اسم المستخدم: -1})

فهرسة Multikey في MongoDB

فهارس Multikey مفيدة لفهرسة حقل في مصفوفة بيانات معقدة. على سبيل المثال ، قد تحتوي المجموعة على بيانات معقدة للمستخدمين مع معلوماتهم في مصفوفة أخرى. على سبيل المثال ، قل الاسم والطول والعمر.

يمكنك إنشاء فهرس متعدد المسارات على ارتفاع كل مستخدم في هذه المصفوفة كما يلي:

db.customers.createIndex ({user.height: 1})

ال ارتفاع في الكود أعلاه مجموعة فرعية من المستعمل حقل.

قم بإنشاء فهرس مركب

يحتوي الفهرس المركب على أكثر من فهرس. لإنشاء فهرس مركب للعنوان ونوع المنتج في مجموعة العملاء ، على سبيل المثال:

db.customer.createIndex ({العنوان: 1 ، المنتجات: 1})

نظرًا لأنك لم تقدم اسمًا أثناء إنشاء الفهرس أعلاه ، يقوم MongoDB بإنشاء واحد افتراضيًا. ولكنه يفصل اسم كل فهرس بشرطة سفلية. لذلك فهي أقل قابلية للقراءة ، خاصة إذا كان لديك أكثر من فهرسين في المركب.

لتحديد اسم عند إنشاء فهرس مركب:

db.customers.createIndex ({location: 1، products: 1، weight: -1}، {name: "myCompundIndex"})

احصل على كافة الفهارس في مجموعة

لعرض جميع الفهارس في مجموعة:

db.collectionName.getIndexes ()

يخرج الكود أعلاه جميع الفهارس في مجموعة مسماة.

تنظيم قاعدة البيانات الخاصة بك مع الفهارس

تعمل الفهرسة في MongoDB على تقليل زمن انتقال وقت التشغيل عند تنفيذ الاستعلامات المتزامنة. بالإضافة إلى ذلك ، فهي تساعدك على تنظيم قاعدة البيانات الخاصة بك وجعلها أكثر سهولة. كما رأيت ، فإن إنشاء الفهارس في MongoDB ليس معقدًا ، بعد كل شيء. الأمثلة هنا كافية لتبدأ في إنشاء الفهرس. ومع ذلك ، لرؤية الفهارس الخاصة بك في الممارسة العملية ، تحتاج إلى معرفة كيفية عمل الاستعلام في MongoDB.

كيفية تنفيذ عمليات CRUD في MongoDB

يعد التعرف على موقع MongoDB أمرًا صعبًا. ضرب الأرض مع الجري مع CRUD.

اقرأ التالي

شاركسقسقةبريد الالكتروني
مواضيع ذات صلة
  • برمجة
  • بايثون
  • برمجة
  • قاعدة البيانات
عن المؤلف
إيدوو أوميسولا (119 مقالة منشورة)

إن Idowu شغوف بأي شيء يتعلق بالتقنيات الذكية والإنتاجية. في أوقات فراغه ، يلعب بالبرمجة ويتحول إلى رقعة الشطرنج عندما يشعر بالملل ، لكنه أيضًا يحب الابتعاد عن الروتين بين الحين والآخر. يحفزه شغفه بإظهار طريقة حول التكنولوجيا الحديثة للناس على كتابة المزيد.

المزيد من Idowu Omisola

اشترك في نشرتنا الإخبارية

انضم إلى النشرة الإخبارية لدينا للحصول على نصائح تقنية ومراجعات وكتب إلكترونية مجانية وصفقات حصرية!

انقر هنا للاشتراك