السؤال
الإجابة
clickhouse-keeper على نطاق واسع عبر آلاف الخدمات في بيئة متعددة المستأجرين. لقد صممنا Keeper وطوّرناه لكي نستغني عن اعتمادنا على تنفيذ ZooKeeper المستند إلى Java. يعالج ClickHouse Keeper العديد من العيوب المعروفة في ZooKeeper، ويقدّم أيضًا تحسينات إضافية، منها:
- تستهلك اللقطات والسجلات مساحة أقل بكثير على القرص بفضل الضغط الأفضل
- لا يوجد حد افتراضي لحجم الحزمة وبيانات العقدة (بينما يبلغ 1 MB في ZooKeeper)
- لا توجد مشكلة تجاوز سعة
zxid(إذ يفرض ذلك إعادة التشغيل كل 2B معاملة في ZooKeeper) - تعافٍ أسرع بعد انقسامات الشبكة بفضل استخدام بروتوكول توافق موزّع أفضل
- يستهلك ذاكرة أقل لنفس حجم البيانات
- إعداده أسهل، ولا يتطلب تحديد حجم heap الخاص بـ JVM أو استخدام آلية garbage collection مخصصة
- تتيح بعض الأوامر المخصصة في البروتوكول تنفيذ عمليات أسرع في جداول
ReplicatedMergeTree - تغطية أوسع باختبارات Jepsen
clickhouse-keeper بدلًا من ZooKeeper.
اطّلع على صفحة توثيق Keeper لمزيد من التفاصيل حول كيفية تهيئة ClickHouse Keeper وتشغيله.