
مونغو دي بي
إتقان قواعد البيانات NoSQL وبناء مشاريع حقيقية
ماذا ستتعلم؟
- فهم مفهوم NoSQL وفوائد استخدامه
- تثبيت MongoDB وإعداد Mongo Shell
- إنشاء قواعد البيانات والتعامل مع الـ Collections
- فهم بنية الـ Document وتنسيق BSON والـ Schema
- تنفيذ عمليات الإضافة والبحث والتحديث والحذف CRUD
- استخدام الوثائق المتداخلة ومعاملات المقارنة والمنطق
- البحث بالتعبير النمطي regex
- استخدام الفهرسة Index لتسريع البحث
- تحليل البيانات بإطار Aggregation
- ربط MongoDB مع NodeJS وبناء مشروع تسجيل المستخدمين
عن الدورة
يشرح هذا الكورس قاعدة البيانات مونغو دي بي MongoDB من الصفر، وهي قاعدة بيانات NoSQL تخزن البيانات في مستندات بدل الجداول. يبدأ بمقدمة الدورة ونظرة عامة على مفهوم NoSQL وفوائده، ثم تثبيت MongoDB وإعداد بيئة العمل وأداة Mongo Shell. بعد ذلك تتعلم إنشاء قواعد البيانات والتعامل مع الـ Collections وبنية الـ Document وتنسيق BSON وأنواع البيانات ومفهوم الـ Schema. ثم تنتقل إلى عمليات الـ CRUD، أي الإضافة بـ insertOne وinsertMany، والبحث بـ find وfindOne، والتحديث والحذف، وbulkWrite وupsert. وتشرح الدروس الوثائق المتداخلة ومعاملات المقارنة والمعاملات المنطقية والبحث بالتعبير النمطي regex، ثم الفهرسة Index وإطار Aggregation، وأخيرا الربط مع NodeJS ومشروع عملي لتسجيل المستخدمين. يناسب الكورس المبرمجين وطلاب علوم الحاسب ومن يريد تعلم قواعد البيانات، ولا يحتاج إلى خبرة سابقة بقواعد البيانات. وفي النهاية ستكون قادرا على تصميم قاعدة بيانات MongoDB وكتابة استعلاماتها وربطها بتطبيق NodeJS.
نتائج متوقعة من الدورة
- القدرة على تصميم وبناء قواعد بيانات NoSQL قوية من الصفر.
- احتراف تحليل ومعالجة البيانات باستخدام Aggregation Pipelines.
- التمكن من ربط قواعد البيانات بالمشاريع البرمجية الحقيقية.
- الاستعداد التام للعمل كمطور محترف يجيد التعامل مع البيانات.
تقييمات المتدربين
محتوى الدورة
1المحور الأول | المدخل وتجهيز بيئة العمل
4 درس
- مقدمة الدورة الأهداف والمتطلبات الأساسيةمقدمة MongoDB: يعرّف قاعدة البيانات وسبب تخزين البيانات، ويقارن بين قواعد SQL وNoSQL وأنواع NoSQL المختلفة، ويبين أن MongoDB قاعدة وثائق مرنة لا تخزن قيما فارغة.14:12
- نظرة عامة على MongoDB ومفهوم الـ NoSQL وفوائد استخدامهنظرة عامة على MongoDB كقاعدة NoSQL مرنة تخزن البيانات كوثائق شبيهة بـ JSON وتدعم التوسع، ومقارنتها بـ MySQL، وعمليات CRUD، واستخدامها في شركات كبيرة مثل Uber وAdobe.6:00
- التثبيت والتهيئةو إعداد بيئة العمل على نظام التشغيليشرح تثبيت MongoDB على ويندوز وإعداد متغيرات البيئة ليعمل من سطر الأوامر، وإنشاء مجلد data/db وتشغيل الخادم، ثم فتح mongosh وعرض قواعد البيانات الافتراضية.19:37
- أدوات التحكم وتثبيت وإعداد Mongo Shell للتعامل مع البياناتيشرح تحميل MongoDB Shell من موقع MongoDB وتثبيته، ثم تشغيله بالأمر mongosh، واستخدام الأمر show dbs لعرض قواعد البيانات الموجودة، وكيفية الخروج من الـ Shell.3:17
2المحور الثاني | هيكلة البيانات وقواعد التأسيس
6 درس
- طرق إنشاء قواعد البيانات والتبديل بينهايشرح إنشاء قواعد البيانات في MongoDB والتبديل بينها بأمر use، وعرض القواعد الموجودة بأمر show dbs، والاتصال عبر MongoDB Compass، وقواعد admin وconfig وlocal الافتراضية.12:59
- التعامل مع الـ Collectionsيشرح التعامل مع المجموعات Collections في MongoDB: إنشاء قاعدة بيانات وحذفها، وإنشاء مجموعة بأمر createCollection مثل Students وعرضها بـ show collections، وحذفها بأمر drop.15:11
- إنشاء وتنظيم المجموعاتيشرح قواعد تسمية قواعد البيانات والمجموعات في MongoDB: جواز الأحرف الكبيرة والصغيرة، ومنع الرموز الخاصة عدا الشرطة السفلية، ومنع بدء اسم المجموعة برقم.4:59
- بنية الـ Document وفهم هيكل البيانات وتنسيق الـ BSONيشرح شكل الـ Document في MongoDB: يُكتب بين قوسين معقوصين على هيئة مفاتيح وقيم مفصولة بفواصل، مع مثال لبيانات طالب، وقواعد تسمية المفاتيح.8:23
- أنواع البيانات المدعومة والمخزنةيشرح أنواع القيم التي يمكن تخزينها في مفاتيح الـ Document مثل النصوص والأرقام الصحيحة والقيم المنطقية والتواريخ والـ objects المتداخلة، مع تسمية المفاتيح بأسماء ذات معنى.14:41
- مفهوم الـ Schema شرح التصميم الهيكلي للبياناتيشرح مفهوم الـ Schema وكيف تُضاف قواعد تحقق للـ collection عبر validator وعامل jsonSchema، لتحديد نوع الحقول (bsonType) والحقول المطلوبة required ومنع إدخال بيانات ناقصة.24:42
3المحور الثالث | العمليات الأساسية CRUD Operations
11 درس
- مقدمة في الـ CRUDتعريف عمليات CRUD وهي الإنشاء والقراءة والتعديل والحذف، وأنها تخص قواعد البيانات عامة وليس MongoDB وحدها، تمهيدا للبدء بطرق الإنشاء.1:38
- إضافة البيانات والطرق النظرية والعملية لإدراج السجلاتيشرح طرق إضافة البيانات في MongoDB بأمري insertOne وinsertMany، وصيغة الوثيقة بين أقواس، وإضافة عدة وثائق داخل مصفوفة، وأن المجموعة تُنشأ تلقائيا عند الإدراج فيها.10:15
- تطبيق insertOne (إضافة وثيقة واحدة بشكل عملي)تطبيق عملي لأمر insertOne في MongoDB shell لإضافة وثيقة إلى مجموعة teachers، وشرح الرد الذي يعيد الحقل _id الذي يولده MongoDB تلقائيا أو يمكن تحديده يدويا.10:07
- تطبيق insertMany (إضافة مجموعة وثائق في عملية واحدة)يطبق insertMany لإضافة عدة وثائق دفعة واحدة إلى collection، وإنشاء الـ collection تلقائيا إن لم تكن موجودة، مع استخدام countDocuments لعد الوثائق.8:08
- شرح دالة find وطرق استرجاع البيانات والبحثيشرح عملية القراءة في CRUD باستخدام الدالة find لجلب كل الوثائق من collection في Shell، مع عرض نتيجتها على بيانات الطلاب.4:12
- شرح دالة findOne والوصول لسجل محدد بدقةيشرح الدالة findOne التي ترجع وثيقة واحدة فقط هي أول وثيقة تطابق الشرط، ويقارنها بالدالة find التي ترجع كل الوثائق، مع مثال بوجود وثائق متشابهة.5:29
- تقنيات find المتقدمة وتخصيص النتائج وفلترتها الاحترافيةيشرح معاملات دالة find الإضافية: فلتر الشروط، وprojection لإظهار حقول محددة وإخفاء أخرى، وعمل sort للترتيب وlimit لتحديد عدد الوثائق المعروضة.13:00
- تحديث البيانات واستخدام دوال الـ update لتعديل السجلاتيشرح عمليات التحديث في MongoDB: updateOne وupdateMany وreplaceOne، واستخدام set لتعديل قيمة أو إضافة حقل جديد، واستبدال وثيقة كاملة ببيانات جديدة.24:35
- حذف البيانات واستخدام دوال الـ delete وإدارة المسحيشرح الحذف في MongoDB بالدالتين deleteOne لحذف وثيقة واحدة وdeleteMany لحذف عدة وثائق حسب الفلتر، وأن الفلتر الفارغ يمسح كل وثائق الـ collection.12:05
- العمليات الضخمة bulkWrite وتنفيذ عمليات متعددة دفعة واحدةيشرح bulkWrite لتنفيذ عدة عمليات مختلفة مثل insertOne وupdateOne وdeleteOne في أمر واحد، مع خيار ordered وقراءة الرد الذي يبين عدد ما أُضيف وحُذف.23:57
- تقنية الـ upsert الدمج الذكي بين التحديث والإضافةيشرح upsert وهو دمج update وinsert: إذا لم توجد الوثيقة المطلوبة تُنشأ وثيقة جديدة تلقائيا، ويقارنه بتحديث عادي يتجاهل الوثيقة غير الموجودة.11:06
4المحور الرابع | المعاملات والوثائق المتداخلة
8 درس
- الوثائق المتداخلة وتعريف وشرح الـ Embedded Documentsيشرح الوثائق المتداخلة Embedded Documents في MongoDB، وكيفية إضافة وثيقة داخل وثيقة أخرى في مجموعة Courses، ثم عرضها في Compass تمهيدا لتصفيتها بعوامل الاستعلام.13:01
- الوصول المتقدم وكيفية التعامل مع الحقول المتداخلةيشرح الوصول إلى الحقول داخل الوثائق المتداخلة في MongoDB، بمطابقة الوثيقة الداخلية كاملة، أو باستخدام dot notation للوصول إلى حقل محدد، مع التصفية في أمر find.14:47
- معامل الاختيار in$ (شرح الاستخدام والتطبيق)تطبيق عملي لاستعلام الوثائق المتداخلة في MongoDB بتصفية حسب الاسم الكامل أو حقل الكورس، وعرض حقول محددة بالإسقاط projection، وشرح معامل الاختيار $in.13:33
- معاملات المقارنة 1 (العمليات الأساسية)يشرح عوامل المقارنة الأساسية في استعلامات MongoDB مثل in وnin وgt وgte وlt وlte وeq، والفرق بين greater than وgreater than or equal، وكتابتها في Compass وفي Shell.17:16
- معاملات المقارنة 2 (الحالات المتقدمة والربط بين القيم)يشرح العاملين exists وtype في MongoDB: الأول يتحقق من وجود الحقل في الوثيقة، والثاني يفلتر حسب نوع القيمة، مع تطبيق عملي واستخدام updateMany.20:33
- البحث بالأنماط regex$ واستخدام التعبير النمطي في الاستعلاميشرح البحث بالتعبيرات النمطية regex في MongoDB: مطابقة بداية الكلمة بالرمز ^ ونهايتها بالرمز $ وأي موضع فيها، وخيار options لتجاهل حالة الأحرف.16:19
- المنطق البرمجي النظري وأساسيات المعاملات المنطقيةيشرح نظريا العوامل المنطقية AND وOR وNOR وNOT وكيف تجمع أكثر من شرط في استعلام find، مع جداول القيم true وfalse الناتجة عن كل عامل.10:52
- المنطق البرمجي العملي وتطبيق الاستعلامات المنطقية المعقدةيطبق عمليا العوامل المنطقية and وor وnot وnor على بيانات الكورسات في Shell، مثل البحث عن مشترك باسم معين في كورس Node.js، ونفي شرط بعامل not.34:09
5المحور الخامس | الأداء والعمليات التحليلية
3 درس
- ما هو الـ Index وكيف تسرع الفهرسة عمليات البحث؟يشرح ما هو الفهرس Index في MongoDB وكيف يسرع البحث بدل المرور على كل الوثائق، وإنشاؤه بأمر createIndex على حقل مثل brand، وعرض الفهارس الموجودة وحذف فهرس.22:44
- استراتيجيات الفهرسة المختلفة واستخداماتهايشرح أنواع الفهارس في MongoDB، ومنها الفهرس المركب Compound Index الذي يجمع أكثر من حقل، وتجربته عمليا مع أمر explain لمعرفة هل استُخدم الفهرس في البحث، وحذف الفهارس.15:26
- شرح الـ Aggregation إطار عمل تحليل ومعالجة البياناتيشرح إطار Aggregation في MongoDB لتجميع البيانات وتحليلها عبر خط معالجة Pipeline من مراحل متتالية، ويطبق مراحل group وproject وmatch مع الترتيب وlimit.23:43
6المحور السادس | التطبيق العملي والربط البرمجي
2 درس
- الربط مع NodeJS كيفية دمج نود جي إس مع MongoDBيشرح ربط MongoDB مع Node.js باستخدام مكتبة Mongoose، وتعريف Schema للمستخدم بحقول مثل الاسم والإيميل الفريد والعمر، وإضافة بيانات والاستعلام عنها وعرض النتائج.23:49
- مشروع تسجيل المستخدمين تطبيق عملي لبناء نظام حفظ البياناتمشروع عملي لتسجيل المستخدمين: بناء تطبيق بـ Express وMongoose يستقبل الاسم والإيميل والهاتف من نموذج ويحفظها في MongoDB بطلب POST، ثم التحقق من ظهور البيانات في Compass.27:57
7الملحقات
1 ملحقات
- تحميل ملفات التطبيق العملي
المحاضر

م/عمرو عبد الفتاح



