تضمن الذرية أن تُعامل المعاملة (وهي سلسلة من عمليات قاعدة البيانات) كوحدة واحدة غير قابلة للتجزئة. وهذا يعني أن جميع العمليات ضمن المعاملة إما أن تُنفَّذ بالكامل أو لا يُنفَّذ أيٌّ منها. ومن أمثلة المعاملة الذرية تحويل الأموال من حساب مصرفي إلى آخر. فإذا فشلت أي خطوة من خطوات التحويل، فستفشل المعاملة وتبقى الأموال في الحساب الأول. وتضمن الذرية عدم فقدان أي أموال أو إنشائها.
الكتلة هي وحدة منطقية لتنظيم معالجة البيانات وتخزينها. تحتوي كل كتلة على بيانات عمودية تُعالَج معًا لتحسين الأداء أثناء تنفيذ الاستعلامات. ومن خلال معالجة البيانات على شكل كتل، يستخدم ClickHouse أنوية CPU بكفاءة من خلال تقليل حالات الإخفاق في الذاكرة المخبئية وتسهيل التنفيذ المتجهي. يستخدم ClickHouse خوارزميات ضغط متنوعة، مثل LZ4 وZSTD وDelta، لضغط البيانات داخل الكتل.
مجموعة من العقد (الخوادم) تعمل معًا لتخزين البيانات ومعالجتها.
مفاتيح التشفير المُدارة من العميل (CMEK)
تتيح مفاتيح التشفير المُدارة من العميل (CMEK) للعملاء استخدام مفتاحهم في خدمة إدارة المفاتيح (KMS) لتشفير مفتاح بيانات القرص في ClickHouse وحماية بياناتهم المخزَّنة.
القاموس هو مجموعة من أزواج المفتاح والقيمة، ويُستخدم لأنواع مختلفة من القوائم المرجعية. وهو ميزة قوية تتيح استخدام القواميس بكفاءة في الاستعلامات، وغالبًا ما يكون ذلك أكثر كفاءة من استخدام JOIN مع الجداول المرجعية.
الجدول الموزّع في ClickHouse هو نوع خاص من الجداول لا يخزّن البيانات بنفسه، بل يوفّر عرضًا موحّدًا لمعالجة الاستعلامات الموزّعة عبر عدة خوادم داخل عنقود.
الحبيبة هي دفعة من الصفوف ضمن كتلة غير مضغوطة. عند قراءة البيانات، يصل ClickHouse إلى الحبيبات لا إلى الصفوف الفردية، مما يتيح معالجة أسرع للبيانات في أعباء العمل التحليلية. تحتوي الحبيبة افتراضيًا على 8192 صفًا. ويحتوي الفهرس الأساسي على إدخال واحد لكل حبيبة.
في ClickHouse، يُعدّ هذا نوعًا من العروض المادية التي تعالج البيانات وتُجمّعها وقت الإدراج. وعند إدراج بيانات جديدة في الجدول المصدر، ينفّذ العرض المادي استعلام تجميع SQL مُعرّفًا مسبقًا على الكتل المُدرَجة حديثًا فقط، ثم يكتب النتائج المُجمَّعة في الجدول الهدف.
يُعد التحديث الخفيف في ClickHouse ميزة تجريبية تتيح لك تحديث الصفوف في جدول باستخدام صيغة SQL UPDATE القياسية، ولكن بدلًا من إعادة كتابة الأعمدة بأكملها أو أجزاء البيانات (كما في mutations التقليدية)، فإنه ينشئ “أجزاء تصحيح” لا تتضمن سوى الأعمدة والصفوف المُحدَّثة. وتظهر هذه التحديثات فورًا في استعلامات SELECT من خلال تطبيق التصحيح، لكن البيانات الفعلية لا تُحدَّث إلا أثناء عمليات الدمج اللاحقة.
ملف العلامات في ClickHouse هو ملف يخزّن «العلامات»، أي مدخلات الفهرس التي تساعد ClickHouse على تحديد مواقع تخزين نطاقات بيانات معيّنة بسرعة داخل ملفات البيانات.
العرض المادي في ClickHouse هو آلية تُشغِّل تلقائيًا استعلامًا على البيانات عند إدراجها في جدول المصدر، ثم تخزّن النتائج المُحوَّلة أو المُجمَّعة في جدول هدف منفصل لتسريع الاستعلامات.
يُعد MergeTree في ClickHouse محركَ الجدول مصممًا لمعدلاتٍ عالية من استيعاب البيانات ولأحجام بيانات كبيرة. وهو محرك التخزين الأساسي في ClickHouse، ويوفر ميزات مثل التخزين العمودي، والتقسيم المخصص، والفهارس الأولية المتفرقة، ودعم عمليات دمج البيانات في الخلفية.
يشير التعديل في ClickHouse إلى عملية تُعدِّل البيانات الموجودة في جدول أو تحذفها، وعادةً ما تُنفَّذ باستخدام أوامر مثل ALTER TABLE … UPDATE أو ALTER TABLE … DELETE. وتُنفَّذ التعديلات كعمليات غير متزامنة تُجرى في الخلفية، إذ تعيد كتابة أجزاء البيانات المتأثرة بالتغيير بالكامل بدلًا من تعديل الصفوف مباشرةً في مواضعها.
تُعدّ التعديلات الفورية في ClickHouse آلية تتيح ظهور عمليات التحديث أو الحذف في استعلامات SELECT اللاحقة فور إرسال التعديل، من دون انتظار اكتمال عملية التعديل في الخلفية.
ملف مادي على قرص يخزّن جزءًا من بيانات الجدول. ويختلف هذا عن القسم، وهو تقسيم منطقي لبيانات الجدول يُنشأ باستخدام مفتاح التقسيم.
مفتاح التقسيم في ClickHouse هو تعبير SQL يُعرَّف في عبارة PARTITION BY عند إنشاء جدول. ويحدّد كيفية تجميع البيانات منطقيًا في أقسام على القرص. وتشكّل كل قيمة فريدة لمفتاح التقسيم قسمًا ماديًا مستقلًا، مما يتيح تنفيذ عمليات فعّالة لإدارة البيانات، مثل حذف أقسام كاملة أو نقلها أو أرشفتها.
في ClickHouse، يحدّد المفتاح الأساسي الترتيب الذي تُخزَّن وفقه البيانات على القرص، ويُستخدم لبناء فهرس متناثر يسرّع تصفية الاستعلامات. وعلى خلاف قواعد البيانات التقليدية، لا يفرض المفتاح الأساسي في ClickHouse التفرّد، إذ يمكن أن تمتلك عدة صفوف قيمة المفتاح الأساسي نفسها.
الإسقاط في ClickHouse هو جدول مخفي يُحدَّث تلقائيًا ويخزّن البيانات بترتيب مختلف أو مع تجميعات محسوبة مسبقًا لتسريع الاستعلامات، ولا سيما تلك التي تُجري تصفية على أعمدة ليست ضمن المفتاح الأساسي.
العرض المادي القابل للتحديث
العرض المادي القابل للتحديث هو نوع من العروض المادية يُعيد تنفيذ استعلامه دوريًا على مجموعة البيانات بالكامل ويخزّن النتيجة في الجدول الهدف. وعلى عكس العروض المادية التزايدية، تُحدَّث العروض المادية القابلة للتحديث وفق جدول زمني، ويمكنها دعم الاستعلامات المعقدة، بما في ذلك عمليات JOIN وUNION، من دون قيود.
نسخة من البيانات المخزنة في قاعدة بيانات ClickHouse. يمكنك الاحتفاظ بأي عدد من النسخ المتماثلة للبيانات نفسها لتوفير التكرار والموثوقية. وتُستخدم النسخ المتماثلة مع محرك الجدول ReplicatedMergeTree، الذي يتيح لـ ClickHouse إبقاء نسخ متعددة من البيانات متزامنة عبر خوادم مختلفة.
هو مجموعة فرعية من البيانات. يحتوي ClickHouse دائمًا على جزء واحد على الأقل لبياناتك. إذا لم تقسّم البيانات عبر عدة خوادم، فستُخزَّن بياناتك في جزء واحد. ويمكن استخدام تقسيم البيانات إلى أجزاء عبر عدة خوادم لتوزيع الحمل إذا تجاوزت سعة خادم واحد.
تُستخدم فهارس التخطي لتخزين قدرٍ صغير من البيانات الوصفية على مستوى عدة حبيبات متتالية، ما يتيح لـ ClickHouse تجنّب فحص الصفوف غير ذات الصلة. وتوفّر فهارس التخطي بديلاً خفيف الوزن عن الإسقاطات.
في ClickHouse، يحدّد مفتاح الفرز الترتيب المادي للصفوف على القرص. إذا لم تحدد مفتاحًا أساسيًا، يستخدم ClickHouse مفتاح الفرز باعتباره المفتاح الأساسي. أما إذا حددت كليهما، فيجب أن يكون المفتاح الأساسي بادئةً لمفتاح الفرز.
هو نوع من الفهرسة يحتوي فيه الفهرس الأساسي على مدخل واحد لكل مجموعة من الصفوف، بدلًا من صف واحد. ويُشار إلى المدخل الذي يقابل مجموعة من الصفوف باسم علامة. ومع الفهارس المتناثرة، يحدِّد ClickHouse أولًا مجموعات الصفوف التي قد تطابق الاستعلام، ثم يعالج كل مجموعة على حدة للعثور على تطابق. وبذلك يكون الفهرس الأساسي صغيرًا بما يكفي لتحميله في الذاكرة.
تحدد محركات الجداول في ClickHouse كيفية كتابة البيانات وتخزينها والوصول إليها. ويُعد MergeTree أكثر محركات الجداول شيوعًا، ويتيح إدراج كميات كبيرة من البيانات بسرعة، لتُعالَج في الخلفية.
TTL (Time To Live) هي ميزة في ClickHouse تعمل تلقائيًا على نقل الأعمدة أو الصفوف أو حذفها أو تجميعها بعد فترة زمنية معيّنة. يتيح لك ذلك إدارة التخزين بكفاءة أكبر، إذ يمكنك حذف البيانات التي لم تعد بحاجة إلى الوصول إليها بشكل متكرر، أو نقلها، أو أرشفتها. آخر تعديل في ٢٩ يونيو ٢٠٢٦