Skip to main content
On-Demand Compute متاح ضمن private preview. وهو غير مشمول بأهداف مستوى الخدمة (SLOs) أو اتفاقيات مستوى الخدمة (SLAs) الخاصة بـ ClickHouse Cloud، وقد تنطبق عليه قيود معروفة وأخرى غير معروفة. راجع القيود.انضم إلى قائمة الانتظار.
On-Demand Compute هو إمكانية في ClickHouse Cloud تمنح خدمتك السحابية (أي tenant) سعة إضافية وفورية للأحمال المدعومة، دون الحاجة إلى تغيير حجم الخدمة أو تجهيز خدمة أخرى. ويجري تنفيذ هذا العمل على workers تابعة لـ ClickHouse خارج موارد compute الخاصة بخدمتك. وتأتي الـ workers من pool مُدار مشترك بين الـ tenants في الـ region نفسه، إلا أن كل worker يُخصَّص لـ tenant واحد فقط في كل مرة. خلال الـ private preview، يدعم On-Demand Compute استعلامات SELECT فقط. حيث تُدرج الاستعلام عبر الـ settings على مستوى الاستعلام أو الـ session أو الـ USER، فيخصّص ClickHouse workers من الـ pool لتنفيذه من خلال خدمتك والـ endpoint الحالي. ويختلف ذلك عن compute-compute separation. فالـ warehouse يوفّر موارد compute مخصّصة وطويلة الأجل عبر خدمات متعددة تتشارك البيانات، بينما يوفّر On-Demand Compute workers مؤقتة من pool مشترك عبر خدمتك الحالية. تعتمد الحوسبة عند الطلب على إمكانيات جديدة كليًا:
  • تنفيذ استعلامات stateless مع الحوسبة عند الطلب
  • CBO جديد (cost-based optimizer)
  • distributed query execution جديد

متى تستخدم On-Demand Compute

خلال private preview، استخدم On-Demand Compute لاستعلامات SELECT المؤهلة والمكثفة حوسوبيًا التي ترغب في تشغيلها خارج compute الخاص بـ primary service:
  • الاستعلامات الفورية والتحليلية: شغّل استعلامات SELECT المكثفة حوسوبيًا على workers إضافيين.
  • أحمال عمل القراءة غير الحرجة: انقل عمليات reads المحددة بعيدًا عن primary service.
  • استعلامات data lake: استعلم عن بيانات Apache Iceberg أو Delta Lake أو SharedMergeTree المدعومة على workers إضافيين.
  • compute إضافي مؤقت: اطلب workers للاستعلامات المؤهلة دون إعادة تحجيم primary service.
يدعم private preview استعلامات SELECT فقط، ولا ينفّذ workers استعلامات INSERT أو DDL أو mutations أو background operations.

كيفية العمل

  1. ترسل استعلام SELECT مؤهلاً إلى ClickHouse Cloud service الخاصة بك طالباً عدداً محدداً من الـ workers، دون أي تغيير في نقطة النهاية أو المصادقة أو إعدادات RBAC
  2. يتصل الـ cluster الخاص بك بعد ذلك بالـ pool ويطلب العدد المحدد من الـ workers
  3. يتم lease الـ workers لمدة 60 ثانية على الأقل، وإذا استمر الاستعلام لفترة أطول فسيُجدَّد الـ lease تلقائياً
  4. تستقبل الـ workers الاستعلام وتُنفّذه
  5. تُرسل الاستجابة بعد ذلك إلى الـ client الخاص بك
  6. تُمحى الـ workers.
خلال المعاينة الخاصة، يتمتع كل worker بـ ‏8 vCPUs و32 GiB من الذاكرة. استخدم distributed_plan_workers_num لتحديد عدد الـ workers التي يطلبها الاستعلام.

استخدام موارد الحوسبة عند الطلب

Settings

استخدم هذه الإعدادات للبدء في استخدام الحوسبة عند الطلب:
خلال فترة المعاينة، اضبط الإعدادات على مستوى الـ query، أو أنشئ مستخدمًا منفصلًا بإعدادات مختلفة. فذلك يجعل من الواضح أي الـ statements تستخدم الحوسبة عند الطلب.

مثال

لا يمكن توزيع بعض الاستعلامات على العمال:
لضمان عودة الاستعلامات إلى التنفيذ المحلي عند الحاجة، يمكنك استخدام الإعداد distributed_plan_fallback_to_local_execution:
يطلب هذا الـ query خمسة عمال. ويعتمد عدد العمال التي يوفّرها ClickHouse على حدّ المعاينة الخاصة (private preview) وعلى سعة الـ pool المتاحة.

الاستعلامات المتزامنة

