نظرة عامة
SELECT، وفي
معالجة الاستعلامات الموزعة، تُطبَّق القيود على كل خادم على حدة.
يتحقق ClickHouse عمومًا من القيود فقط بعد اكتمال
معالجة أجزاء البيانات، بدلًا من التحقق من القيود لكل صف. وقد
يؤدي ذلك إلى حدوث حالة تُنتهك فيها القيود أثناء
معالجة الجزء.
إعدادات overflow_mode
overflow_mode، الذي يحدّد ما يحدث
عند تجاوز الحدّ، ويمكن أن يأخذ إحدى القيمتين التاليتين:
throw: إثارة استثناء (افتراضيًا).break: إيقاف تنفيذ الاستعلام وإرجاع النتيجة الجزئية، كما لو أن بيانات المصدر قد نفدت.
max_execution_time باستخدام break، لا يمكن لبعض العمليات إرجاع
نتيجة جزئية بأمان، لذا تتوقف دون إنتاج أي نتيجة بدلًا من إنتاج نتيجة أصغر. تتوقف الدالة التي
تحسب قيمة واحدة دون إنتاج تلك القيمة؛ ويعتمد وصول التوقف إلى
العميل أيضًا على شكل خطأ TIMEOUT_EXCEEDED، أو على شكل نتيجة مفقودة فقط، على موضع
مقاطعة الاستعلام. لا يغيّر انتهاء المهلة عملية تعديل غير مكتملة لجدول Memory الجدولَ،
وتُبلّغ عن TIMEOUT_EXCEEDED. قد تُبلّغ عملية INSERT عن QUERY_WAS_CANCELLED. بعض العمليات التي تنتظر
نسخًا متماثلة أخرى أو عملًا في الخلفية لا تتوقف عند max_execution_time على الإطلاق: تظل
كتابة النصاب في الانتظار حتى استيفاء النصاب، أو تُبلّغ عن UNKNOWN_STATUS_OF_INSERT إذا
انقضت insert_quorum_timeout أولًا.
إعدادات group_by_overflow_mode
group_by_overflow_mode أيضًا
القيمة any:
any: واصِل التجميع للمفاتيح التي دخلت إلى المجموعة، ولكن لا تُضِف مفاتيح جديدة إلى المجموعة.
قائمة الإعدادات
يمكن أن تكون قيمة القيود المفروضة على “الحد الأقصى لكمية شيء ما” هي
0،
ما يعني أنها “دون قيود”.الإعدادات المتقادمة
الإعدادات التالية متقادمة