> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# إعدادات الجلسة لـ parallel_replicas_*

> إعدادات جلسة ClickHouse ضمن مجموعة parallel_replicas_* المُنشأة.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>النوع</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>القيمة الافتراضية</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          يمكن تغييره دون إعادة التشغيل
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

export const BetaBadge = ({link, galaxyTrack, galaxyEvent}) => {
  if (link) {
    return <a href={link} target="_blank" rel="noopener noreferrer" className="betaBadge" onClick={galaxyTrack && galaxyEvent ? galaxyOnClick(galaxyEvent) : undefined}>
                <Icon />
                <span>Beta</span>
            </a>;
  }
  return <div className="betaBadge">
            <Icon />
            <span>
                ميزة Beta. 
                <u>
                    <a href="/docs/docs/beta-and-experimental-features#beta-features">
                        مزيد من المعلومات.
                    </a>
                </u>
            </span>
        </div>;
};

export const ExperimentalBadge = () => {
  return <div className="experimentalBadge">
            <div className="experimentalIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path strokeWidth="1.25" d="M5.5 2H10.5" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M9.50015 2V6.19625L13.4283 12.7425C13.4738 12.8183 13.4985 12.9049 13.4996 12.9934C13.5008 13.0818 13.4785 13.169 13.435 13.246C13.3914 13.323 13.3283 13.3871 13.2519 13.4317C13.1755 13.4764 13.0886 13.4999 13.0002 13.5H3.00015C2.91164 13.5 2.8247 13.4766 2.74822 13.432C2.67174 13.3874 2.60847 13.3233 2.56487 13.2463C2.52126 13.1693 2.49889 13.082 2.50004 12.9935C2.50119 12.905 2.52582 12.8184 2.5714 12.7425L6.50015 6.19625V2" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M4.47656 9.56754C5.30344 9.41254 6.47656 9.47942 7.99969 10.25C10.0153 11.2707 11.4216 11.0569 12.2184 10.7282" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
        </div>
            ميزة تجريبية. <u><a href="/docs/docs/beta-and-experimental-features#experimental-features">تعرّف على المزيد.</a></u>
        </div>;
};

هذه الإعدادات متوفّرة في [system.settings](/docs/ar/reference/system-tables/settings)، وهي مُولَّدة تلقائيًا من [المصدر](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<div id="parallel_replicas_allow_in_with_subquery">
  ## parallel\_replicas\_allow\_in\_with\_subquery
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.3"},{"label": "1"},{"label": "إذا كانت القيمة true، فسيُنفَّذ الاستعلام الفرعي لـ IN على كل نسخة متماثلة تابعة"}]}]} />

إذا كانت القيمة true، فسيُنفَّذ الاستعلام الفرعي لـ IN على كل نسخة متماثلة تابعة.

<div id="parallel_replicas_allow_materialized_views">
  ## parallel\_replicas\_allow\_materialized\_views
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.12"},{"label": "1"},{"label": "السماح باستخدام العروض المادية مع النسخ المتماثلة المتوازية"}]}]} />

السماح باستخدام العروض المادية مع النسخ المتماثلة المتوازية

<div id="parallel_replicas_allow_view_over_mergetree">
  ## parallel\_replicas\_allow\_view\_over\_mergetree
</div>

<BetaBadge />

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.4"},{"label": "0"},{"label": "إعداد جديد"}]}]} />

يسمح للنسخ المتماثلة المتوازية بتنفيذ الاستعلام الخارجي لعرض بسيط على جداول `MergeTree` (بدلاً من الاستعلام الداخلي للعرض)، مما يحسّن التنفيذ المتوازي عبر العُقد. وينطبق هذا أيضًا على عروض `UNION ALL` التي تقرأ جميع فروعها من جداول `MergeTree` مختلفة.

<div id="parallel_replicas_connect_timeout_ms">
  ## parallel\_replicas\_connect\_timeout\_ms
</div>

<SettingsInfoBlock type="مللي ثانية" default_value="300" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.6"},{"label": "300"},{"label": "مهلة اتصال منفصلة لاستعلامات النسخ المتماثلة المتوازية"}]}]} />

المهلة، بالمللي ثانية، للاتصال بنسخة متماثلة بعيدة أثناء تنفيذ الاستعلام باستخدام النسخ المتماثلة المتوازية. إذا انتهت المهلة، فلن تُستخدم النسخة المتماثلة المعنية في تنفيذ الاستعلا

<div id="parallel_replicas_count">
  ## parallel\_replicas\_count
</div>

<BetaBadge />

<SettingsInfoBlock type="UInt64" default_value="0" />

هذا إعداد داخلي لا ينبغي استخدامه مباشرةً، ويمثل تفصيلًا تنفيذيًا في وضع "النسخ المتماثلة المتوازية". سيُضبط هذا الإعداد تلقائيًا بواسطة الخادم المُبادِر للاستعلامات الموزعة على عدد النسخ المتماثلة المتوازية المشاركة في معالجة الاستعلامات.

<div id="parallel_replicas_custom_key">
  ## parallel\_replicas\_custom\_key
</div>

<BetaBadge />

أي تعبير عددي صحيح يمكن استخدامه لتقسيم العمل بين النسخ المتماثلة لجدول معيّن.
يمكن أن تكون القيمة أي تعبير عددي صحيح.

يُفضَّل استخدام التعبيرات البسيطة التي تعتمد على المفاتيح الأساسية.

إذا استُخدم هذا الإعداد على عنقود يتكون من شظية واحدة تضم عدة نسخ متماثلة، فستُحوَّل هذه النسخ إلى شظايا افتراضية.
وإلا فسيتصرف بالطريقة نفسها كما في مفتاح `SAMPLE`، إذ سيستخدم عدة نسخ متماثلة من كل شظية.

<div id="parallel_replicas_custom_key_range_lower">
  ## parallel\_replicas\_custom\_key\_range\_lower
</div>

<BetaBadge />

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "0"},{"label": "إضافة إعدادات للتحكم في عامل تصفية النطاق عند استخدام النسخ المتماثلة المتوازية مع الشرائح الديناميكية"}]}]} />

