نسخ MongoDB: دليل شامل لمجموعة النسخ المتماثلة خطوة بخطوة
نشرت: 2020-02-27يحتوي MongoDB على العديد من الوظائف. والتكرار وظيفة بارزة بينهم. هناك العديد من المزايا لإجراء النسخ المتماثل. باستخدام MongoDB ، يمكنك العمل مع مجموعات البيانات الكبيرة التي تتضمن كائنات مصفوفة ومصفوفات مضمنة. أثناء عملك مع كائنات المصفوفات والمصفوفات المضمنة ، يجب أن تحافظ على معدل معالجة البيانات سريعًا. اقرأ عن حالات استخدام العالم الحقيقي لـ MongoDB لتعرف أهميتها.
وللحفاظ على معدل هذه العملية سريعًا ، ستحتاج إلى التأكد من أن توفر بياناتك يظل مرتفعًا. يعد إجراء النسخ المتماثل طريقة رائعة لضمان توافر البيانات بدرجة عالية. يساعد النسخ المتماثل أيضًا في الحصول على نسخة احتياطية ويقيك من فقدان البيانات.
في هذه المقالة ، سوف تعرف ما هو النسخ المتماثل في MongoDB ، وكيف يعمل ، وكيف يمكنك القيام بذلك. ستكتشف أيضًا مزايا إجراء النسخ المتماثل في MongoDB ، وإذا واجهت أي أخطاء أثناء تنفيذ هذه المهمة ، فكيف يمكنك إصلاحها.
هيا بنا نبدأ.
جدول المحتويات
ما هو النسخ المتماثل؟
أثناء استخدام الخوادم ، ستحتاج إلى مزامنة بياناتك على خوادم MongoDB المتعددة. تساعدك عملية النسخ المتماثل في هذا الصدد. يضمن أن لديك نفس البيانات المخزنة على خوادم مختلفة.
النسخ المتماثل يعزز توافر البيانات. يعد فقدان البيانات مصدر قلق كبير للمؤسسات ، ويساعدك النسخ المتماثل في تخفيف المخاوف بشأن نفس الشيء. مع توفر البيانات والتكرار العالي ، تظل قاعدة البيانات الخاصة بك آمنة إذا فقدت خادمًا واحدًا. ستفقد الوصول إلى قاعدة البيانات الخاصة بك إذا تعطل الخادم الوحيد الذي يخزنها.

يضمن النسخ المتماثل عدم مواجهة هذه المشكلات. يعد نسخ MongoDB طريقة فعالة لزيادة إمكانية الوصول إلى بياناتك أيضًا. من المفيد دائمًا الحصول على نسخ إضافية من بياناتك. يمكن أن يقلل النسخ المتماثل أيضًا من وقت تعطل صيانة الخادم.
لديك خيار تخصيص خادم كامل للإبلاغ أو النسخ الاحتياطي أو التعافي من الكوارث.
هناك الكثير من إيجابيات النسخ المتماثل في MongoDB. دعنا نكتشفهم.
فوائد النسخ المتماثل
هذه بعض الأسباب التي تجعل التكرار ممارسة منتشرة:
- يساعدك النسخ المتماثل في استعادة البيانات في حالة حدوث كارثة. سيكون لديك نسخة احتياطية من بياناتك يمكنك من خلالها استعادة الملفات المفقودة بسرعة.
- تظل بياناتك متاحة في كل وقت. هذا يعني أن النسخ المتماثل يضمن لك إمكانية الوصول على مدار الساعة طوال أيام الأسبوع.
- يقلل وقت تعطل صيانة الخادم إذا قمت بإجراء النسخ المتماثل بانتظام.
- النسخ المتماثل يعزز قابلية القراءة الخاصة بك. يساعد وجود نسخ متعددة في قياس قراءة البيانات.
بصرف النظر عن الفوائد التي ناقشناها هنا ، فإن النسخ المتماثل له عيب أيضًا. نظرًا لأنك ستخزن نسخًا من بياناتك ، فستحتاج إلى مساحة تخزين أكبر. على الرغم من أن هذه ليست مشكلة مهمة ، إلا أنها جديرة بالملاحظة. قد تحتاج إلى زيادة سعة تخزين الخادم الخاص بك.
كيف يعمل النسخ المتماثل MongoDB
لإجراء النسخ المتماثل ، ستحتاج إلى استخدام مجموعات النسخ المتماثلة لـ MongoDB. تسمى مجموعة المثيلات النموذجية التي تستضيف نفس البيانات مجموعة النسخ المتماثلة. تحتوي مجموعة النسخ المتماثلة على عقدة أساسية واحدة. تتلقى العقدة الأساسية جميع عمليات الكتابة.
تحتوي مجموعة النسخ المتماثلة على عقدة أساسية واحدة فقط. تطبق المثيلات الأخرى وظائف من العقدة الأساسية للمجموعة ، بما في ذلك العقد الثانوية. بهذه الطريقة ، لديهم جميعًا نفس مجموعة البيانات. إليك كيفية عمل مجموعة النسخ المتماثلة من MongoDB:
- تحتوي مجموعة النسخ المتماثلة على 3 عقد على الأقل
- عقدة واحدة من مجموعة النسخ المتماثلة هي العقدة الأساسية. جميع العقد الأخرى الموجودة في المجموعة هي ثانوية.
- في مجموعة النسخ المتماثلة ، يتم نسخ البيانات من العقد الأولية إلى العقد الثانوية
- في حالة حدوث تجاوز فشل تلقائي (أو أثناء الصيانة) ، يتم إجراء انتخابات لتحديد الأساسي. بعد ذلك ، تحدد العقد أساسيًا جديدًا.
الآن وقد ناقشنا المفهوم الأساسي للنسخ المتماثل في MongoDB ، يمكننا البدء في عمليته.
الخطوة 1: قم بإضافة العضو الأول
أنت تعلم الآن أنه لإجراء النسخ المتماثل ، ستحتاج إلى مجموعات النسخ المتماثلة. لذلك ، فإن الخطوة الأولى للنسخ المتماثل في MongoDB هي إنشاء مجموعة متماثلة من مثيلاتها. لنفترض أن لديك ثلاثة خوادم ، الخادم X ، والخادم Y ، والخادم Z. ومن بين هذه الثلاثة ، يكون الخادم X هو الخادم الأساسي ، والخادم X و Y هما الخادمان الثانيان.
أنت تعلم بالفعل أن النسخ المتماثل يحدث من الخادم الأساسي إلى الخادم الثانوي. أولاً ، سيتعين عليك التأكد من تثبيت جميع مثيلات mongod (التي ستضيفها إلى مجموعة النسخ المتماثلة) على خوادم مختلفة. بهذه الطريقة ، سيكون لديك عدة خوادم متاحة حتى إذا تعطل أحدها ، وهكذا ، سيكون لديك مثيلات أخرى من MongoDB.

