المفاهيم الأساسية
دليل الإعداد
1
اجمع تفاصيل الاتصال بـ ClickHouse
للاتصال بـ ClickHouse باستخدام HTTP(S)، تحتاج إلى المعلومات التالية:
اختر HTTPS. ستظهر تفاصيل الاتصال في مثال لأمر 
إذا كنت تستخدم ClickHouse مُدارًا ذاتيًا، فسيُحدِّد مسؤول ClickHouse لديك تفاصيل الاتصال.
تتوفر تفاصيل خدمة ClickHouse Cloud الخاصة بك في ClickHouse Cloud console.
حدِّد خدمة ثم انقر على Connect:

curl.
2
المتطلبات الأساسية لـ Apify
ستحتاج أيضًا إلى:
- حساب Apify (تتوفر فئة مجانية).
- رمز واجهة برمجة تطبيقات لـ Apify، ويمكن العثور عليه في Settings > Integrations ضمن Apify Console.
- تثبيت Node.js 18+ محليًا (لأمثلة JavaScript).
3
ثبّت التبعيات
ثبّت عميل JavaScript من Apify وعميل JavaScript من ClickHouse:
يوفر Apify أيضًا عميل بايثون. إذا كنت تفضل بايثون، فثبّت
apify-client باستخدام pip، واستخدم clickhouse-connect مع ClickHouse.4
أنشئ جدولًا مستهدفًا في ClickHouse
أنشئ جدولًا لتخزين البيانات المستخرجة. يعتمد المخطط على الـ Actor الذي تستخدمه. يستخدم هذا المثال MergeTree مع Actor لاستخراج بيانات المنتجات:
5
اجلب Dataset لـ Apify وحمّلها إلى ClickHouse
يجلب البرنامج النصي التالي نتائج تشغيل Actor في Apify ويدرجها في ClickHouse:
6
أتمتة العملية باستخدام webhooks
بدلًا من تشغيل البرنامج النصي يدويًا، أتمت مسار المعالجة بحيث تُحمَّل البيانات إلى ClickHouse في كل مرة ينتهي فيها Actor:
- في Apify Console، انتقل إلى Actor الخاص بك وافتح علامة التبويب Integrations.
- أضف webhook جديدًا بالإعدادات التالية:
- نوع الحدث:
ACTOR.RUN.SUCCEEDED - الإجراء: طلب HTTP POST إلى نقطة نهاية أداة التحميل لديك، أو تشغيل Actor آخر يتولى الإدراج في ClickHouse.
- نوع الحدث:
- تتضمن حمولة webhook القيمة
defaultDatasetId، والتي يمكنك استخدامها لجلب نتائج التشغيل.
أفضل الممارسات
جلب البيانات من Apify
apify-client لـ JavaScript أو بايثون) بدلًا من استدعاءات HTTP المباشرة. فهي تتولى تقسيم النتائج إلى صفحات، وإعادة المحاولة، والمصادقة نيابةً عنك. وبالنسبة إلى مجموعات البيانات الكبيرة، صفِّح النتائج باستخدام المعلَمتين limit وoffset في نقطة النهاية List dataset items.
تحميل البيانات إلى ClickHouse
JSONEachRow عند الإدراج في ClickHouse. فهو يتوافق مباشرةً مع مخرجات JSON من Apify من دون الحاجة إلى أي تحويل.
احرص على أن يطابق مخطط جدول ClickHouse لديك حقول المخرجات الخاصة بـ Actor. تحقّق من مخطط المخرجات الخاص بـ Actor في صفحته على Apify Store أو في علامة التبويب Dataset بعد التشغيل.
الأداء
الأمان
default وقاعدة البيانات الافتراضية لتبسيط الأمور. في بيئة production، أنشئ مستخدمًا مخصصًا يتمتع بالحد الأدنى من الامتيازات اللازمة للإدراج في الجدول المستهدف، وخزّن بيانات الاعتماد بأمان (على سبيل المثال، في متغيرات البيئة أو في مدير الأسرار بدلًا من تضمينها في الشيفرة المصدرية). راجع Cloud access management للحصول على إرشادات.