يسمح لمرشح النوع `range` بتقسيم العمل بالتساوي بين النسخ المتماثلة استنادًا إلى النطاق المخصص `[parallel_replicas_custom_key_range_lower, INT_MAX]`.

وعند استخدامه مع [parallel\_replicas\_custom\_key\_range\_upper](/docs/ar/reference/settings/session-settings/parallel-replicas#parallel_replicas_custom_key_range_upper)، فإنه يتيح لعامل التصفية تقسيم العمل بالتساوي بين النسخ المتماثلة ضمن النطاق `[parallel_replicas_custom_key_range_lower, parallel_replicas_custom_key_range_upper]`.

ملاحظة: لن يؤدي هذا الإعداد إلى تصفية أي بيانات إضافية أثناء معالجة الاستعلام، بل يغيّر النقاط التي يقسم عندها عامل تصفية النطاق المجال `[0, INT_MAX]` لأغراض المعالجة المتوازية.

<div id="parallel_replicas_custom_key_range_upper">
  ## parallel\_replicas\_custom\_key\_range\_upper
</div>

<BetaBadge />

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.6"},{"label": "0"},{"label": "إضافة إعدادات للتحكم في عامل تصفية النطاق عند استخدام النسخ المتماثلة المتوازية مع الشظايا الديناميكية. تؤدي القيمة 0 إلى تعطيل الحد الأعلى"}]}]} />

يسمح لنوع المرشح `range` بتقسيم العمل بالتساوي بين النسخ المتماثلة استنادًا إلى النطاق المخصص `[0, parallel_replicas_custom_key_range_upper]`. تؤدي القيمة 0 إلى تعطيل الحد الأعلى، وتضبطه على القيمة القصوى لتعبير المفتاح المخصص.

عند استخدامه بالاقتران مع [parallel\_replicas\_custom\_key\_range\_lower](/docs/ar/reference/settings/session-settings/parallel-replicas#parallel_replicas_custom_key_range_lower)، فإنه يتيح لعامل التصفية تقسيم العمل بالتساوي بين النسخ المتماثلة ضمن النطاق `[parallel_replicas_custom_key_range_lower, parallel_replicas_custom_key_range_upper]`.

ملاحظة: لا يتسبب هذا الإعداد في تصفية أي بيانات إضافية أثناء معالجة الاستعلام؛ بل يغيّر النقاط التي يقسم عندها عامل تصفية النطاق المجال `[0, INT_MAX]` لأغراض المعالجة المتوازية

<div id="parallel_replicas_filter_pushdown">
  ## parallel\_replicas\_filter\_pushdown
</div>

<BetaBadge />

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.2"},{"label": "0"},{"label": "إعداد جديد"}]}]} />

السماح بتمرير عوامل التصفية إلى الجزء من الاستعلام الذي تختار النسخ المتماثلة المتوازية تنفيذه

<div id="parallel_replicas_for_cluster_engines">
  ## parallel\_replicas\_for\_cluster\_engines
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.3"},{"label": "1"},{"label": "إعداد جديد."}]}]} />

استبدال محركات دوال الجداول بنظيراتها من نوع ‎-Cluster

<div id="parallel_replicas_for_non_replicated_merge_tree">
  ## parallel\_replicas\_for\_non\_replicated\_merge\_tree
</div>

<SettingsInfoBlock type="Bool" default_value="0" />

إذا كانت القيمة true، فسيستخدم ClickHouse خوارزمية النسخ المتماثلة المتوازية أيضًا مع جداول MergeTree غير المُكرَّرة

<div id="parallel_replicas_index_analysis_only_on_coordinator">
  ## parallel\_replicas\_index\_analysis\_only\_on\_coordinator
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.12"},{"label": "1"},{"label": "يُجرى تحليل الفهرس فقط على replica-coordinator، ويُتخطى على النسخ المتماثلة الأخرى. ولا يسري ذلك إلا عند تمكين parallel_replicas_local_plan"}]}, {"id": "row-2","items": [{"label": "24.10"},{"label": "1"},{"label": "يُجرى تحليل الفهرس فقط على replica-coordinator، ويُتخطى على النسخ المتماثلة الأخرى. ولا يسري ذلك إلا عند تمكين parallel_replicas_local_plan"}]}]} />

يُجرى تحليل الفهرس فقط على replica-coordinator، ويُتخطى على النسخ المتماثلة الأخرى. ولا يسري ذلك إلا عند تمكين parallel\_replicas\_local\_pla

<div id="parallel_replicas_insert_select_local_pipeline">
  ## parallel\_replicas\_insert\_select\_local\_pipeline
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "1"},{"label": "استخدم مسار المعالجة المحلي أثناء عملية INSERT SELECT الموزعة مع النسخ المتماثلة المتوازية. وهو معطّل حاليًا بسبب مشكلات في الأداء"}]}, {"id": "row-2","items": [{"label": "25.4"},{"label": "0"},{"label": "استخدم مسار المعالجة المحلي أثناء عملية INSERT SELECT الموزعة مع النسخ المتماثلة المتوازية. وهو معطّل حاليًا بسبب مشكلات في الأداء"}]}]} />

