جداول النظام الأساسية
system.errors
system.replicas
system.replication_queue
system.merges
system.parts
المشكلات الشائعة في بيئة الإنتاج
مشكلات مساحة القرص
خطأ «Too many parts»
- اجمع البيانات على دفعات باستخدام حدود 30 ثانية أو 200 ميغابايت
- فعّل async_insert للتجميع التلقائي على دفعات
- استخدم الجداول المؤقتة للتجميع على دفعات على جانب الخادم
- اضبط Kafka للتحكم في أحجام الدفعات
مشكلات الطوابع الزمنية غير الصالحة
مخاطر عملية ALTER
ALTER الكبيرة على الجداول التي تبلغ أحجامها عدة تيرابايت موارد كبيرة، وقد تتسبب في قفل قواعد البيانات. وفي أحد الأمثلة من المجتمع، أدى تغيير النوع من Integer إلى Float على 14 تيرابايت من البيانات إلى قفل قاعدة البيانات بالكامل، واستلزم إعادة بنائها من النسخ الاحتياطية.
راقب عمليات التعديل المكلفة:
الذاكرة والأداء
التجميع الخارجي
max_bytes_before_external_group_by، ما يساعد على منع الأعطال الناتجة عن نفاد الذاكرة في عمليات GROUP BY الكبيرة. يمكنك معرفة المزيد عن هذا الإعداد هنا.
تفاصيل الإدراج غير المتزامن
تهيئة الجدول الموزّع
insert أحادية الخيط. فعِّل insert_distributed_sync للمعالجة المتوازية والإرسال الفوري للبيانات إلى المقاطع.
راقب تراكم البيانات المؤقتة عند استخدام الجداول الموزّعة.
عتبات مراقبة الأداء
- عدد الأجزاء لكل قسم: يُفضَّل أن يكون أقل من 100
- عمليات الإدراج المتأخرة: يجب أن تبقى عند الصفر
- معدل الإدراج: احصره في نحو عملية واحدة في الثانية للحصول على أفضل أداء