يمكن للاستعلامات المتزامنة الصادرة عن خدمة ClickHouse Cloud نفسها أن تتشارك العمّال المخصّصين لها. ولا يطلب ClickHouse عمّالًا إضافيين إلا عندما يحتاج استعلام إلى عدد من العمّال يتجاوز ما هو مخصّص للخدمة أصلًا. على سبيل المثال، إذا طلب استعلامان متزامنان ثلاثة عمّال لكل منهما، فبإمكانهما التشارك في العمّال الثلاثة أنفسهم. وإذا طلب استعلام آخر خمسة عمّال، فيمكن لـ ClickHouse استخدام العمّال الثلاثة المخصّصين وطلب اثنين إضافيين من التجمّع. انظر المثال أدناه:
يتشارك كلاهما نفس الـ workers الثلاثة. وإذا طلب استعلام ثالث متزامن خمسة workers:
يُنفَّذ هذا الاستعلام على العمال الثلاثة الحاليين إضافةً إلى عاملَين تم استئجارهما حديثًا.

عندما يتعذّر على الـ pool تلبية الطلب

يقوم توافر الـ workers على مبدأ بذل أقصى جهد ممكن خلال private preview. فإذا كان عدد الـ workers المتاحة أقل من العدد المطلوب، يُنفَّذ الـ query بعدد الـ workers الذي يستطيع ClickHouse تخصيصه. على سبيل المثال، قد يُنفَّذ طلبٌ لخمسة workers بثلاثة فقط. وإذا تعذّر استئجار أي worker، يفشل الـ query. أعد محاولة تنفيذ الاستعلام. وإذا استمرت المشكلة، فتواصل مع فريق حسابك في ClickHouse — فقد يكون تجمّع المعاينة مستنفدًا أو غير مضبوط الحجم بشكل صحيح.

Monitoring

استخدم system.query_log في الـ service الخاص بك لمعرفة عدد الـ workers المخصّصة للـ query الخاص بك.

عدد الـ workers المخصَّصة

اضبط log_comment = 'on-demand' (أو اسم workload) على استعلامات On-Demand لتتمكّن من تصفيتها دون الحاجة إلى تحليل Settings.

المناطق المتاحة

الحوسبة عند الطلب إقليمية: تعمل الـ workers في المنطقة نفسها التي يعمل فيها الـ service الخاص بك. إذا لم تكن منطقتك مدرجة، فاطلبها عبر قائمة الانتظار. وسنُفعّل مزيدًا من المناطق بناءً على الطلب.

التسعير

خلال private preview، تكون On-Demand Compute مجانية، مع حد أقصى للاستخدام (راجع القيود). تواصل مع ClickHouse account team إذا كنت بحاجة إلى رفع هذا الحد. سيبدأ تطبيق التسعير عند انتهاء المعاينة، وسيتم إشعار المشاركين فيها قبل ترقية الميزة إلى Beta وقبل بدء احتساب أي رسوم. النموذج المُعتمد هو ذاته المُتَّبع في compute الخاص بـ ClickHouse Cloud: تدفع مقابل ما تستخدمه من compute (وقت worker المُستأجَر)، وليس مقابل البيانات المفحوصة أو الصفوف المقروءة.

القيود

تنطبق القيود التالية خلال private preview، وقد تنطبق قيود أخرى. أبلغ عن أي سلوك غير متوقع إلى ClickHouse Support أو إلى account team الخاص بك.
  • استعلامات SELECT فقط. لا تنفّذ الـ workers استعلامات INSERT، ولا mutations، ولا DDL، ولا background operations.
  • الصيغة المدعومة. يدعم private preview كلاً من Apache Iceberg وDelta Lake وSharedMergeTree.
  • Parallel replicas. يجب تعطيل parallel replicas.
  • حجم الـ worker. يحتوي كل worker على 8 vCPUs و32 GiB من الذاكرة.
  • الحد الأقصى للـ workers. يمكن لكل query طلب ما يصل إلى خمسة workers خلال private preview.
  • سعة المجموعة. توافر الـ workers يقوم على أفضل جهد ممكن، فقد يحصل الـ query على عدد workers أقل من المطلوب، وإذا لم يتوفر أي worker يفشل الـ query.
  • الأداء. يتفاوت الأداء من query إلى آخر، إذ قد يؤدي تخصيص الـ workers والتخطيط الموزع ونقل مراحل الـ plan إلى زيادة الـ latency. وقد يكون أداء بعض أشكال الاستعلامات أدنى من أدائها عند التنفيذ على primary service (الاستعلامات المعتادة التي تستغرق أقل من ثانية سيكون أداؤها أفضل على الأرجح في الـ cluster الخاص بك)
  • توافقية الاستعلامات. لا يستطيع distributed planner تنفيذ كل query plan عن بُعد، وقد تُعيد الاستعلامات غير المدعومة exception من النوع SUPPORT_IS_DISABLED.