استخدم مسار المعالجة المحلي أثناء عملية INSERT SELECT الموزعة مع النسخ المتماثلة المتوازية

<div id="parallel_replicas_local_plan">
  ## parallel\_replicas\_local\_plan
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.9"},{"label": "0"},{"label": "استخدام الخطة المحلية للنسخة المتماثلة المحلية في استعلام يستخدم النسخ المتماثلة المتوازية"}]}, {"id": "row-2","items": [{"label": "24.11"},{"label": "1"},{"label": "استخدام الخطة المحلية للنسخة المتماثلة المحلية في استعلام يستخدم النسخ المتماثلة المتوازية"}]}, {"id": "row-3","items": [{"label": "24.10"},{"label": "1"},{"label": "استخدام الخطة المحلية للنسخة المتماثلة المحلية في استعلام يستخدم النسخ المتماثلة المتوازية"}]}]} />

إنشاء الخطة المحلية للنسخة المتماثلة المحلية

<div id="parallel_replicas_mark_segment_size">
  ## parallel\_replicas\_mark\_segment\_size
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.9"},{"label": "0"},{"label": "أصبحت قيمة هذا الإعداد تُحدَّد تلقائيًا"}]}, {"id": "row-2","items": [{"label": "24.1"},{"label": "128"},{"label": "إضافة إعداد جديد للتحكم في حجم المقطع في تنفيذ المنسّق الجديد للنسخ المتماثلة المتوازية"}]}]} />

تُقسَّم الأجزاء تقسيمًا افتراضيًا إلى مقاطع لتوزيعها بين النسخ المتماثلة من أجل القراءة المتوازية. يتحكم هذا الإعداد في حجم هذه المقاطع. لا يُنصح بتغيير هذا الإعداد ما لم تكن متأكدًا تمامًا مما تفعله. يجب أن تكون القيمة ضمن النطاق \[128; 16384]

<div id="parallel_replicas_min_number_of_rows_per_replica">
  ## parallel\_replicas\_min\_number\_of\_rows\_per\_replica
</div>

<SettingsInfoBlock type="UInt64" default_value="0" />

قيِّد عدد النسخ المتماثلة المستخدمة في استعلام إلى (عدد الصفوف التقديري المراد قراءتها / min\_number\_of\_rows\_per\_replica). ويظل الحد الأقصى مقيَّدًا بـ 'max\_parallel\_replicas'

<div id="parallel_replicas_mode">
  ## parallel\_replicas\_mode
</div>

