Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

إعدادات جلسة distributed_*

هذه الإعدادات متاحة في system.settings، وهي مولَّدة تلقائيًا من الشيفرة المصدرية.

distributed_aggregation_memory_efficient

النوع
Bool
القيمة الافتراضية
1

ما إذا كان وضع التوفير في الذاكرة للتجميع الموزّع مفعّلًا.

distributed_connections_pool_size

النوع
UInt64
القيمة الافتراضية
1024

الحد الأقصى لعدد الاتصالات المتزامنة مع الخوادم البعيدة لأغراض المعالجة الموزعة لجميع الاستعلامات إلى جدول Distributed واحد. نوصي بتعيين قيمة لا تقل عن عدد الخوادم في العنقود.

distributed_foreground_insert

الأسماء البديلة: insert_distributed_sync

النوع
Bool
القيمة الافتراضية
0

يُفعّل أو يعطّل إدراج البيانات المتزامن في جدول Distributed.

بشكل افتراضي، عند إدراج البيانات في جدول Distributed، يرسل خادم ClickHouse البيانات إلى عُقد العنقود في وضع الخلفية. وعند تعيين distributed_foreground_insert=1، تُعالَج البيانات بشكل متزامن، ولا تنجح عملية INSERT إلا بعد حفظ جميع البيانات على جميع الشظايا (وعلى نسخة متماثلة واحدة على الأقل لكل شظية إذا كانت internal_replication تساوي true).

القيم الممكنة:

  • 0 — تُدرَج البيانات في وضع الخلفية.
  • 1 — تُدرَج البيانات في الوضع المتزامن.

القيمة الافتراضية في Cloud: 1.

انظر أيضًا

distributed_group_by_no_merge

النوع
UInt64
القيمة الافتراضية
0

لا تدمج حالات التجميع من خوادم مختلفة في المعالجة الموزعة للاستعلامات. يمكن استخدام هذا الإعداد عندما يكون من المؤكد وجود مفاتيح مختلفة على الشظايا المختلفة.

القيم الممكنة:

  • 0 — معطّل (تتم المعالجة النهائية للاستعلام على العقدة البادئة).
  • 1 - لا تدمج حالات التجميع من خوادم مختلفة في المعالجة الموزعة للاستعلامات (تتم معالجة الاستعلام بالكامل على الشظية، وتقتصر مهمة العقدة البادئة على تمرير البيانات)، ويمكن استخدامه عندما يكون من المؤكد وجود مفاتيح مختلفة على الشظايا المختلفة.
  • 2 - مثل 1، ولكنه يطبّق ORDER BY وLIMIT على العقدة البادئة (وهذا غير ممكن عندما تتم معالجة الاستعلام بالكامل على العقدة البعيدة، كما في distributed_group_by_no_merge=1) ويمكن استخدامه للاستعلامات التي تحتوي على ORDER BY و/أو LIMIT.

مثال

SELECT *
FROM remote('127.0.0.{2,3}', system.one)
GROUP BY dummy
LIMIT 1
SETTINGS distributed_group_by_no_merge = 1
FORMAT PrettyCompactMonoBlock

SELECT *
FROM remote('127.0.0.{2,3}', system.one)
GROUP BY dummy
LIMIT 1
SETTINGS distributed_group_by_no_merge = 2
FORMAT PrettyCompactMonoBlock

distributed_insert_skip_read_only_replicas

النوع
Bool
القيمة الافتراضية
0
سجل الإصدارات
الإصدارالقيمة الافتراضيةالتعليق
24.30إذا كانت القيمة true، فسيتخطى INSERT إلى Distributed النسخ المتماثلة المخصصة للقراءة فقط

يتيح تخطي النسخ المتماثلة المخصصة للقراءة فقط في استعلامات INSERT إلى Distributed.

القيم الممكنة:

  • 0 — سيعمل INSERT كالمعتاد، وإذا وصل إلى نسخة متماثلة مخصصة للقراءة فقط فسيفشل
  • 1 — ستتخطى العقدة البادئة النسخ المتماثلة المخصصة للقراءة فقط قبل إرسال البيانات إلى الشظايا.

distributed_product_mode

النوع
DistributedProductMode
القيمة الافتراضية
deny

يغيّر هذا الإعداد سلوك الاستعلامات الفرعية الموزعة.

يطبّق ClickHouse هذا الإعداد عندما يحتوي الاستعلام على ناتج جداول موزعة، أي عندما يتضمن الاستعلام على جدول موزع استعلامًا فرعيًا غير GLOBAL لجدول موزع.

القيود:

  • يُطبَّق فقط على الاستعلامات الفرعية من نوع IN وJOIN.
  • فقط إذا كان قسم FROM يستخدم جدولًا موزعًا يحتوي على أكثر من شظية واحدة.
  • إذا كان الاستعلام الفرعي يتعلق بجدول موزع يحتوي على أكثر من شظية واحدة.
  • لا يُستخدم مع دالة remote الجدولية.

القيم الممكنة:

  • deny — القيمة الافتراضية. يمنع استخدام هذه الأنواع من الاستعلامات الفرعية (ويُرجع الاستثناء "Double-distributed in/JOIN subqueries is denied").
  • local — يستبدل قاعدة البيانات والجدول في الاستعلام الفرعي بالنظيرين المحليين لخادم الوجهة (الشظية)، مع الإبقاء على IN/JOIN العادي.
  • global — يستبدل استعلام IN/JOIN بـ GLOBAL IN/GLOBAL JOIN.
  • allow — يسمح باستخدام هذه الأنواع من الاستعلامات الفرعية.

distributed_push_down_limit

النوع
UInt64
القيمة الافتراضية
1

يُفعّل أو يُعطّل تطبيق LIMIT على كل شظية على حدة.

يتيح ذلك تجنّب ما يلي:

  • إرسال صفوف إضافية عبر الشبكة؛
  • معالجة الصفوف التي تتجاوز الحد على العقدة البادئة.

بدءًا من الإصدار 21.9، لم يعد بالإمكان الحصول على نتائج غير دقيقة، لأن distributed_push_down_limit لا يغيّر تنفيذ الاستعلام إلا إذا تحقق شرط واحد على الأقل من الشروط التالية:

القيم الممكنة:

  • 0 — معطّل.
  • 1 — مفعّل.

انظر أيضًا:

Navigation