MongoDB هو قاعدة بيانات NoSQL مفتوحة المصدر شهيرة تخزن البيانات في مستندات مشابهة لـ JSON مع Schemas مرنة. يستخدمها العديد من المواقع الإلكترونية والتطبيقات لتخزين وإدارة كميات كبيرة من البيانات دون الحاجة إلى تعريف الهيكل مقدمًا.
في هذا الدليل للمبتدئين عن MongoDB، سوف نتناول هيكلة MongoDB والميزات، ونعرفك على أداة Apidog.
ما هو MongoDB ولماذا نستخدمه؟
MongoDB هي قاعدة بيانات موجهة للمستندات تخزن البيانات في مستندات مرنة تشبه JSON بدلاً من الصفوف والأعمدة مثل قواعد بيانات SQL التقليدية. إليك بعض المزايا الرئيسية لاستخدام MongoDB:
- نموذج بيانات مرن - يمكن أن تختلف الحقول من مستند إلى آخر، مما يسمح لك بتخزين أنواع مختلفة من البيانات في نفس المجموعة دون الحاجة إلى ترحيلات تكلفة باهظة.
- أداء عالي - تم تصميم MongoDB لتوفير توافر عالي وقابلية التوسع. يستخدم الفهرسة لدعم استعلامات سريعة وتقسيم البيانات عبر الخوادم.
- استعلامات غنية - يدعم بناء استعلامات مرنة وقوية للبحث وتجمع البيانات. يمكن أن تعيد الاستعلامات حقولاً محددة وتضمين وظائف جافا سكريبت أيضاً.
- توفر عالي - يوفر النسخ المتماثل المضمن التبديل التلقائي وتكرار البيانات. يتم نسخ البيانات عبر خوادم متعددة.
- قابل للتوسع - يسمح التوسع الأفقي بتوسيع سعة قاعدة البيانات بسهولة عن طريق إضافة المزيد من الخوادم.
MongoDB هو خيار جيد عندما تحتاج إلى تخزين كميات كبيرة من البيانات غير المهيكلة أو شبه المهيكلة. يستخدمه العديد من التطبيقات على الويب والهواتف المحمولة، فضلاً عن أنظمة إنترنت الأشياء.
الميزات الرئيسية لـ MongoDB
إليك بعض الميزات الرئيسية لـ MongoDB:
- قاعدة بيانات موجهة للمستندات - تخزن البيانات في مستندات مرنة تشبه JSON بدلاً من الصفوف والأعمدة مثل قواعد بيانات SQL. وهذا يسمح بهياكل بيانات متداخلة وSchemas ديناميكية.
- قابلية التوسع - MongoDB قابلة للتوسع بشكل كبير عموديًا وأفقيًا. يمكنها التعامل مع الزيادة في التحميل عن طريق زيادة الذاكرة RAM والمعالج CPU أو عن طريق التوسع عبر مجموعات موزعة.
- أداء عالي - توفر MongoDB معدل نقل عالي لعمليات القراءة/الكتابة من خلال استخدام الفهارس ونماذج البيانات المضمنة. كما تستخدم تنسيق تخزين ثنائي يسمى BSON الذي يحسن سرعة المسح.
- توفر عالي - تمكين النسخ المتماثل في MongoDB والتبديل التلقائي للعمل من أجل تحقيق توافر مرتفع وتكرار. يتم نسخ البيانات تلقائيًا عبر العقد. إذا تعطل العقدة الرئيسية، سيتم انتخاب عقدة ثانوية مؤهلة كعقدة رئيسية جديدة تلقائيًا.
- استعلامات غنية - يدعم لغة استعلام مرنة ومعبرة لتصفية وفرز الحقول المتداخلة، عناصر المصفوفة، إجراء البحث النصي، إلخ. تدعم الفهارس استعلامات أسرع.
- نموذج بيانات مرن - يمكن أن تحتوي المستندات على مستندات مضمنة، مصفوفات وبيانات متداخلة لتمثيل بيانات معقدة أو متغيرة باستمرار. تسمح schemas الديناميكية بسهولة تطور نماذج البيانات.
- الشطر الآلي - مع زيادة حجم البيانات، يمكن لـ MongoDB التوسع أفقيًا عن طريق تقسيم البيانات عبر الشظايا. يعمل موجه الاستعلام تلقائيًا على موازنة الحمل عبر الشظايا. بعد ذلك، سوف نقدم لك أداة API متقدمة.
هل تدعم Apidog MongoDB؟
بالطبع. Apidog هو خادم محاكي API رائد يجعل تطوير API أسرع وأسهل. تدعم Apidog MongoDB بالكامل كواحدة من خيارات قاعدة البيانات المدمجة.
مع Apidog، يمكنك الاستفادة من MongoDB كالتخزين الدائم لمحاكيات API واختباراتها. يمكن أن تستند الاستجابات API المقدمة بواسطة Apidog إلى قاعدة بيانات MongoDB.
الفوائد الرئيسية لاستخدام Apidog مع MongoDB:
- استخدم MongoDB الحقيقي كخلفية لمحاكاة APIs. يجعل المحاكيات أكثر واقعية.