<SettingsInfoBlock type="ParallelReplicasMode" default_value="read_tasks" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.10"},{"label": "read_tasks"},{"label": "أُضيف هذا الإعداد كجزء من جعل ميزة النسخ المتماثلة المتوازية في المرحلة التجريبية"}]}]} />

نوع عامل التصفية الذي يُستخدم مع المفتاح المخصص للنسخ المتماثلة المتوازية. default - استخدام عملية modulo للمفتاح المخصص، range - استخدام عامل تصفية النطاق على المفتاح المخصص باستخدام جميع القيم الممكنة لنوع قيمة المفتاح المخصص.

<div id="parallel_replicas_only_with_analyzer">
  ## parallel\_replicas\_only\_with\_analyzer
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.2"},{"label": "1"},{"label": "لا تكون النسخ المتماثلة المتوازية مدعومة إلا عند تمكين المحلل"}]}]} />

يجب تمكين المحلل لاستخدام النسخ المتماثلة المتوازية. عند تعطيل المحلل، يعود تنفيذ الاستعلام إلى التنفيذ المحلي حتى إذا كانت القراءة المتوازية من النسخ المتماثلة ممكّنة. ولا يُدعم استخدام النسخ المتماثلة المتوازية من دون تمكين المحلل.

<div id="parallel_replicas_plan_based">
  ## parallel\_replicas\_plan\_based
</div>

<ExperimentalBadge />

<SettingsInfoBlock type="Bool" default_value="0" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "0"},{"label": "إعداد جديد"}]}]} />

يُمثَّل الحد الفاصل بين المحلي والبعيد في النسخ المتماثلة المتوازية على أنه تحويل في الخطة. يبني المخطِّط خطة محلية عادية؛ ثم تُدرَج خطوة تقسيم فوق خطوة القراءة، وتُستبدَل بـ `UNION` بين قراءة محلية وقراءة بعيدة للجزء من الخطة الواقع أسفل خطوة التقسيم، بحيث يُنفَّذ ذلك الجزء على النسخ المتماثلة بينما يُنفَّذ الباقي على المنسّق. تجريبي، وله أولوية على `parallel_replicas_local_plan`.

<div id="parallel_replicas_prefer_local_join">
  ## parallel\_replicas\_prefer\_local\_join
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "24.2"},{"label": "1"},{"label": "إذا كانت القيمة true، وكان من الممكن تنفيذ JOIN باستخدام خوارزمية النسخ المتماثلة المتوازية، وكانت جميع وحدات التخزين في الجزء الأيمن من JOIN من نوع *MergeTree، فسيُستخدم JOIN المحلي بدلًا من GLOBAL JOIN."}]}]} />

إذا كانت القيمة true، وكان من الممكن تنفيذ JOIN باستخدام خوارزمية النسخ المتماثلة المتوازية، وكانت جميع وحدات التخزين في الجزء الأيمن من JOIN من نوع \*MergeTree، فسيُستخدم JOIN المحلي بدلًا من GLOBAL JOIN.

<div id="parallel_replicas_prefer_local_replica">
  ## parallel\_replicas\_prefer\_local\_replica
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": "1"},{"label": "إعداد جديد. عند تعطيله، تُختار النسخ المتماثلة للقراءة المتوازية بالكامل وفق خوارزمية موازنة التحميل، من دون فرض إدراج النسخة المتماثلة المحلية ضمن المجموعة."}]}]} />

عند التمكين (افتراضيًا)، تُدرَج النسخة المتماثلة المحلية دائمًا ضمن مجموعة النسخ المتماثلة المستخدمة للقراءة المتوازية.
عند التعطيل، لا تُمنَح النسخة المتماثلة المحلية أي أفضلية، وتُختار النسخ المتماثلة بالكامل وفق خوارزمية موازنة التحميل.
يتيح ذلك توجيه الاستعلامات التي تستخدم `max_parallel_replicas = 1` إلى مضيف آخر، مما قد يحسّن محلية ذاكرة التخزين المؤقت عند توزيع عدد كبير من الاستعلامات القصيرة عبر عنقود.

<div id="parallel_replicas_support_projection">
  ## parallel\_replicas\_support\_projection
</div>

<SettingsInfoBlock type="Bool" default_value="1" />

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "1"},{"label": "إعداد جديد. يمكن تطبيق تحسين الإسقاطات في وضع النسخ المتماثلة المتوازية. ولا يسري ذلك إلا عند تمكين parallel_replicas_local_plan وتعطيل aggregation_in_order."}]}]} />

يمكن تطبيق تحسين الإسقاطات في وضع النسخ المتماثلة المتوازية. ولا يسري ذلك إلا عند تمكين parallel\_replicas\_local\_plan وتعطيل aggregation\_in\_order.
