التجميع في MongoDB: خط الأنابيب والنحو

نشرت: 2020-09-23

جدول المحتويات

مقدمة

MongoDB هو شكل من أشكال وسيط تخزين البيانات كبير الحجم. تعمل كقاعدة بيانات غير علائقية مع استعلامات المستندات. الوحدة الأساسية في MongoDB هي أزواج ذات قيمة أساسية للمستندات في مجموعة MongoDB. أصبحت وسيلة مفيدة للغاية من أوائل العقد الأول من القرن الحادي والعشرين.

التجميع في MongoDB هو إطار عمل يسمح لنا بأداء مهام حسابية متنوعة على المستندات في مجموعة واحدة أو أكثر من مجموعات MongoDB. إنها طريقة فعالة لإنشاء التقارير أو مجموعة من مقاييس البيانات للتفسير من مستندات مختلفة. يُطلق على إطار العمل اسم MongoDB لأنه يجمع عدة مستندات لتكوين نتائج موحدة ومجمعة.

يحتوي التجميع في MongoDB بشكل أساسي على إطار عمل خط الأنابيب. يتمثل المفهوم الأساسي الأساسي لخط الأنابيب في أن المدخلات مأخوذة من مجموعة MongoDB ، ويتم تمرير المستندات عبر سلسلة من المراحل لإنتاج مخرجات موحدة في النهاية. هذه الفكرة تشبه إلى حد كبير مفهوم خط أنابيب Linux ، أي Bash.

الميزات الرئيسية لـ MongoDB

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

  • تعتبر MongoDB ، باعتبارها قاعدة بيانات NoSQL ، مرنة للغاية في الاستخدام. إنه مستند المنحى.
  • يمكن لأزواج القيم والمفاتيح فهرسة الحقول الموجودة داخل المستند. هذا يمثل ميزة خاصة جدًا لـ MongoDB.
  • يقسِّم MongoDB مجموعة بيانات كبيرة إلى مثيلات صغيرة باستخدام مفهوم التجزئة. بهذه الطريقة ، يمكن تشغيله على العديد من الخوادم ، مع الحفاظ على توازن المثيلات.
  • يمكن للاستعلامات في MongoDB إرجاع حقول معينة في المستند.

قراءة: أفكار ومواضيع مشروع MongoDB

لماذا التجميع في MongoDB مفيد؟

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

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

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

راجع: أوامر MongoDB الأكثر شيوعًا

ما هو خط التجميع؟

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

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

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

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

بناء الجملة

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

db.Collection_Name.aggregate ([

{$ match: {“_id_field_”: value}}

{$ group: {“_id_field_”: value}}

{الترتيب بالدولار: {“_id_field_”: القيمة}}

]) ؛

أوامر خط الأنابيب

  • الأوامر الهيكلية: تساعد الأوامر الهيكلية في تنظيم المستندات وجعلها مناسبة لعمليات معالجة البيانات. هناك نوعان من الأوامر الهيكلية الأساسية ، والتي يتم استخدامها في كثير من الأحيان.
  1. المطابقة : هذه هي مرحلة التصفية. هذه المرحلة تقطع الوثائق التي لا تهم. هذا الأمر يشبه إلى حد كبير وظيفة WHERE في SQL.

db.customers.aggregate ([

{$ match: {“zip”: 700068}}

]) ؛

يُرجع جزء الكود أعلاه مستندات جميع العملاء الذين يعيشون في الرمز البريدي 700068 ، من مجموعات MongoDB.

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

db.customers.aggregate ([

{$ match: {“zip”: 700068}}

{

مجموعة $: {

_id: لاغية ،

عدد: {

المجموع بالدولار: 1

}

}

]) ؛

تتيح مجموعة $ تجميع المستندات لأداء عمليات التحويل. يتعامل الأمر _id مع حفظ حقول البيانات.

2. الفرز : يساعد هذا في فرز المستندات بترتيب تصاعدي أو تنازلي بناءً على أي حقل استعلام محدد.

db.customers.aggregate ([

{$ match: {“zip”: 700068}}

{

مجموعة $: {

_id: لاغية ،

عدد: {

المجموع بالدولار: 1

}

}

{

تصنيف بالدولار: {

{“zip”: -1}

}

}

]) ؛

سيؤدي هذا إلى فرز المستندات بناءً على الرمز البريدي الخاص بهم.

  • الأوامر التشغيلية : هناك العديد من الأوامر التشغيلية في MongoDB Aggregation ، والتي تساعد في أداء مهام البيانات. بعض من أهم الأوامر موضحة أدناه:
  1. Summation ($ sum) : إرجاع جميع القيم من المستندات.
  2. الحد الأقصى ($ max) : إخراج الحد الأقصى لقيمة متغير معين من جميع المستندات.
  3. Minimum ($ min) : إرجاع الحد الأدنى لقيمة متغير.
  4. المتوسط ​​($ avg) : حساب متوسط ​​القيم من كل مستند.
  5. Push ($ push) : يُلحق قيمة بمصفوفة.
  6. First ($ first) : إرجاع المستند الأول من مجموعة.
  7. Last ($ last) : إرجاع آخر مستند من مجموعة.
  8. Adding to Set (addToSet $) : لإلحاق قيمة بمصفوفة من المستند دون تكراره.

اقرأ أيضًا: نطاق MongoDB المستقبلي

تغليف

في عصر البيانات الضخمة هذا ، تعد قواعد البيانات غير العلائقية مفيدة جدًا للتعامل مع مجموعات العينات الكبيرة. في الوقت الحاضر ، اعتاد مجال علم البيانات وتطويرها جيدًا على استخدام MongoDB. هذا الإطار قابل للاستخدام مع لغات شائعة مثل Java و JavaScript و Python والعديد من اللغات الأخرى. يمكن أن يؤدي امتلاك معرفة بـ MongoDB واليد السليمة مع إطار التجميع إلى تحقيق مهنة الأحلام.

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

في هذه الحالة ، ستساعدك هذه الدورة التدريبية بالتأكيد في اكتساب كل المعرفة المتعلقة بهياكل البيانات والخوارزميات ، وبرمجة Java ، وأساس قاعدة البيانات ، و HTML ، و CSS ، و JavaScript ، و Angular ، و Java ، والتحليل والتصميم الموجه للكائنات.

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

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

قيادة الثورة التكنولوجية المدفوعة بالبيانات

برنامج الشهادة المتقدم في البيانات الضخمة من معهد IIIT بنغالور