الانتقال إلى المحتوى الرئيسي
الاستعلام في ClickHouse Cloudتُخزَّن بيانات جدول النظام هذا محليًا على كل عقدة في ClickHouse Cloud. لذلك، يتطلب الحصول على رؤية كاملة لجميع البيانات استخدام الدالة clusterAllReplicas. راجع هنا لمزيد من التفاصيل.

الوصف

يحتوي هذا الجدول على بيانات تنميط على مستوى المعالجات (والتي يمكنك العثور عليها في EXPLAIN PIPELINE).

الأعمدة

  • hostname (LowCardinality(String)) — اسم مضيف الخادم الذي ينفّذ الاستعلام.
  • event_date (Date) — التاريخ الذي وقع فيه الحدث.
  • event_time (DateTime) — التاريخ والوقت اللذان وقع فيهما الحدث.
  • event_time_microseconds (DateTime64(6)) — التاريخ والوقت بدقة الميكروثانية اللذان وقع فيهما الحدث.
  • id (UInt64) — معرّف المعالج.
  • parent_ids (Array(UInt64)) — معرّفات المعالجات الأصلية.
  • plan_step (UInt64) — معرّف خطوة خطة الاستعلام التي أنشأت هذا المعالج. تكون القيمة صفراً إذا لم يُضَف المعالج من أي خطوة.
  • plan_step_name (String) — اسم خطوة خطة الاستعلام التي أنشأت هذا المعالج. تكون القيمة فارغة إذا لم يُضَف المعالج من أي خطوة.
  • plan_step_description (String) — وصف خطوة خطة الاستعلام التي أنشأت هذا المعالج. تكون القيمة فارغة إذا لم يُضَف المعالج من أي خطوة.
  • plan_group (UInt64) — مجموعة المعالج إذا أُنشئ بواسطة خطوة من خطة الاستعلام. والمجموعة هي تقسيم منطقي للمعالجات المضافة من خطوة خطة الاستعلام نفسها. ولا تُستخدم المجموعة إلا لتحسين عرض نتيجة EXPLAIN PIPELINE.
  • initial_query_id (String) — معرّف الاستعلام الأوّلي (لتنفيذ الاستعلام الموزّع).
  • query_id (String) — معرّف الاستعلام.
  • name (LowCardinality(String)) — اسم المعالج.
  • elapsed_us (UInt64) — عدد الميكروثواني التي استغرقها تنفيذ هذا المعالج.
  • input_wait_elapsed_us (UInt64) — عدد الميكروثواني التي انتظر فيها هذا المعالج البيانات (من معالج آخر).
  • output_wait_elapsed_us (UInt64) — عدد الميكروثواني التي انتظر فيها هذا المعالج لأن منفذ الإخراج كان ممتلئاً.
  • input_rows (UInt64) — عدد الصفوف التي استهلكها المعالج.
  • input_bytes (UInt64) — عدد البايتات التي استهلكها المعالج.
  • output_rows (UInt64) — عدد الصفوف التي أنتجها المعالج.
  • output_bytes (UInt64) — عدد البايتات التي أنتجها المعالج.
  • processor_uniq_id (String) — المعرّف الفريد للمعالج ضمن PIPELINE.
  • step_uniq_id (String) — المعرّف الفريد للخطوة في الخطة.

مثال

Query
EXPLAIN PIPELINE
SELECT sleep(1)
┌─explain─────────────────────────┐
│ (Expression)                    │
│ ExpressionTransform             │
│   (SettingQuotaAndLimits)       │
│     (ReadFromStorage)           │
│     SourceFromSingleChunk 01
└─────────────────────────────────┘

SELECT sleep(1)
SETTINGS log_processors_profiles = 1
Query id: feb5ed16-1c24-4227-aa54-78c02b3b27d4
┌─sleep(1)─┐
0
└──────────┘
1 rows in set. Elapsed: 1.018 sec.

SELECT
    name,
    elapsed_us,
    input_wait_elapsed_us,
    output_wait_elapsed_us
FROM system.processors_profile_log
WHERE query_id = 'feb5ed16-1c24-4227-aa54-78c02b3b27d4'
ORDER BY name ASC
Response
┌─name────────────────────┬─elapsed_us─┬─input_wait_elapsed_us─┬─output_wait_elapsed_us─┐
│ ExpressionTransform     │    1000497 │                  2823 │                    197 │
│ LazyOutputFormat        │         36 │               1002188 │                      0 │
│ LimitsCheckingTransform │         10 │               1002994 │                    106 │
│ NullSource              │          5 │               1002074 │                      0 │
│ NullSource              │          1 │               1002084 │                      0 │
│ SourceFromSingleChunk   │         45 │                  4736 │                1000819 │
└─────────────────────────┴────────────┴───────────────────────┴────────────────────────┘
هنا يمكنك ملاحظة ما يلي:
  • كان ExpressionTransform ينفّذ الدالة sleep(1)، لذا فإن work سيستغرق 1e6، وبالتالي elapsed_us > 1e6.
  • يحتاج SourceFromSingleChunk إلى الانتظار، لأن ExpressionTransform لا يقبل أي بيانات أثناء تنفيذ sleep(1)، لذا سيبقى في الحالة PortFull لمدة 1e6 us، وبالتالي output_wait_elapsed_us > 1e6.
  • تحتاج LimitsCheckingTransform/NullSource/LazyOutputFormat إلى الانتظار إلى أن ينفّذ ExpressionTransform الدالة sleep(1) لمعالجة النتيجة، لذا فإن input_wait_elapsed_us > 1e6.

راجع أيضًا

آخر تعديل في ٢٥ يونيو ٢٠٢٦