دروس MongoDB للمبتدئين: تعلم MongoDB في خطوات بسيطة
نشرت: 2022-08-31MongoDB هي قاعدة بيانات للمستندات وقاعدة بيانات NoSQL رائدة مفتوحة المصدر. تمت كتابته بلغة C ++ وهو عبارة عن قاعدة بيانات NoSQL موجهة للمستندات تستخدم لتخزين البيانات بكميات كبيرة وإدارة المحتوى وتسليمه والبنى التحتية للجوال والاجتماعي وإدارة بيانات المستخدم وما إلى ذلك.
يتكون من نموذج بيانات يمكنك من خلاله تمثيل العلاقات الهرمية. يعتمد على مستندات تشبه JSON مع مخطط اختياري ولا تستخدم الصفوف والجداول كما هو مستخدم في قواعد البيانات العلائقية التقليدية. المستندات ذات أزواج القيمة الرئيسية هي الوحدات الأساسية للبيانات في MongoDB.
يقوم MongoDB بتخزين البيانات بتنسيق JSON. يعتمد الطلب المرتفع بشكل أساسي على فهرسها على أي سمة ، والنسخ المتماثل والتوافر العالي ، والتجزئة التلقائية ، والاستعلامات الغنية ، والتحديثات في المكان السريع ، ودعم المجتمع الغني. دعنا نتعمق في البرنامج التعليمي للاستعلام عن mongodb.
ميزات MongoDB
تعتمد قابلية استخدام قاعدة البيانات هذه القائمة على البيانات على بعض الميزات المتكاملة لـ Mongo DB: -
- تتكون كل قاعدة بيانات من مجموعات تحتوي على المزيد من الوثائق. يمكن أن تختلف هذه المستندات وحجمها ومحتواها وفقًا لأعداد الحقول المختلفة.
- يعتمد هيكل المستند على كيفية قيام المطورين ببناء الفئات والكائنات في برامجهم.
- لا تتطلب الصفوف مخططًا محددًا مسبقًا ، حيث يمكنك إنشاء الحقول أثناء التنقل.
- باستخدام نموذج بيانات MongoDB ، يمكنك تمثيل العلاقات الهرمية لتخزين المصفوفات والبنى المعقدة الأخرى.
- بيئات MongoDB قابلة للتطوير للغاية.
- لا يلزم تحويل كائنات التطبيق أو تعيينها إلى كائنات قاعدة البيانات.
- تخزن الذاكرة الداخلية مجموعة العمل ذات الإطارات التي تتيح وصولاً أسهل إلى البيانات.
- هيكل كائن واحد واضح.
- لا توجد أي صلات معقدة.
- تدعم قدرتها على الاستعلام العميق الاستعلامات الديناميكية على المستندات.
تحقق أيضًا من دورة علوم البيانات لدينا لتحسين مهاراتك.
أشياء تحتاج لمعرفتها حول MongoDB و RDBMS
MongoDB هي قاعدة بيانات متعددة المنصات وموجهة نحو المستندات توفر أداءً عاليًا وقابلية توسعة فعالة وتوافرًا عاليًا. يعمل على أساس التوثيق والتحصيل. كل قاعدة بيانات في MongoDB لها مجموعة مميزة من الملفات ، ومن الناحية المثالية ، يحتوي خادم MongoDB الفردي على العديد من قواعد البيانات.
من ناحية أخرى ، فإن المجموعة هي مجموعة من مستندات MongoDB المكافئة لجدول RDBMS. إنه موجود داخل قاعدة بيانات واحدة ولا يفرض مخططًا. يمكن أن تحتوي المستندات داخل المجموعة على حقول مختلفة ، وجميع المستندات الموجودة داخل المجموعة ذات غرض ذي صلة أو متشابه. تسمى مجموعة من أزواج القيمة الرئيسية المستندات التي لها مخطط ديناميكي ، حيث لا تحتاج المستندات الموجودة في نفس المجموعة إلى نفس مجموعة البنية أو الحقول.
سوف تجد علاقة مصطلحات RDBMS مع MongoDB في الجدول التالي.
RDBMS | MongoDB |
قاعدة البيانات | قاعدة البيانات |
مترابطة بيانية | وثيقة |
الطاولة | مجموعة |
ربط الجدول | المستندات المضمنة |
عمودي | مجال |
المفتاح الأساسي | المفتاح الأساسي (يقدم MongoDB المفتاح الافتراضي _id) |
خادم قاعدة البيانات والعميل | |
mysqld / أوراكل | mongod |
mysql / sqlplus | المونغو |
الفرق بين قواعد بيانات MongoDB و SQL
يعتبر MongoDB أكثر مرونة من SQL ويوفر توفرًا أفضل للبيانات. إنه أيضًا محمول وقابل للتمديد. تُعرف قواعد بيانات SQL بمتانتها واتساقها. وبالتالي ، فإن أفضل حل لقاعدة البيانات يعتمد على نوع المشروع الذي يشارك فيه الفرد.
تعتبر MongoDB أفضل لخطوط التطوير ، بينما تعد قواعد بيانات SQL رائعة لمعاملات البيانات التنظيمية الموثوقة. يعتبر MongoDB رائعًا لمعالجة البيانات غير المهيكلة والعمل معها. تعد قاعدة بيانات NoSQL هذه واحدة من أفضل البدائل لتغذية خطوط أنابيب البيانات والتطبيقات ، مثل التحليلات في الوقت الفعلي.
يعد MongoDB رائعًا للعمل مع أجهزة إنترنت الأشياء وتطبيقات الجوال / الويب. أصبح سريعًا الخيار المفضل للمطورين في جميع أنحاء العالم نظرًا لمرونته وقدرته على التوسع بسلاسة.
بينما تعد قواعد بيانات SQL رائعة للعمل مع البيانات المنظمة وعلوم البيانات وللمهام التنظيمية المتقدمة ، فإن MongoDB يلبي متطلبات المطورين والشركات الحديثة من خلال التطوير الفعال للبرامج أو الخدمات عبر الإنترنت.
أمثلة على كيفية استخدام MongoDB
تخزين هياكل البيانات المتداخلة
تعد القدرة على تداخل الكائنات داخل المستندات واحدة من أعظم ميزات MongoDB. لتضمين البيانات داخل المستندات ، يقوم المطورون ببناء البيانات في MongoDB بدلاً من تقسيمها إلى مجموعات مختلفة.
هنا مثال:-
{_id: ObjectId (“5effaa5662679b5af2c58829”) ،
البريد الإلكتروني: "[email protected]" ،
الاسم: {يُعطى: "ليلي" ، العائلة: "منى"} ،
العمر: 31،
العناوين: [{التسمية: "المنزل" ،
الشارع: "22 1b Baker Street"،
المدينة: "لندن" ،
الحالة: "ENG" ،
zip: "NW1 6XE" ،
البلد: "UK"} ،
{التسمية: "أمي" ،
الشارع: "555 Park Street" ،
المدينة: "ليك تاون" ،
المقاطعة: "أونتاريو" ،
البلد: "CA"}]
}
حقل الاسم هو الكائن المتداخل الذي يحتوي على مكونات محددة واسم العائلة في حقل العناوين حيث يتم تخزين عناوين متعددة في مصفوفة واحدة. يمكن أن يحتوي كل عنوان على حقول مختلفة مما يسهل تخزين أنواع البيانات الأخرى.
باستخدام قذيفة MongoDB
تُستخدم قشرة MongoDB بشكل أساسي للتنقل ومعالجة وفحص بيانات المستند. عندما يتم تشغيل MongoDB على جهاز محلي ، فإن إطلاق القشرة يتصل بـ MongoDB في المضيف المحلي على المنفذ القياسي. تأكد من إضافة سلسلة الاتصال بعد الأمر mongo إذا كنت بحاجة إلى الاتصال بمجموعة MongoDB Atlas أو مثيل آخر بعيد.
سوف تجد أمثلة قذيفة سريعة أدناه: -
مجموعات القائمة
> استخدام قاعدة البيانات الخاصة بي ؛
> عرض المجموعات ؛
المستخدمين
المشاركات
>
قائمة قواعد البيانات
> عرض ديسيبلات ؛
admin 0.000GB
التهيئة 0.000GB
0.000 جيجابايت محلي
قاعدة بياناتي 0.004 جيجابايت
>
استكشف دوراتنا الشهيرة في علوم البيانات
برنامج الدراسات العليا التنفيذية في علوم البيانات من IIITB | برنامج الشهادة المهنية في علوم البيانات لاتخاذ قرارات الأعمال | ماجستير العلوم في علوم البيانات من جامعة أريزونا |
برنامج الشهادة المتقدمة في علوم البيانات من IIITB | برنامج الشهادة الاحترافية في علوم البيانات وتحليلات الأعمال من جامعة ماريلاند | دورات علوم البيانات |
ابحث عن أول مستند في مجموعة
> db.users.findOne ()
{
"_id": ObjectId ("5ce45d7606444f199acfba1e") ،
"الاسم": {معطى: "آنا" ، العائلة: "سميث"}،
"البريد الإلكتروني": "[email protected]"
"العمر": 36
}
>
عد المستندات في مجموعة
> استخدام قاعدة البيانات الخاصة بي ؛
> db.users.count ()
20234
>
ابحث عن مستند عن طريق المعرف
> db.users.findOne ({_ id: ObjectId (“5ce45d7606444f199acfba1e”)})
{
"_id": ObjectId ("5ce45d7606444f199acfba1e") ،
"الاسم": {معطى: "آنا" ، العائلة: "سميث"}،
"البريد الإلكتروني": "[email protected]" ،
"العمر": 36
}
>
الاستعلام عن مجموعات MongoDB
يتم استخدام نفس بناء الجملة في MongoDB Query Language (MQL) في المستندات التي يمكن استخدامها في الاستعلام المتقدم. ستجد أمثلة استعلام MongoDB أدناه:
ابحث عن عدد محدود من النتائج
> db.users.find (). حد (10)
...
>
ابحث عن المستخدمين حسب اسم العائلة
> db.users.find ({“name.family”: “سميث”}). count ()
1
>
لاحظ أننا نضع "name.family" بين علامتي اقتباس ، لأنه يحتوي على نقطة في المنتصف.
مستندات الاستعلام حسب النطاقات الرقمية
// جميع المنشورات التي تحتوي على حقل "إبداءات الإعجاب" بقيمة رقمية أكبر من واحد:
> db.post.find ({الإعجابات: {$ gt: 1}})
// كل المشاركات التي لا تحتوي على إعجاب
> db.post.find ({الإعجابات: 0})
// جميع المشاركات التي لا تحتوي على إعجاب واحد بالضبط
> db.post.find ({الإعجابات: {$ ne: 1}})
فرز النتائج حسب الحقل
// الترتيب حسب العمر بترتيب تصاعدي (القيم الأصغر أولاً)
> db.user.find (). sort ({age: 1})
{
"_id": ObjectId ("5ce45d7606444f199acfba1e") ،
"الاسم": {مُعطى: "أليكس" ، العائلة: "سميث"} ،
"البريد الإلكتروني": "[email protected]" ،
"العمر": 27
}
{
_id: ObjectId ("5effaa5662679b5af2c58829") ،
البريد الإلكتروني: "[email protected]" ،
الاسم: {مُعطى: "جيسي" ، العائلة: "شياو"} ،
العمر: 31
}
>
// ترتيب حسب العمر ، بترتيب تنازلي (القيم الأكبر أولاً)
> db.user.find (). sort ({age: -1})
{
_id: ObjectId ("5effaa5662679b5af2c58829") ،
البريد الإلكتروني: "[email protected]" ،
الاسم: {يُعطى: "ليلي" ، العائلة: "منى"} ،
العمر: 31
}
{
"_id": ObjectId ("5ce45d7606444f199acfba1e") ،
"الاسم": {معطى: "آنا" ، العائلة: "سميث"}،
"البريد الإلكتروني": "[email protected]" ،
"العمر": 36
}
>
مهارات علوم البيانات الأعلى للتعلم في عام 2022
SL. رقم | مهارات علوم البيانات الأعلى للتعلم في عام 2022 | |
1 | دورة تحليل البيانات | دورات الإحصاء الاستنتاجي |
2 | برامج اختبار الفرضيات | دورات الانحدار اللوجستي |
3 | دورات الانحدار الخطي | الجبر الخطي للتحليل |
استنتاج
إن قابلية توسع MongoDB تجعلها واحدة من أكثر قواعد البيانات استخدامًا لأنها توفر عددًا من الفوائد في مجال تطوير البرمجيات وعلوم البيانات. يعد العمل في هذه المجالات خيارًا مربحًا. يعد برنامج upGrad التنفيذي في علوم البيانات مكانًا رائعًا لبدء حياتك المهنية في علم البيانات والمجالات الأخرى ذات الصلة.
لماذا من السهل جدا قياس MongoDB؟
من السهل قياس MongoDB لأنها ليست قاعدة بيانات SQL ، حيث لا يتم ربط البيانات داخل MongoDB ارتباطًا وثيقًا. يتم تخزين البيانات في MongoDB بتنسيق مستقل مما يتيح سهولة القياس الأفقي عن طريق توزيع هذه المستندات عبر أنظمة متعددة (عقد).
ما هو الفرق بين MongoDB وأنظمة قواعد البيانات مثل MariaDB و MySQL؟
MongoDB هي قاعدة بيانات NoSQL بينما MariaDB و MySQL هي قواعد بيانات SQL. أيضًا ، MongoDB هي قاعدة بيانات غير علائقية بينما الآخران هما قواعد بيانات علائقية.
لماذا تحظى MongoDB بشعبية كبيرة؟
MongoDB هو جزء أساسي من مكدس MERN في تطوير الويب. من السهل أيضًا نشر المشاريع وتوسيع نطاقها على MongoDB. تشتهر MongoDB بقابليتها للتوسع. إنه مناسب تمامًا لأي خط أنابيب للتطوير.