Roadmap

يُعدّ On-Demand Compute أساسًا يُبنى عليه. ومن الأعمال الجارية أو المقبلة:
  • معالجة القيود المعروفة (فجوات SUPPORT_IS_DISABLED)
  • تجمّعات (pools) بأحجام worker مختلفة
  • تثبيت أداء الاستعلامات مقارنةً بالتنفيذ Stateful
  • دعم الدمج في الخلفية (background merge)
  • التسعير
  • معايرة أداة التوسيع التلقائي لتجمّع الـ worker
  • الأوبزيرفابيليتي المدمجة
  • صلاحيات مخصّصة لـ On-Demand Compute
  • توسيع أحمال العمل الخاصة ببحيرة البيانات (الكتابة، الـ compaction، إلخ…)

Security

تأتي الـ workers من مجموعة (pool) مُهيّأة مسبقًا تتشاركها الخدمات الموجودة في الـ region نفسه، ولذلك هناك قاعدة واحدة غير قابلة للتفاوض: يخدم الـ worker خدمة واحدة في كل مرة، ولا يُنقل أبدًا من خدمة إلى أخرى. لا يتغيّر أي شيء في طريقة وصولك إلى ClickHouse. فما زال العملاء يتصلون بـ service endpoint الخاص بك باستخدام آلية المصادقة الحالية، وخدمتك هي الجهة الوحيدة التي تتواصل مع الـ workers نيابةً عنك. ولا تمتلك الـ workers أي endpoint موجّه للعملاء.
  • خدمة واحدة لكل worker: يُؤجَّر الـ worker لخدمة واحدة طوال مدة الـ lease، ولا تتشاركه خدمتان في الوقت نفسه أبدًا.
  • لا إعادة استخدام بين الخدمات: عند انتهاء الـ lease، يُدمَّر الـ worker ويُستبدل بآخر جديد، ولا يُعاد تخصيصه أبدًا لخدمة أخرى.
  • لا بيانات دائمة: لا تحتفظ الـ workers بأي تخزين دائم، ولا تبقى قائمة بعد انتهاء الـ lease.
  • الـ region نفسه الخاص بخدمتك: تعمل الـ workers في الـ region نفسه الذي تعمل فيه الخدمة التي تستأجرها، وفقًا لقواعد صارمة لإقامة البيانات.
  • ضوابط الوصول الحالية لديك تظل سارية: تتحكّم IP access lists والـ private endpoints في الـ service endpoint الخاص بك تمامًا كما في السابق، ولا تضيف الحوسبة عند الطلب أي endpoint يتعيّن عليك تهيئته أو حمايته.
  • المصادقة وRBAC الحاليان لديك: تُنفَّذ الاستعلامات بالمستخدم والصلاحيات نفسها المطبّقة على أي استعلام آخر في خدمتك، ولا تحمل الـ workers أي هوية أو نموذج أذونات منفصل.

عزل الشبكة

أثناء استئجار worker لصالح خدمتك، تسمح المنصة بمرور حركة الشبكة بين ذلك الـ worker وخدمتك، وتحجب كل ما عدا ذلك. ويُطبَّق هذا التقييد على مستوى طبقة الشبكة لا داخل محرك الاستعلام، لذا فهو لا يعتمد على الاستعلام أو إعداداته أو خطة التنفيذ التي يُنتجها المُحسِّن.
  • خدمتك وحدها تستطيع الوصول إلى الـ workers الخاصة بك. فالمسار قائم طوال مدة الاستئجار الحالي للـ worker، ولتلك الخدمة وحدها.
  • لا يمكن الوصول إلى الـ workers غير المُخصَّصة. فالـ worker الذي ينتظر في المجموعة (pool) لا يملك أي مسار شبكي من أي خدمة أو إليها إلى أن يتم استئجاره.
  • الـ workers المستأجرة لخدمات مختلفة لا يمكنها الوصول إلى بعضها. فالـ workers الموجودة داخل استئجار واحد تتبادل فيما بينها مراحل خطة التنفيذ والنتائج الوسيطة، أما الـ workers الموجودة في عمليات استئجار مختلفة فتبقى معزولة عن بعضها، حتى وإن كانت تتشارك المجموعة ذاتها.
  • يُزال المسار بزوال الـ worker. فإنهاء الاستئجار يُدمِّر الـ worker، وبذلك يزول الشيء الوحيد الذي كان مسموحًا لحركة الشبكة بالوصول إليه.
  • مسار الطلبات يبقى ضيّقًا. تتصل خدمتك بخدمة تخصيص الـ workers لاستئجارها وتجديد استئجارها، وهذا المسار لا يحمل أي بيانات استعلام ويقتصر على واجهة برمجة تطبيقات التخصيص.

authentication والتخويل الداخلي

