> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-mintlify-8c05c8a2.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> تعرّف على ما يميز ClickHouse عن غيره من أنظمة إدارة قواعد البيانات

# الخصائص الفريدة لـ ClickHouse

<div id="true-column-oriented-database-management-system">
  ## نظام إدارة قواعد بيانات حقيقي قائم على الأعمدة
</div>

في نظام إدارة قواعد بيانات حقيقي قائم على الأعمدة، لا تُخزَّن أي بيانات إضافية مع القيم. وهذا يعني ضرورة دعم القيم ذات الطول الثابت لتجنّب تخزين "رقم" الطول إلى جانب القيم. فعلى سبيل المثال، ينبغي أن تستهلك مليار قيمة من النوع UInt8 نحو 1 GB من البيانات غير المضغوطة، وإلا فسيؤثر ذلك بشدة في استخدام CPU. ومن الضروري تخزين البيانات بصورة مدمجة (من دون أي "شوائب") حتى عندما تكون غير مضغوطة، لأن سرعة فك الضغط (استخدام CPU) تعتمد أساسًا على حجم البيانات غير المضغوطة.

وهذا بخلاف الأنظمة التي يمكنها تخزين قيم الأعمدة المختلفة بصورة منفصلة، لكنها لا تستطيع معالجة الاستعلامات التحليلية بكفاءة بسبب تحسينها لسيناريوهات أخرى، مثل HBase وBigtable وCassandra وHypertable. ففي هذه الأنظمة ستحصل على معدل نقل يبلغ نحو مئة ألف صف في الثانية، لا مئات الملايين من الصفوف في الثانية.

أخيرًا، ClickHouse هو نظام إدارة قواعد بيانات، وليس قاعدة بيانات واحدة. فهو يتيح إنشاء الجداول وقواعد البيانات في وقت التشغيل، وتحميل البيانات، وتشغيل الاستعلامات من دون إعادة تهيئة الخادم أو إعادة تشغيله.

<div id="data-compression">
  ## ضغط البيانات
</div>

لا تستخدم بعض أنظمة إدارة قواعد البيانات القائمة على الأعمدة ضغط البيانات. ومع ذلك، يؤدي ضغط البيانات دورًا أساسيًا في تحقيق أداء ممتاز.

