الانتقال إلى المحتوى الرئيسي

عميل ClickHouse

Java عميل هي مكتبة توفّر واجهة برمجة تطبيقات خاصة بها، وتعزل تفاصيل اتصالات الشبكة مع خادم ClickHouse. وفي الوقت الحالي، لا تدعم سوى واجهة HTTP. كما توفّر المكتبة أدوات مساعدة للعمل مع تنسيقات ClickHouse المختلفة ووظائف أخرى ذات صلة. طُوِّر Java عميل في وقت مبكر يعود إلى عام 2015. ومع مرور الوقت، أصبحت شيفرته المصدرية صعبة الصيانة جدًا، وأصبحت واجهة برمجة التطبيقات فيه مُربِكة، كما صار من الصعب تحسينه أكثر. لذلك أعدنا تصميمه في عام 2024 في صورة مكوّن جديد client-v2. وهو يوفّر واجهة برمجة تطبيقات أوضح، وشيفرة مصدرية أخف، وتحسينات أكبر في الأداء، ودعمًا أفضل لتنسيقات ClickHouse (وخاصة RowBinary وNative). وسيستخدم JDBC هذا العميل في المستقبل القريب.

أنواع البيانات المدعومة

أنواع بيانات ClickHouse
دعم جزئي
  • AggregateFunction — لا يُدعم سوى groupBitmap لعمليات القراءة الثنائية المباشرة. بالنسبة إلى دوال التجميع الأخرى (min وmax وavg وغيرها)، استخدم combinators من نوع -Merge في الاستعلام (مثل minMerge() وavgMerge()) لاستخراج الحالة النهائية على جانب الخادم. لا يدعم SELECT * FROM table ... الأعمدة من النوع AggregateFunction.
ملاحظات حول أنواع البيانات
  • Decimal — استخدم SET output_format_decimal_trailing_zeros=1 في 21.9+ للحفاظ على الاتساق.
  • Enum — يمكن التعامل معه كسلسلة نصية أو كعدد صحيح.
  • UInt64 — يُعيَّن إلى long في عميل-v1.

الميزات

جدول ميزات العملاء: يرث مشغّل JDBC الميزات نفسها من تنفيذ العميل الأساسي. وتُدرج ميزات JDBC الأخرى في صفحته.

التوافق

  • تُختبَر جميع المشاريع في هذا المستودع مع جميع إصدارات LTS النشطة من ClickHouse.
  • سياسة الدعم
  • نوصي بترقية العميل بانتظام حتى لا تفوتك الإصلاحات الأمنية والتحسينات الجديدة.
  • إذا واجهت مشكلة في الترحيل إلى واجهة برمجة التطبيقات v2، فأنشئ issue وسنرد عليك!

التسجيل

تستخدم مكتبة عملاء Java لدينا SLF4J للتسجيل. يمكنك استخدام أي إطار عمل للتسجيل متوافق مع SLF4J، مثل Logback أو Log4j. على سبيل المثال، إذا كنت تستخدم Maven، يمكنك إضافة التبعية التالية إلى ملف pom.xml:
pom.xml

تهيئة التسجيل

يعتمد ذلك على إطار عمل التسجيل الذي تستخدمه. على سبيل المثال، إذا كنت تستخدم Logback، فيمكنك تهيئة التسجيل في ملف يُسمى logback.xml:
logback.xml
سجل التغييرات
آخر تعديل في ٢٥ يونيو ٢٠٢٦