يحدد عزل الشبكة ما الذي يمكنه الوصول إلى worker، أما authentication فتحدد ما يُسمح للـ caller بفعله بعد وصوله، ويُطبَّق الأمران بشكل مستقل: على الـ caller أن يستوفي كليهما معًا. كل connection بين الـ service الخاصة بك وservice تعيين الـ workers والـ workers نفسها هو connection مُوثَّق. لا شيء موثوق به مسبقًا؛ فجميع الـ credentials تُصدرها المنصة وتوزعها لكل lease على حدة.
  • credential واحد لكل worker: عند lease الـ workers للـ service الخاصة بك، تُصدر المنصة token موقّعًا فريدًا لكل واحد منها. ويعمل كل token مع ذلك الـ worker وحده، ومع الـ service الخاصة بك وحدها.
  • قصير الأجل ومرتبط بالـ lease: تنتهي صلاحية الـ tokens بانتهاء الـ lease الذي أصدرها. ويؤدي تجديد الـ lease إلى إصدار tokens جديدة، وبعد انتهاء الـ lease لا تعود tokens الخاصة به تُوثِّق أي شيء.
  • يتم التحقق منه لدى المنصة: يقوم الـ worker بـ validate الـ token المُقدَّم إليه لدى service الـ identity في المنصة، بدلًا من الوثوق بأي شيء يرد ضمن الـ request.
هذه الـ credentials داخلية وتخص طريقة تنفيذ ClickHouse Cloud لـ query الخاص بك، ولا تُكشف أبدًا لـ clients الخاصة بك، ولا علاقة لها بكيفية authentication لديك إلى ClickHouse: إذ تواصل الـ clients الاتصال باستخدام الـ credentials الحالية الخاصة بك، وتبقى privileges الخاصة بالـ query خاضعة لـ RBAC الخاص بالـ service لديك.

FAQ

لا. إنها معمارية خاصة بـ ClickHouse Cloud: ClickHouse server (distributed plan)، ومستوى البيانات (مجموعة العاملين وعقود الاستئجار)، ومستوى التحكم. الإعداد التجريبي make_distributed_plan ومُحسِّن CBO موجودان في ClickHouse OSS، لكن مجموعة العاملين المشتركة والتنفيذ عديم الحالة متاحان في Cloud فقط.
نعم. الإصدار المستخدم خلال المعاينة الخاصة سيكون بنية مخصصة، وقد تكون هناك حاجة إلى ترقيات إضافية خلال المعاينة.
ليس لدينا تسعير عام نشاركه في الوقت الحالي، لكن استخدام الميزة مجاني خلال المعاينة الخاصة. ومع ذلك، ستكون فلسفة التسعير مماثلة لفلسفة ClickHouse Cloud: احتساب التكلفة على أساس الحوسبة المستخدمة، لا على أساس البيانات الممسوحة أو الصفوف المقروءة. وستُنشر الأسعار الدقيقة قبل تطبيق التسعير.
يمكنك تشغيل أحمال عمل حقيقية، لكن هذه معاينة خاصة: هناك قيود معروفة وأخرى غير معروفة، ولا يوجد هدف أو اتفاقية مستوى خدمة لتوافر مجموعة العاملين.
يغيّر التوسع التلقائي الحوسبة المخصصة لخدمتك الأساسية. أما الحوسبة عند الطلب، فهي تمنح خلال المعاينة الخاصة استعلامات SELECT المؤهَّلة وصولاً مؤقتاً إلى عاملين من مجموعة مُدارة دون تغيير حجم الخدمة الأساسية. فالتوسع التلقائي يدير سعة الخدمة على نحو مستمر، بينما توفّر الحوسبة عند الطلب حوسبة مؤقتة لأحمال عمل محددة.
اسأل فريق حسابك؛ وسيعرّفك بمدير المنتج المسؤول عن الحوسبة عند الطلب.
افتح تذكرة دعم (الخطورة 3) أو أبلغ بها مدير المنتج، وأرفق query_id، ومعرّف خدمتك، والاستثناء الكامل.
لا. طوال فترة استئجار العامل لخدمتك، تسمح المنصة بحركة المرور بين ذلك العامل وخدمتك فقط، وتحجبها عن كل خدمة أخرى. أما العاملون غير المخصَّصون والعاملون المستأجَرون لخدمة أخرى، فلا يملكون أي مسار شبكي إلى خدمتك. راجع عزل الشبكة.
لا. عند انتهاء عقد الاستئجار، يُدمَّر العامل ويُستبدل بعامل جديد بدلاً من تمريره إلى الخدمة التالية.
لا. المعاينة الخاصة غير متاحة في ClickHouse BYOC أو ClickHouse Private.
آخر تعديل في ٢٦ سبتمبر ٢٠٢٦