الانتقال إلى المحتوى الرئيسي
ClickHouse هو نظام قواعد بيانات متعدد الاستخدامات يمكن نشره بعدة طرق مختلفة بحسب احتياجاتك. وفي جوهره، فإن جميع خيارات النشر تستخدم محرك قاعدة بيانات ClickHouse القوي نفسه، والاختلاف يكمن في كيفية تفاعلك معه والمكان الذي يعمل فيه. سواء كنت تشغّل تحليلات واسعة النطاق في بيئة الإنتاج، أو تجري تحليلًا محليًا للبيانات، أو تطوّر تطبيقات، فهناك خيار نشر مصمم ليناسب حالة الاستخدام لديك. ويعني اتساق المحرك الأساسي أنك تحصل على مستوى الأداء العالي نفسه والتوافق نفسه مع SQL عبر جميع أوضاع النشر. يستعرض هذا الدليل الطرق الخمس الرئيسية لنشر ClickHouse واستخدامه:
  • خادم ClickHouse لعمليات النشر التقليدية بنموذج العميل/الخادم
  • ClickHouse Cloud لعمليات قواعد البيانات المدارة بالكامل
  • ClickHouse CLI للتطوير المحلي وإدارة البيئة السحابية
  • clickhouse-local لمعالجة البيانات عبر سطر الأوامر
  • chDB لتضمين ClickHouse مباشرةً في التطبيقات
لكل وضع نشر نقاط قوة خاصة به وحالات استخدام مثالية، وسنستعرضها بالتفصيل أدناه.

خادم ClickHouse

يمثل خادم ClickHouse بنية العميل/الخادم التقليدية، وهو مثالي لعمليات النشر في بيئات الإنتاج. ويوفر وضع النشر هذا كامل إمكانات قاعدة بيانات OLAP، مع استعلامات عالية الإنتاجية ومنخفضة زمن الوصول التي يشتهر بها ClickHouse.
من حيث مرونة النشر، يمكن تثبيت خادم ClickHouse على جهازك المحلي لأغراض التطوير أو الاختبار، أو نشره لدى كبار مزوّدي الخدمات السحابية مثل AWS وGCP وAzure لتشغيله في بيئات سحابية، أو إعداده على أجهزتك المحلية ضمن بنيتك التحتية. وبالنسبة للعمليات واسعة النطاق، يمكن تهيئته كعنقود موزّع للتعامل مع الحمل المتزايد وتوفير التوافر العالي. ويُعد وضع النشر هذا الخيار المفضل لبيئات الإنتاج التي تكون فيها الموثوقية والأداء وإمكانية الوصول إلى جميع الميزات أمورًا بالغة الأهمية.

ClickHouse Cloud

يُعد ClickHouse Cloud إصدارًا مُدارًا بالكامل من ClickHouse يزيل الأعباء التشغيلية المرتبطة بإدارة عملية النشر الخاصة بك. ومع احتفاظه بكل الإمكانات الأساسية لـ خادم ClickHouse، فإنه يعزز التجربة بميزات إضافية مصممة لتبسيط التطوير والعمليات. من أبرز مزايا ClickHouse Cloud أدواته المتكاملة. إذ يوفّر ClickPipes إطارًا قويًا لاستيعاب البيانات، ما يتيح لك توصيل البيانات وتدفقها بسهولة من مصادر متعددة من دون الحاجة إلى إدارة مسارات ETL معقدة. كما توفّر المنصة أيضًا واجهة API مخصصة للاستعلام، مما يجعل بناء التطبيقات أسهل بكثير. يتضمن SQL Console في ClickHouse Cloud ميزة قوية لـ لوحات المعلومات تتيح لك تحويل استعلاماتك إلى تصورات تفاعلية. يمكنك إنشاء لوحات معلومات ومشاركتها بالاعتماد على استعلاماتك المحفوظة، مع إمكانية إضافة عناصر تفاعلية عبر معلمات الاستعلام. ويمكن جعل لوحات المعلومات هذه ديناميكية باستخدام الفلاتر العامة، مما يتيح للمستخدمين استكشاف البيانات من خلال عروض قابلة للتخصيص — مع ملاحظة مهمة: ستحتاج إلى صلاحية قراءة على الأقل على الاستعلامات المحفوظة الأساسية لعرض هذه التصورات. لأغراض المراقبة والتحسين، يتضمن ClickHouse Cloud مخططات مدمجة وquery insights. توفّر هذه الأدوات رؤية عميقة لأداء عنقودك، مما يساعدك على فهم أنماط الاستعلامات، واستخدام الموارد، وفرص التحسين المحتملة. ويكتسب هذا المستوى من Observability أهمية خاصة للفرق التي تحتاج إلى الحفاظ على عمليات analytics عالية الأداء من دون تخصيص موارد لإدارة البنية التحتية. وتعني الطبيعة المُدارة للخدمة أنك لا تحتاج إلى القلق بشأن التحديثات أو النسخ الاحتياطية أو التوسع أو تصحيحات الأمان — فكل ذلك يُدار تلقائيًا. وهذا يجعلها خيارًا مثاليًا للمؤسسات التي تريد التركيز على بياناتها وتطبيقاتها بدلًا من إدارة قواعد البيانات.

