ينطبق ذلك على إصدار Cloud Firestore Enterprise فقط. |
توضّح هذه الصفحة أفضل الممارسات عند تحميل البيانات بشكل مجمّع إلى Cloud Firestore مع توافق MongoDB
باستخدام أدوات مثل mongoimport
.
Cloud Firestore هو نظام موزّع بشكل كبير يوفّر توسيعًا تلقائيًا للنطاق لتلبية احتياجات نشاطك التجاري. Cloud Firestore تقسيم بياناتك ودمجها بشكلٍ ديناميكي استنادًا إلى الحمل الذي يتلقّاه النظام
يتم التقسيم المستند إلى الحمل تلقائيًا بدون الحاجة إلى أي إعداد مسبق. يتميّز Cloud Firestore نظام التقسيم المستند إلى الحمل ببعض الخصائص المهمة والفريدة مقارنةً بقواعد بيانات المستندات الأخرى التي يجب أخذها في الاعتبار عند تصميم بياناتك.
يمكن أن تتطلّب الطبيعة الموزّعة لخدمة Cloud Firestore تغيير بعض خيارات التصميم، خاصةً بالنسبة إلى أحمال العمل التي تم تحسينها لقواعد البيانات التي تكون فيها النسخة المتماثلة الأساسية هي نقطة الاختناق لإنتاجية الكتابة.
أفضل الممارسات
يمكن أن تؤدي أحمال العمل التي تعالج كميات كبيرة من البيانات في عميل ذي سلسلة محادثات واحدة إلى حدوث اختناق. قد يتمكّن العملاء من استخدام سلسلة محادثات واحدة لتحميل البيانات بشكل مجمّع، لأنّ معدّل نقل البيانات للعميل والخادم متطابقان بشكل مماثل. يمكن لقاعدة بيانات Cloud Firestore التعامل مع عدد أكبر بكثير من العمليات المتوازية، ولكن يتطلّب ذلك إعداد العملاء لإرسال الطلبات بالتوازي.
mongoimport
عند استخدام أداة mongoimport
، يتم تقديم الطلبات بالتسلسل تلقائيًا.
لتحسين وقت التحميل في Cloud Firestore،
اضبط عدد العمال باستخدام العلامة --numInsertionWorkers
.
قد يتطلّب الإعداد الصحيح إجراء تعديلات استنادًا إلى حجم العميل، ولكن ننصحك عمومًا بالبدء بـ 32
على الأقل.
البرمجة غير المتزامنة
عند تطوير برنامجك الخاص باستخدام واجهات برمجة تطبيقات متوافقة مع MongoDB، يمكنك تحسين التوازي بالطرق التالية:
- أُطر العمل غير المتزامنة: تتيح لك أُطر العمل غير المتزامنة معالجة الطلبات والرد عليها بشكل متوازٍ. ليس من الضروري تطوير أي تجميع أو وضع في قائمة انتظار معقّد عند إجراء طلبات إلى قاعدة البيانات. يمكن أن يستخدم كل مسار طلب اتصالات مستقلة ويجري طلبات قاعدة البيانات بالتوازي.
- استخدام عروض الحوسبة المتوازية: باستخدام خدمات مثل Cloud Run، يمكن لنظامك توسيع نطاق عدد العاملين في الحوسبة المطلوبين لمعالجة البيانات.
الأخطاء المؤقتة
عند العمل باستخدام نظام موزّع كبير مثل Cloud Firestore، قد تواجه أخطاء مؤقتة، مثل مشاكل في الشبكة أو تعارض في مستند.
عند التحميل المجمّع لكميات كبيرة من المعلومات، من المهم الحفاظ على استراتيجية إعادة المحاولة لعمليات الكتابة التي تعذّر إجراؤها بدون أن يؤدي ذلك إلى تعذُّر عملية التحميل المجمّع الأكبر.