ما هي MongoDB؟
MongoDB قاعدة بيانات NoSQL تخزّن البيانات على شكل مستندات (Documents) بصيغة شبيهة بـ JSON، بدل الجداول والصفوف.
تتميّز بمرونتها الكبيرة وسهولة تكاملها مع JavaScript، لذا صارت خيارًا شائعًا في تطبيقات الويب الحديثة المبنية على Node.js.
NoSQL مقابل SQL
| SQL (مثل MySQL) | NoSQL (MongoDB) | |
|---|---|---|
| التخزين | جداول وصفوف | مستندات (JSON) |
| البنية | ثابتة (schema) | مرنة |
| العلاقات | JOIN | مستندات متداخلة |
| الاستخدام | بيانات منظّمة | بيانات مرنة ومتغيّرة |
كيف يبدو المستند؟
{
"_id": "1",
"name": "براء",
"age": 25,
"skills": ["JavaScript", "React"],
"address": {
"city": "الرياض"
}
}
- المستند مرن: يمكن أن تحوي مستندات نفس المجموعة حقولًا مختلفة.
- يدعم القيم المتداخلة والمصفوفات مباشرة.
المصطلحات
| SQL | MongoDB |
|---|---|
| Database | Database |
| Table | Collection |
| Row | Document |
| Column | Field |
أول أمر
db.users.insertOne({ name: "براء", age: 25 });
db.users.find();
نستخدم insertOne لإضافة مستند، و find لاسترجاع المستندات.
متى تختار MongoDB؟
- بيانات مرنة أو متغيّرة البنية.
- تطبيقات تحتاج توسّعًا أفقيًا كبيرًا.
- تكامل سلس مع JavaScript/Node.js.
أسئلة شائعة
أيّهما أفضل: SQL أم MongoDB؟ لا يوجد "أفضل" مطلق؛ SQL أنسب للبيانات المنظّمة ذات العلاقات، و MongoDB أنسب للبيانات المرنة والمتغيّرة.
هل MongoDB سهلة للمبتدئين؟ نعم، خاصة لمن يعرف JSON و JavaScript، لأنّ مستنداتها قريبة منهما.
🎯 التالي: عمليات CRUD في MongoDB.