إضافةً إلى ترميزات الضغط العامة الفعّالة ذات المفاضلات المختلفة بين مساحة القرص واستهلاك CPU، يوفّر ClickHouse [ترميزات متخصصة](/ar/reference/statements/create/table#specialized-codecs) لأنواع محددة من البيانات، مما يتيح لـ ClickHouse منافسة قواعد البيانات الأكثر تخصصًا، مثل قواعد بيانات السلاسل الزمنية، والتفوّق عليها.

<div id="disk-storage-of-data">
  ## تخزين البيانات على القرص
</div>

إن الاحتفاظ بالبيانات مرتبةً فعليًا حسب المفتاح الأساسي يتيح استخراجها استنادًا إلى قيم محددة أو نطاقات من القيم بزمن استجابة منخفض لا يتجاوز بضع عشرات من المللي ثانية. وبعض أنظمة إدارة قواعد البيانات القائمة على الأعمدة، مثل SAP HANA وGoogle PowerDrill، لا يمكنها العمل إلا في RAM. ويتطلب هذا النهج تخصيص ميزانية عتادية أكبر من اللازم للتحليل في الوقت الفعلي.

صُمم ClickHouse للعمل على الأقراص الصلبة العادية، ما يعني أن تكلفة تخزين البيانات لكل GB منخفضة، مع الاستفادة الكاملة أيضًا من SSD وRAM الإضافية إذا كانا متاحين.

<div id="parallel-processing-on-multiple-cores">
  ## المعالجة المتوازية على عدة أنوية
</div>

تُعالَج الاستعلامات الكبيرة بالتوازي تلقائيًا، مع الاستفادة من جميع الموارد اللازمة المتاحة على الخادم الحالي.

<div id="distributed-processing-on-multiple-servers">
  ## المعالجة الموزعة على عدة خوادم
</div>

لا يكاد أيٌّ من نظم إدارة قواعد البيانات القائمة على الأعمدة المذكورة أعلاه يدعم معالجة الاستعلامات الموزعة.

في ClickHouse، يمكن أن تكون البيانات موزعة على أجزاء مختلفة. ويمكن أن يكون كل جزء مجموعةً من النسخ المتماثلة تُستخدم لتحمّل الأعطال. وتُستخدم جميع الأجزاء لتشغيل الاستعلام بالتوازي، بشكل شفاف للمستخدم.

<div id="sql-support">
  ## دعم SQL
</div>

يدعم ClickHouse [لغة استعلام تصريحية](/ar/reference/home) تستند إلى SQL، وهي متوافقة إلى حدّ كبير مع معيار ANSI SQL.

تشمل الاستعلامات المدعومة [GROUP BY](/ar/reference/statements/select/group-by)، و[ORDER BY](/ar/reference/statements/select/order-by)، والاستعلامات الفرعية ضمن [FROM](/ar/reference/statements/select/from)، وبند [JOIN](/ar/reference/statements/select/join)، والمعامل [IN](/ar/reference/statements/in)، و[window functions](/ar/reference/functions/window-functions/index)، والاستعلامات الفرعية ذات القيمة المفردة.

الاستعلامات الفرعية المترابطة (التابعة) غير مدعومة وقت كتابة هذه السطور، لكنها قد تصبح متاحة في المستقبل.

<div id="vector-engine">
  ## محرك الحوسبة المتجهية
</div>

لا تُخزَّن البيانات في أعمدة فقط، بل تُعالَج أيضًا على هيئة متجهات (أجزاء من الأعمدة)، مما يتيح كفاءة عالية في استخدام CPU.

<div id="real-time-data-updates">
  ## إدراج البيانات في الوقت الفعلي
</div>

يدعم ClickHouse الجداول ذات المفتاح الأساسي. ولتنفيذ الاستعلامات بسرعة على نطاق المفتاح الأساسي، تُرتَّب البيانات تدريجيًا باستخدام MergeTree. وبفضل ذلك، يمكن إضافة البيانات إلى الجدول باستمرار. ولا تُؤخذ أي أقفال عند استيعاب بيانات جديدة.

<div id="primary-index">
  ## الفهارس الأساسية
</div>

إن فرز البيانات فعليًا حسب المفتاح الأساسي يتيح استخراجها استنادًا إلى قيم محددة أو نطاقات من القيم بزمن استجابة منخفض، في أقل من بضع عشرات من المللي ثانية.

<div id="secondary-indexes">
  ## الفهارس الثانوية
</div>

على عكس أنظمة إدارة قواعد البيانات الأخرى، لا تُشير الفهارس الثانوية في ClickHouse إلى صفوف بعينها أو نطاقات من الصفوف. وبدلاً من ذلك، تتيح لقاعدة البيانات معرفة مسبقًا بأن جميع الصفوف في بعض أجزاء البيانات لن تطابق شروط التصفية في الاستعلام، لذا لا تتم قراءتها أصلًا، ولهذا تُسمى [فهارس تخطي البيانات](/ar/reference/engines/table-engines/mergetree-family/mergetree#table_engine-mergetree-data_skipping-indexes).

<div id="suitable-for-online-queries">
  ## مناسب للاستعلامات الآنية
</div>

لا تهدف معظم أنظمة إدارة قواعد البيانات من نوع OLAP إلى تنفيذ استعلامات آنية بزمن استجابة يقل عن ثانية. وفي الأنظمة البديلة، غالبًا ما يُعدّ زمن إنشاء التقارير الذي يبلغ عشرات الثواني، أو حتى دقائق، أمرًا مقبولًا. وأحيانًا يستغرق ذلك وقتًا أطول، مما يضطر الأنظمة إلى إعداد التقارير دون اتصال مسبقًا (سلفًا أو بالردّ: "عُد لاحقًا").

في ClickHouse، تعني "زمن الاستجابة المنخفض" أن الاستعلامات يمكن معالجتها من دون تأخير ومن دون محاولة إعداد الإجابة مسبقًا، في اللحظة نفسها التي تُحمَّل فيها صفحة واجهة المستخدم — أي، بعبارة أخرى، *آنيًا*.

<div id="support-for-approximated-calculations">
  ## دعم الحسابات التقريبية
</div>

يوفّر ClickHouse عدة طرق للمفاضلة بين الدقة والأداء:

1. الدوال التجميعية لإجراء حسابات تقريبية لعدد القيم المميّزة، والوسيطات، والكوانتايلات.
2. تشغيل استعلام استنادًا إلى جزء ([SAMPLE](/ar/reference/statements/select/sample)) من البيانات والحصول على نتيجة تقريبية. في هذه الحالة، تُسترجع كمية أقل من البيانات من القرص بشكل متناسب.
3. إجراء تجميع لعدد محدود من المفاتيح العشوائية بدلًا من جميع المفاتيح. وفي ظل شروط معيّنة لتوزيع المفاتيح في البيانات، يوفّر ذلك نتيجة دقيقة بدرجة معقولة مع استخدام موارد أقل.

<div id="adaptive-join-algorithm">
  ## خوارزمية JOIN التكيفية
</div>

يختار ClickHouse بشكل تكيّفي طريقة [JOIN](/ar/reference/statements/select/join) بين عدة جداول، مع تفضيل hash join واللجوء إلى merge join إذا كان هناك أكثر من جدول كبير.

<div id="data-replication-and-data-integrity-support">
  ## دعم تكرار البيانات وسلامة البيانات
</div>

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

لمزيد من المعلومات، راجع قسم [تكرار البيانات](/ar/reference/engines/table-engines/mergetree-family/replication).

<div id="role-based-access-control">
  ## التحكم في الوصول المستند إلى الأدوار
</div>

يعتمد ClickHouse على استعلامات SQL لإدارة حسابات المستخدمين، ويوفّر [إعدادات التحكم في الوصول المستند إلى الأدوار](/ar/concepts/features/security/access-rights) على نحو مماثل لما هو موجود في معيار ANSI SQL وأنظمة إدارة قواعد البيانات العلائقية الشائعة.

<div id="clickhouse-features-that-can-be-considered-disadvantages">
  ## ميزات قد تُعدّ عيوبًا
</div>

1. لا توجد معاملات متكاملة بالكامل.
2. لا تتوفر إمكانية تعديل البيانات المُدرجة مسبقًا أو حذفها بمعدلات عالية وبزمن استجابة منخفض. تتوفر عمليات حذف وتحديث مجمّعة لتنظيف البيانات أو تعديلها، على سبيل المثال، للامتثال لـ [GDPR](https://gdpr-info.eu).
3. يجعل الفهرس المتناثر ClickHouse أقل كفاءة في الاستعلامات النقطية التي تسترجع صفوفًا فردية بحسب مفاتيحها.