بعد ذلك ، يجب عليك التأكد من أن جميع الحالات يمكنها الاتصال. قم بإصدار الأوامر المقدمة من الخادم X:
mongo –host ServerY –port 27017
mongo –host ServerZ –port 27017
بعد إصدارها من Server X ، قم بإصدارها من الخوادم المتبقية. ابدأ الآن في المثيل الأول باستخدام خيار replSet. يمنحك خيار replSet مجموعة من جميع الخوادم التي ستشارك في هذه العملية.
mongo –replSet "نسخة طبق الأصل"
هنا ، ReplicaA هو اسم مجموعة النسخ المتماثلة. يمكنك اختيار أي اسم تريده ، لكننا سنستخدم هذا المصطلح في هذا المثال. يجب عليك إصدار الأمر rs.initiate () لبدء مجموعة النسخ المتماثلة بعد إضافة خادم واحد إلى مجموعة النسخ المتماثلة. بعد ذلك ، يجب عليك التحقق من مجموعة النسخ المتماثلة الخاصة بك.
للقيام بذلك ، قم بإصدار الأمر rs.conf (). ستساعدك هذه الخطوة في ضمان إعداد النسخة المتماثلة على النحو الأمثل وبدون أي مشاكل.
قراءة: أسئلة وأجوبة مقابلة MongoDB
الخطوة 2: إضافة خادم ثانوي
بعد إضافة الخادم الأساسي ، يمكننا الآن التركيز على إضافة خادم آخر. يمكنك استخدام الأمر rs.add لهذا الغرض. يجب عليك إدخال اسم الخوادم الثانوية التي ترغب في إضافتها في هذا الأمر. ستضيفهم تلقائيًا.
في مثالنا ، كان لدينا Server X و Server Y و Server Z. ومن بين هذه الخوادم الثلاثة ، كان الخادم X هو الخادم الأساسي في مجموعة النسخ المتماثلة. سنحتاج إلى إضافة الخوادم المتبقية كخوادم ثانوية. وللقيام بذلك ، سنصدر الأوامر التالية:
rs.add (“ServerY”)
rs.add (“ServerZ”)
وهذا كل شيء. لقد نجحت الآن في إضافة مرتبتين ثانويتين إلى مجموعة النسخ المتماثلة.
الخطوة 3: إعادة التكوين (أو الإزالة)
يعد إنشاء الخوادم وإضافتها جانبًا واحدًا فقط من العملة. قد تحتاج أيضًا إلى إزالة خادم من مجموعة الضبط. لهذا الغرض ، يجب عليك استخدام الأمر rs.remove.
قبل إزالة الخادم ، ستحتاج إلى إيقاف تشغيله. استخدم الأمر db.shutdownserver من mongo shell لإغلاق الخادم المطلوب. بعد ذلك ، اتصل بالخادم الأساسي واستخدم rs.remove لإزالة الخادم الذي تريد إزالته. سيحذف هذا الأمر الخادم المطلوب من مجموعة النسخ المتماثلة.
لذلك ، إذا كان لديك Server X و Server Y و Server Z في مجموعة النسخ المتماثلة ، ستحتاج إلى التخلص من Server Z ، فستستخدم الأمر التالي:
rs.remove (“ServerZ”)
كيفية إصلاح أخطاء مجموعة النسخ المتماثلة
أثناء إجراء النسخ المتماثل في MongoDB ، قد تواجه بعض الأخطاء. لاستكشاف هذه الأخطاء وإصلاحها ، يجب أن تستعين بالطرق التالية:
- أولاً ، تأكد من أن جميع حالات mongo متصلة. لذلك ، إذا كان لديك ثلاثة خوادم ، وهي Server X و Server Y و Server Z. ومن بين هذه الخوادم الثلاثة ، يكون Server X هو الخادم الأساسي. ستصدر الأوامر التالية:
mongo -host ServerY -port 27017
mongo -host ServerZ -port 27017
سيساعدك تشغيل الأمرين أعلاه على التأكد من اتصالهما.
الآن ، قم بتشغيل أمر الحالة ، وهو rs.status. يمنحك الأمر rs.status حالة مجموعة النسخ المتماثلة. يرسل أعضاء مجموعة النسخ المتماثلة بعض الرسائل إلى بعضهم البعض. نسمي هذه الرسائل "نبضات القلب". نسميها نبضات القلب لأن هذه الرسائل تظهر أن العضو يعمل (أي على قيد الحياة).
يتحقق الأمر rs.status من هذه الرسائل ويخبرك ما إذا كانت هناك أي مشكلة تنشأ مع أحد أعضاء مجموعة النسخ المتماثلة.

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