- إدارة بيانات الاختبار بشكل أكثر كفاءة. CRUD بيانات الاختبار مباشرة في MongoDB.

- ترحيل قواعد بيانات MongoDB الحالية إلى Apidog دون الحاجة لتغييرات في الكود.
- تطوير واختبار ضد سيناريوهات العالم الواقعي باستخدام مستندات MongoDB الفعلية.
- محاكاة أخطاء الاتصال بـ MongoDB، والانتظار، وسيناريوهات أخرى.
- رؤية تشغيلية لأداء MongoDB خلف APIs الخاصة بك.
من خلال دمج قوة ومرونة MongoDB مع قدرات محاكاة واختبار API القوية في Apidog، يمكنك تعزيز إنتاجية المطورين، وتقليل نقاط الاختناق في الاختبار، وإنشاء APIs جاهزة للمؤسسات.
كيفية استخدام MongoDB؟
استخدام MongoDB بسيط. بمجرد تثبيته، تبدأ عملية خادم MongoDB ثم تتصل به من Apidog. إليك الخطوات الأساسية:
الخطوة 1. كيفية تثبيت MongoDB؟
تثبيت MongoDB سهل. يمكنك تثبيته محليًا أو استخدام مزود سحابة مدارة. إليك خطوات مبسطة لتثبيت MongoDB محليًا:
(1) قم بتنزيل حزمة تثبيت MongoDB المناسبة لنظام التشغيل الخاص بك من https://www.mongodb.com/try/download/community.
(2) أنشئ دليل البيانات حيث ستخزن MongoDB قواعد بياناتك. على سبيل المثال، في Linux/Mac يمكنك استخدام /data/db.
(3) قم بتثبيت MongoDB. تحتوي الحزمة على الملف التنفيذي لخادم قاعدة البيانات mongod.
(4) قم بتشغيل mongod لبدء عملية خادم MongoDB وحدد مسار دليل البيانات الخاص بك.
على سبيل المثال:
mongod --dbpath=/data/db
سيكون خادم MongoDB قيد التشغيل محليًا على المنفذ 27017.
يمكنك تثبيت mongosh، واجهة سطر أوامر MongoDB، للتلاعب بالبيانات مباشرة.
الخطوة 2. بدء عملية خادم MongoDB.
الخطوة 3. الاتصال بخادم MongoDB من كود التطبيق الخاص بك. تتوفر برامج تشغيل MongoDB شائعة للغات مثل Node.js وJava وPython وC# وPHP.
الخطوة 4. إنشاء قاعدة بيانات ومجموعات لتخزين بياناتك في Apidog.

الخطوة 5. إدراج واستعلام وتحديث وحذف البيانات من MongoDB. واجهة API واضحة وبديهية.

الكائنات الرئيسية في MongoDB:
- قاعدة البيانات - تحتوي على مجموعات من المستندات. يمكنك أن تمتلك العديد من قواعد البيانات.
- المجموعة - تعادل الجدول في قاعدة البيانات العلائقية. تخزن المستندات.
- المستند - سجل في مجموعة، مكافئ لصف في جدول. محفوظ بتنسيق JSON مع schemas ديناميكية.
أسئلة شائعة حول دليل MongoDB
هل MongoDB أفضل من SQL؟
تمتلك كل من MongoDB وقواعد بيانات SQL مزايا وعيوب. تعد MongoDB أفضل للبيانات غير المهيكلة والمرونة، بينما يتفوق SQL في الاستعلامات المعقدة والمعاملات. تتوسع MongoDB أفقيًا بشكل أفضل بينما تجعل SQL التوسع العمودي أسهل. تتناسب حالات الاستخدام المختلفة بشكل أفضل مع كل نوع من قواعد البيانات.
هل يمكننا استخدام MongoDB في AWS؟
نعم، يعمل MongoDB بشكل جيد جداً مع AWS. تشمل الخيارات الشائعة:
- MongoDB Atlas - MongoDB كخدمة مدارة بالكامل من قبل MongoDB. تستخدم بنية AWS التحتية.
- MongoDB المدارة ذاتيًا على مثيلات EC2. تمنح مزيدًا من السيطرة.
- DocumentDB - قاعدة بيانات مدارة بالكامل متوافقة مع MongoDB من قبل AWS.
- DynamoDB - قاعدة بيانات NoSQL المدارة من قبل AWS. ليست MongoDB ولكنها لها حالات استخدام مشابهة.
الخاتمة
قدمت هذه الدورة التدريبية عن MongoDB مقدمة صديقة للمبتدئين إلى MongoDB، قاعدة البيانات الوثائقية الشهيرة المصممة للتطبيقات الحديثة. غطينا القدرات الرئيسية لـ MongoDB بما في ذلك نموذج البيانات المرن، الأداء العالي، قابلية التوسع، وميزات التوفر العالي.
MongoDB سهل البدء ويستطيع المساعدة في تلبية احتياجات تخزين وإدارة البيانات للتطبيقات الحديثة على الويب والهاتف المحمول التي تستخدم منهجيات التطوير السريعة. بالنسبة للمطورين الذين يعملون مع بيانات JSON، فإن MongoDB تستحق الاستكشاف بالتأكيد.