الانتقال إلى المحتوى الرئيسي
تُعد مراقبة نظام قاعدة بياناتك في بيئة الإنتاج أمرًا بالغ الأهمية لفهم حالة النشر لديك، حتى تتمكن من منع الانقطاعات أو معالجتها. تُعد لوحة المعلومات المتقدمة أداة خفيفة الوزن صُممت لتمنحك رؤى معمّقة حول نظام ClickHouse وبيئته، مما يساعدك على استباق اختناقات الأداء وأعطال النظام وأوجه القصور. تتوفر لوحة المعلومات المتقدمة في كلٍّ من ClickHouse OSS (مفتوح المصدر) وCloud. في هذه المقالة، سنوضح لك كيفية استخدام لوحة المعلومات المتقدمة في Cloud.

الوصول إلى لوحة المعلومات المتقدمة

يمكن الوصول إلى لوحة المعلومات المتقدمة بالانتقال إلى:
  • اللوحة الجانبية اليسرى
    • MonitoringAdvanced dashboard

الوصول إلى لوحة المعلومات المتقدمة الأصلية

يمكن الوصول إلى لوحة المعلومات المتقدمة الأصلية بالانتقال إلى:
  • اللوحة الجانبية اليسرى
    • MonitoringAdvanced dashboard
    • النقر على You can still access the native advanced dashboard.
سيؤدي ذلك إلى فتح لوحة المعلومات المتقدمة الأصلية في علامة تبويب جديدة. وستحتاج إلى المصادقة للوصول إلى لوحة المعلومات. يرتبط بكل تصوّر استعلام SQL يزوّده بالبيانات. يمكنك تعديل هذا الاستعلام بالنقر على أيقونة القلم.

التصورات الجاهزة

صُمِّمت المخططات الافتراضية في لوحة المعلومات المتقدمة لتوفير رؤية آنية لنظام ClickHouse لديك. فيما يلي قائمة تتضمن وصفًا لكل مخطط. وقد جُمِّعت ضمن ثلاث فئات لتسهيل التنقل بينها.

خاص بـ ClickHouse

صُمِّمت هذه المقاييس لمراقبة صحة وأداء مثيل ClickHouse لديك.

خاص بصحة النظام

تُعد مراقبة النظام الأساسي مهمة بقدر أهمية مراقبة ClickHouse نفسه.

خاص بـ ClickHouse Cloud

يخزّن ClickHouse Cloud البيانات باستخدام تخزين الكائنات (من نوع S3). ويمكن أن تساعد مراقبة هذه الواجهة في اكتشاف المشكلات.

تحديد المشكلات باستخدام لوحة المعلومات المتقدمة

إن إتاحة هذا العرض في الوقت الفعلي لصحة خدمة ClickHouse لديك تساعد كثيرًا على الحد من المشكلات قبل أن تؤثر في أعمالك أو على المساعدة في حلها. وفيما يلي بعض المشكلات التي يمكنك رصدها باستخدام لوحة المعلومات المتقدمة.

عمليات الإدراج غير المجمّعة

كما هو موضح في وثائق أفضل الممارسات، يُوصى دائمًا بإدراج البيانات إلى ClickHouse بشكل مجمّع متى أمكن تنفيذ ذلك بصورة متزامنة. يؤدي الإدراج المجمّع مع حجم Batch مناسب إلى تقليل عدد الأجزاء التي يتم إنشاؤها أثناء إدخال البيانات، مما ينتج عنه عمليات كتابة أكثر كفاءة على الأقراص وعدد أقل من عمليات الدمج. المقاييس الأساسية لاكتشاف عمليات الإدراج غير المُحسّنة هي Inserted Rows/sec و Max Parts for Partition يوضح المثال أعلاه ارتفاعين حادين في Inserted Rows/sec و Max Parts for Partition بين الساعة 13 والساعة 14. يشير هذا إلى أننا ندخل البيانات بسرعة معقولة. ثم نرى ارتفاعًا حادًا كبيرًا آخر في Max Parts for Partition بعد الساعة 16، ولكن مع انخفاض شديد في Inserted Rows/sec. يتم إنشاء الكثير من الأجزاء مع كمية ضئيلة جدًا من البيانات المُولَّدة، مما يشير إلى أن حجم هذه الأجزاء غير مثالي.

استعلام كثيف الموارد

من الشائع تشغيل استعلامات SQL تستهلك قدرًا كبيرًا من الموارد، مثل CPU أو الذاكرة. ومع ذلك، من المهم مراقبة هذه الاستعلامات وفهم تأثيرها على الأداء العام لعملية النشر. قد يشير تغيّر مفاجئ في استهلاك الموارد من دون تغيّر في معدل نقل الاستعلامات إلى تنفيذ استعلامات أكثر كلفة. وبحسب نوع الاستعلامات التي تشغّلها، قد يكون هذا متوقعًا، لكن من المفيد رصدها من لوحة المعلومات المتقدمة. فيما يلي مثال على وصول استخدام CPU إلى ذروته من دون تغيّر ملحوظ في عدد الاستعلامات المنفذة في الثانية.

تصميم سيّئ للمفتاح الأساسي

هناك مشكلة أخرى يمكنك رصدها باستخدام لوحة المعلومات المتقدمة، وهي سوء تصميم المفتاح الأساسي. كما هو موضح في “A practical introduction to primary indexes in ClickHouse”، فإن اختيار مفتاح أساسي يلائم حالة استخدامك على أفضل نحو يحسّن الأداء بشكل كبير من خلال تقليل عدد الصفوف التي يحتاج ClickHouse إلى قراءتها لتنفيذ الاستعلام. ومن المقاييس التي يمكنك متابعتها لرصد التحسينات المحتملة في المفاتيح الأساسية عدد الصفوف المحددة في الثانية. فقد تشير الزيادة المفاجئة في عدد الصفوف المحددة إلى زيادة عامة في إجمالي إنتاجية الاستعلامات، كما قد تشير أيضًا إلى وجود استعلامات تحدد عددًا كبيرًا من الصفوف لتنفيذها. وباستخدام الطابع الزمني كعامل تصفية، يمكنك العثور على الاستعلامات التي نُفذت وقت الذروة في جدول system.query_log. على سبيل المثال، شغّل استعلامًا يعرض جميع الاستعلامات التي نُفذت بين الساعة 11 صباحًا والساعة 11 صباحًا في يوم معيّن لفهم أي الاستعلامات تقرأ عددًا كبيرًا جدًا من الصفوف:
Query
Response
في هذا المثال، نرى الاستعلام نفسه يُنفَّذ على الجدولين amazon_reviews_no_pk وamazon_reviews_pk. ويمكن الاستنتاج أن أحدهم كان يختبر خيار المفتاح الأساسي للجدول amazon_reviews.
آخر تعديل في ٢ يوليو ٢٠٢٦