إدخال البيانات
المسار A: ClickPipes (مُدارة، ClickHouse Cloud فقط)
- التدفّق: Apache Kafka (بما في ذلك MSK وConfluent Cloud وRedpanda وAzure Event Hubs وWarpStream)، Amazon Kinesis
- تخزين الكائنات: Amazon S3 (والمخازن المتوافقة مع S3)، Google Cloud Storage، Azure Blob Storage
- CDC: PostgreSQL، MySQL، MongoDB، BigQuery
المسار B: الإدخال ذاتي الإدارة عبر مكتبة عملاء رسمية للغات البرمجة
- العملاء الرسميون: بايثون، Go، Java، JavaScript، Rust، C#، C++
- بروتوكولا النقل كلاهما: HTTP (جميع العملاء) وnative TCP (عملاء Go وC++ فقط)
- المصادقة: اسم المستخدم وكلمة المرور عبر TLS افتراضيًا؛ كما أن mTLS والمصادقة بشهادة عميل SSL مدعومتان في جميع العملاء الرئيسيين
- يكون تنسيق البيانات عادةً تفصيلًا تنفيذيًا داخليًا. تحوّل مكتبات العملاء الأنواع في وقت التشغيل إلى تنسيق ClickHouse Native أو RowBinary format. وإذا كنت تُنتج بالفعل Arrow أو Parquet أو JSONEachRow أو تنسيقًا آخر، فإن معظم مكتبات العملاء توفّر واجهة برمجة تطبيقات للبايتات الخام للبيانات المُسلسلة مسبقًا
- لتحقيق الإنتاجية، اجمع 10K–100K صفًا في الدفعة واستهدف تقريبًا عملية insert واحدة في الثانية كحدٍّ أقصى لعمليات الإدراج المتزامنة. وإذا كان التجميع على دفعات من جهة العميل غير عملي، فاستخدم عمليات الإدراج غير المتزامنة لنقل التجميع على دفعات إلى الخادم
الاستهلاك
- كود التطبيق: استخدم مكتبات العملاء الرسمية للغات البرمجة نفسها كما في إدخال البيانات
- أدوات BI وSQL: يوفّر ClickHouse رسميًا برنامج تشغيل JDBC v2 (Java) وبرنامج تشغيل ODBC. ويتكامل Tableau وLooker وPower BI وMetabase وApache Superset وGrafana عبر برامج التشغيل هذه أو عبر موصلات مخصصة تديرها ClickHouse وشركاؤها
- تنسيق النتائج: تتولى البرامج العميلة عادةً عملية التسلسل. ويمكنك طلب Arrow أو Parquet أو تنسيقات عمودية أخرى على الشبكة إذا كان منتجك يحتاج إليها
تحديد حجم مجموعة النتائج
SELECT * غير المقيّد على جدول وقائع كبير تيرابايتات من البيانات. صِغ الطلب في تطبيقك بعناية: استخدم LIMIT، وترقيم الصفحات، والقراءات المتدفقة، وقوائم أعمدة صريحة. إذا كنت تبني تحليلات موجّهة للمستخدمين، فاعتبر مجموعات النتائج غير المقيّدة مشكلة في تجربة الاستخدام، لا مشكلة في النقل.
يتميّز ClickHouse بنظام أنواع غني: Array وTuple وMap وJSON وNested وLowCardinality وغيرها. وتربط مكتبات العميل الرسمية هذه الأنواع بأنواع لغوية مناسبة لكل لغة. إذا كان منتجك يعرض بيانات ClickHouse للمستخدمين النهائيين، فضع استراتيجية لربط الأنواع في وقت مبكر.
الخطوات التالية
الصيغة المتعارف عليها لسلسلة User-Agent
User-Agent تُعرّف تكاملك. ويحلّل ClickHouse هذه السلسلة على جانب الخادم لتتبّع مستوى الاعتماد، وعرض بيانات القياس عن بُعد الخاصة بالاستخدام، والاستناد إليها في خارطة الطريق.
التنسيق:
clickhouse-java/0.8.0my-analytics-app/3.1.2 clickhouse-js/1.2.0 (env: staging; region: us-east-1; lv: node/20.10)
- يجب ألا توجد مسافات في اسم العميل أو الإصدار
- إذا أدرجت تعليقًا، فيجب أن يأتي أولًا
- مفاتيح البيانات الوصفية القياسية:
lv(إصدار اللغة أو إطار العمل)،os،arch - تُبلغ عملاء TCP وعملاء البروتوكول الأصلي عن اسم العميل وإصداره عبر حقول البروتوكول، وليس عبر
User-Agent
User-Agent والحقول ذات الصلة.