ClickHouse CLI

تُعد ClickHouse CLI (clickhousectl) أداة سطر أوامر للتطوير المحلي لـ ClickHouse وإدارة ClickHouse Cloud. وهي تُبسّط سير العمل المتعلق بتثبيت إصدارات ClickHouse، وتشغيل مثيلات الخادم المحلية وإدارتها، وتنفيذ الاستعلامات. في التطوير المحلي، يساعد clickhousectl على تثبيت إصدارات ClickHouse وتشغيل الخوادم. يمكنك تثبيت أي إصدار من ClickHouse، وتشغيل خوادم مُسمّاة، والاتصال عبر العميل المدمج. ويحصل كل خادم على دليل بيانات خاص به، ما يتيح لك تشغيل عدة بيئات معزولة جنبًا إلى جنب. يوفّر clickhousectl أيضًا إدارةً كاملة لموارد ClickHouse Cloud، بما في ذلك إنشاء الخدمات وتوسيعها، وإدارة API keys، وإدارة organizations، مما يجعله أداة موحّدة لكلٍّ من سير العمل المحلي والسحابي.
# Install the CLI
curl https://clickhouse.com/cli | sh

# Install the latest ClickHouse, set it as your default, and symlink the clickhouse binary onto your PATH
clickhousectl local use latest
clickhousectl local server start
clickhousectl local client

clickhouse-local

تُعد clickhouse-local أداة قوية لسطر الأوامر توفّر كامل وظائف ClickHouse ضمن ملف تنفيذي مستقل. وهي في جوهرها قاعدة البيانات نفسها الخاصة بـ خادم ClickHouse، لكنها مُعبّأة بطريقة تتيح لك الاستفادة من جميع إمكانات ClickHouse مباشرةً من سطر الأوامر من دون تشغيل مثيل خادم. تتميّز هذه الأداة في تحليل البيانات السريع، خاصةً عند العمل مع الملفات المحلية أو البيانات المخزّنة في خدمات التخزين السحابي. يمكنك تنفيذ استعلامات مباشرة على الملفات بتنسيقات مختلفة (CSV وJSON وParquet وغيرها) باستخدام صيغة SQL الخاصة بـ ClickHouse، مما يجعلها خيارًا ممتازًا لاستكشاف البيانات بسرعة أو لتنفيذ مهام تحليل لمرة واحدة. وبما أن clickhouse-local يتضمن جميع وظائف ClickHouse، يمكنك استخدامه في تحويل البيانات وتحويل التنسيقات وأي عمليات أخرى على قاعدة البيانات كنت ستجريها عادةً باستخدام خادم ClickHouse. وعلى الرغم من أنه يُستخدم أساسًا للعمليات المؤقتة، فإنه يتيح أيضًا تخزين البيانات بشكل دائم باستخدام محرك التخزين نفسه الخاص بـ خادم ClickHouse عند الحاجة. إن الجمع بين دوال الجداول البعيدة وإمكانية الوصول إلى نظام الملفات المحلي يجعل clickhouse-local مفيدًا للغاية في السيناريوهات التي تحتاج فيها إلى إجراء join بين البيانات الموجودة على خادم ClickHouse والملفات الموجودة على جهازك المحلي. ويكتسب هذا أهمية خاصة عند العمل مع بيانات محلية حساسة أو مؤقتة لا ترغب في رفعها إلى خادم.

chDB

يُعد chDB ClickHouse مدمجًا كمحرك قاعدة بيانات يعمل داخل العملية، وتُعد Python التنفيذ الأساسي له، مع توفره أيضًا لـ Go وRust وNodeJS وBun. يوفّر خيار النشر هذا قدرات OLAP القوية في ClickHouse مباشرةً داخل عملية تطبيقك، مما يلغي الحاجة إلى تثبيت قاعدة بيانات منفصلة. يوفّر chDB تكاملًا سلسًا مع بيئة تطبيقك. ففي Python، على سبيل المثال، جرى تحسينه ليعمل بكفاءة مع أدوات علم البيانات الشائعة مثل Pandas وArrow، مع تقليل العبء الإضافي الناتج عن نسخ البيانات عبر Python memoryview. وهذا يجعله ذا قيمة خاصة لعلماء البيانات والمحللين الذين يرغبون في الاستفادة من أداء الاستعلامات في ClickHouse ضمن سير العمل الحالي لديهم. يمكن لـ chDB أيضًا الاتصال بقواعد البيانات التي أُنشئت باستخدام clickhouse-local، مما يوفّر مرونة في كيفية العمل مع بياناتك. وهذا يعني أنه يمكنك الانتقال بسلاسة بين التطوير المحلي، واستكشاف البيانات في Python، وحلول التخزين الأكثر ديمومة، دون تغيير أنماط الوصول إلى بياناتك.
آخر تعديل في ٢٥ يونيو ٢٠٢٦