دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۲۸
  • فروردین

جلسه ۲۷ : کوئری های تحت پوشش در MongoDB

  • دسته‌بندی‌ها :
جلسه ۲۷ : کوئری های تحت پوشش در MongoDB
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، در این فصل از آموزش های MongoDB ، ما در مورد کوئری های تحت پوشش در MongoDB بحث خواهیم کرد.از آنجا که تمام فیلدهای موجود در کوئری، بخشی از یک index هستند، MongoDB با شرایط کوئری مطابقت دارد و نتیجه را با استفاده از همان index بدون در نظر گرفتن اسناد جستجو می کند.

      کوئری های تحت پوشش در MongoDB چیست ؟

      همانطور که در اسناد MongoDB آمده است ، کوئری های تحت پوشش کوئری است که :

      تمام فیلدهای کوئری جزئی از یک index باشند.

      تمام فیلدهای بازگشت داده شده در کوئری در یک index هستند.

      همچنین از آنجایی که index ها در RAM موجود هستند، داده های استخراج شده از شاخص ها بسیار سریعتر از داده های استخراج شده با اسنادهای اسکن شده  می باشند.

      استفاده از کوئری های تحت پوشش

      برای بررسی کوئری های تحت پوشش، سند زیر را در مجموعه users بررسی کنید :

      مثال : 

      در قدم اول ترکیب index را برای مجموعه users روی فیلدهای gender و user_name با استفاده از کوئری زیر بسازید :

      مثال : 

      اکنون این index کوئری زیرا پوشش می دهد :

      مثال : 

      بدیهی است که در کوئری بالا، MongoDB به دنبال اسناد پایگاه داده نخواهد بود.

      در عوض، داده های مورد نیاز از داده های index شده که بسیار سریع است، می گیرند.

      از آنجا که index ما فیلد id را شامل نمی شود، ما به صراحت آن را از مجموعه نتیجه کوئری حذف کرده ایم.

      MongoDB به طور پیش فرض فیلد id را در هر کوئری برمی گرداند.

      بنابراین کوئری زیر داخل index ایجاد شده بالا پوشش داده نمی شود :

      مثال : 

      کلام آخر

      در نهایت، به یاد داشته باشید که یک index نمی تواند کوئری را پوشش دهد که : هر یک از فیلدهای index شده یک آرایه باشد و هر یک از فیلدهای index شده، زیرمجموعه باشد.

      QR:  جلسه ۲۷ : کوئری های تحت پوشش در MongoDB
      به اشتراک بگذارید