المتطلبات المسبقة
نفترض أن لديك دراية بـ:
- ClickHouse Connector Sink
- Confluent Platform وCustom Connectors.
الموصل الرسمي لـ Kafka من ClickHouse مع Confluent Platform
التثبيت على Confluent Platform
هذا دليل سريع لمساعدتك على البدء باستخدام ClickHouse Sink Connector على Confluent Platform. لمزيد من التفاصيل، يُرجى الرجوع إلى وثائق Confluent الرسمية.
إنشاء Topic
يُعدّ إنشاء Topic على Confluent Platform أمرًا بسيطًا نسبيًا، وتتوفر إرشادات مفصلة هنا.
ملاحظات مهمة
- يجب أن يتطابق اسم Kafka topic مع اسم جدول ClickHouse. ويمكن تعديل ذلك باستخدام مُحوِّل (على سبيل المثال
ExtractTopic). - لا يعني وجود المزيد من الأقسام دائمًا أداءً أفضل — راجع دليلنا القادم لمزيد من التفاصيل ونصائح تحسين الأداء.
تثبيت الموصّل
يمكنك تنزيل الموصّل من المستودع — ولا تتردد أيضًا في إرسال التعليقات والمشكلات هناك!
انتقل إلى "Connector Plugins" -> "Add plugin"، ثم استخدم الإعدادات التالية:
'Connector Class' - 'com.clickhouse.kafka.connect.ClickHouseSinkConnector'
'Connector type' - Sink
'Sensitive properties' - 'password'. This will ensure entries of the ClickHouse password are masked during configuration.مثال:

اجمع بيانات الاتصال الخاصة بك
للاتصال بـ ClickHouse باستخدام HTTP(S)، تحتاج إلى المعلومات التالية:
| المعلمات | الوصف |
|---|---|
HOST and PORT |
عادةً ما يكون المنفذ 8443 عند استخدام TLS، أو 8123 عند عدم استخدام TLS. |
DATABASE NAME |
افتراضيًا، توجد قاعدة بيانات باسم default. استخدم اسم قاعدة البيانات التي تريد الاتصال بها. |
USERNAME and PASSWORD |
افتراضيًا، يكون اسم المستخدم default. استخدم اسم المستخدم المناسب لحالة الاستخدام لديك. |
تتوفر تفاصيل خدمة ClickHouse Cloud الخاصة بك في ClickHouse Cloud console. حدِّد خدمة ثم انقر على Connect:

اختر HTTPS. ستظهر تفاصيل الاتصال في مثال لأمر curl.

إذا كنت تستخدم ClickHouse مُدارًا ذاتيًا، فسيُحدِّد مسؤول ClickHouse لديك تفاصيل الاتصال.
تهيئة الموصل
انتقل إلى Connectors -> Add Connector واستخدم الإعدادات التالية (لاحظ أن القيم الواردة هنا هي أمثلة فقط):
{
"database": "<DATABASE_NAME>",
"errors.retry.timeout": "30",
"exactlyOnce": "false",
"schemas.enable": "false",
"hostname": "<CLICKHOUSE_HOSTNAME>",
"password": "<SAMPLE_PASSWORD>",
"port": "8443",
"ssl": "true",
"topics": "<TOPIC_NAME>",
"username": "<SAMPLE_USERNAME>",
"key.converter": "org.apache.kafka.connect.storage.StringConverter",
"value.converter": "org.apache.kafka.connect.json.JsonConverter",
"value.converter.schemas.enable": "false"
}حدّد نقاط نهاية الاتصال
تحتاج إلى تحديد قائمة السماح الخاصة بنقاط النهاية التي يمكن للموصل الوصول إليها.
يجب استخدام اسم نطاق مؤهل بالكامل (FQDN) عند إضافة نقاط نهاية الخروج الشبكي.
مثال: u57swl97we.eu-west-1.aws.clickhouse.com:8443
وبذلك يكون كل شيء جاهزًا!
القيود المعروفة
- يجب أن تستخدم Custom Connectors نقاط نهاية عامة عبر الإنترنت. عناوين IP الثابتة غير مدعومة.
- يمكنك تجاوز بعض خصائص Custom Connector. راجع القائمة في الوثائق الرسمية.
- تتوفر Custom Connectors فقط في بعض مناطق AWS
- راجع قائمة قيود Custom Connectors في الوثائق الرسمية