لدينا ملف تصدير بيانات بحجم 26 جيجابايت من منصة ديسكورد:
1.3 مليون مستخدم
3 ملايين موضوع
21 مليون منشور
مشكلتنا هي أننا نستورد بمعدل 500 ألف عنصر في الدقيقة، لكن بعد بضع دقائق ينخفض المعدل إلى 2 ألف عنصر في الدقيقة.
لدينا ملف تصدير بيانات بحجم 26 جيجابايت من منصة ديسكورد:
1.3 مليون مستخدم
3 ملايين موضوع
21 مليون منشور
مشكلتنا هي أننا نستورد بمعدل 500 ألف عنصر في الدقيقة، لكن بعد بضع دقائق ينخفض المعدل إلى 2 ألف عنصر في الدقيقة.
ستحتاج إلى ذاكرة وصول عشوائي (RAM) كثيرة. قد تفكر في أدوات الاستيراد بالجملة، لكنني لا أعتقد أن هناك أداة مخصصة لذلك للنسخة الأصلية (Vanilla).
مرحبًا يا جاي. نحن نستخدم مثيل c5.4xlarge من AWS، وفي البداية تصل السرعة إلى 500 ألف في الدقيقة، ثم تتباطأ بعد بضع دقائق.
يمكن إعادة تشغيل سكريبت الاستيراد، ولكن للأسف هذا أمر طبيعي في سكريبتات الاستيراد.
نعم، عند إعادة التشغيل يتخطى البيانات المستوردة مسبقًا، لكن العملية نفسها تتباطأ مع مرور الوقت ![]()
شكرًا لتأكيد ذلك.
إذا استمر الانخفاض، فسيستغرق جمع 31 مليون وحدة من البيانات حوالي شهر. هل لديك أي اقتراحات لتحسين ذلك؟ أم أن هذا هو الوضع الطبيعي؟
تحتاج إلى معالج (CPU) بسرعة عالية للأداء أحادي النواة، وهو أمر يصعب العثور عليه في السحابة.
أو جرب سكريبت الاستيراد الجماعي. Importers for large forums
يتوفر سكريبت خاص بـ Vanilla: discourse/script/bulk_import/vanilla.rb at main · discourse/discourse · GitHub
نستخدم c5.4xlarge من AWS
عدد النوى الافتراضية (vCPU) - 16، الذاكرة (GiB) - 32
هل هذا كافٍ أم يجب ترقية الخادم؟
بالتأكيد، سأجرب سكريبت الاستيراد الجماعي. شكرًا لك!
ستحتاج إلى وحدة معالجة مركزية من أعلى القائمة في PassMark CPU Benchmarks - Single Thread Performance إذا كنت تريد تشغيل سكريبت الاستيراد العادي بأسرع ما يمكن. ليس لدي أي فكرة عما تحصل عليه على AWS أو أي مزود سحابي آخر مع وحدات المعالجة المركزية الافتراضية. ![]()
تريد استخدام أداة الاستيراد الجماعي.
كلما حاولت إجراء الاستيراد الجماعي، يتوقف عند هذه النقطة. وبما أن تتبع الأخطاء يتوقف عند معرفات الفئات، جربت تغيير -1 إلى 0:
@last_imported_category_id = imported_category_ids.max || -1
إلى
@last_imported_category_id = imported_category_ids.max || 0
كما حاولت حذف الفئة ذات المعرف -1 ثم حاولت مرة أخرى، لكن دون جدوى.
إذا كان بإمكانك توظيف مساعدة إضافية، فتواصل مع @pfaffman عبر https://www.literatecomputing.com/ .