Skip to main content
يحتوي clickhouse-jdbc-bridge على شيفرة تجريبية ولم يعد مدعومًا. وقد يتضمن مشكلات تتعلق بالموثوقية وثغرات أمنية. استخدمه على مسؤوليتك الخاصة.
يتطلب استخدام JDBC جسر ClickHouse JDBC، لذا ستحتاج إلى استخدام clickhouse-local على جهاز محلي لتمرير البيانات من قاعدة بياناتك إلى ClickHouse Cloud. تفضّل بزيارة صفحة استخدام clickhouse-local في قسم Migrate من الوثائق لمزيد من التفاصيل.
نظرة عامة: يتيح ClickHouse JDBC Bridge، بالاقتران مع jdbc table function أو JDBC table engine، لـ ClickHouse الوصول إلى البيانات من أي مصدر بيانات خارجي يتوفر له برنامج تشغيل JDBC: ويكون ذلك مفيدًا عندما لا يتوفر integration engine أصلي مدمج، أو table function، أو قاموس خارجي لمصدر البيانات الخارجي، بينما يتوفر برنامج تشغيل JDBC لهذا المصدر. يمكنك استخدام ClickHouse JDBC Bridge لكلٍّ من القراءة والكتابة، وكذلك بالتوازي مع عدة مصادر بيانات خارجية. فعلى سبيل المثال، يمكنك تشغيل distributed queries على ClickHouse عبر عدة مصادر بيانات خارجية وداخلية في الوقت الفعلي. في هذا الدرس، سنوضح لك مدى سهولة تثبيت ClickHouse JDBC Bridge وتهيئته وتشغيله لربط ClickHouse بمصدر بيانات خارجي. وسنستخدم MySQL بوصفه مصدر البيانات الخارجي في هذا الدرس. لنبدأ!
المتطلبات الأساسيةيجب أن يكون لديك وصول إلى جهاز يتوفر فيه ما يلي:
  1. Unix shell واتصال بالإنترنت
  2. wget مثبت
  3. إصدار حديث من Java (مثل OpenJDK بالإصدار >= 17) مثبت
  4. إصدار حديث من MySQL (مثل MySQL بالإصدار >=8) مثبت ويعمل
  5. إصدار حديث من ClickHouse installed ومشغّل

ثبّت ClickHouse JDBC Bridge محليًا

أسهل طريقة لاستخدام ClickHouse JDBC Bridge هي تثبيته وتشغيله على نفس المضيف الذي يعمل عليه ClickHouse: لنبدأ بالاتصال بـ Unix shell على الجهاز الذي يعمل عليه ClickHouse، ثم إنشاء مجلد محلي سنُثبّت فيه ClickHouse JDBC Bridge لاحقًا (يمكنك تسمية المجلد كما تشاء ووضعه في أي مكان تريده):
ننزّل الآن النسخة الحالية من ClickHouse JDBC Bridge إلى ذلك المجلد:
للاتصال بـ MySQL، ننشئ مصدر بيانات مُسمّى:
يمكنك الآن نسخ إعدادات التكوين التالية ولصقها في الملف ~/clickhouse-jdbc-bridge/config/datasources/mysql8.json:
في ملف الإعدادات أعلاه
  • لك حرية استخدام أي اسم تريده لمصدر البيانات، وقد استخدمنا mysql8
  • في قيمة jdbcUrl، تحتاج إلى استبدال <host> و<port> بالقيم المناسبة وفقًا لمثيل MySQL قيد التشغيل لديك، على سبيل المثال: "jdbc:mysql://localhost:3306"
  • تحتاج إلى استبدال <username> و<password> ببيانات اعتماد MySQL الخاصة بك. وإذا كنت لا تستخدم كلمة مرور، فيمكنك حذف السطر "password": "<password>" من ملف الإعدادات أعلاه
  • في قيمة driverUrls، اكتفينا بتحديد URL يمكن تنزيل الإصدار الحالي من MySQL برنامج تشغيل JDBC منه. هذا كل ما نحتاج إلى فعله، وسيتولى ClickHouse JDBC Bridge تنزيل برنامج تشغيل JDBC هذا تلقائيًا (إلى دليل خاص بنظام التشغيل).

الآن أصبحنا جاهزين لبدء ClickHouse JDBC Bridge:
لقد شغّلنا ClickHouse JDBC Bridge في وضع المقدّمة. لإيقاف Bridge، يمكنك إحضار نافذة Unix shell المذكورة أعلاه إلى المقدّمة ثم الضغط على CTRL+C.

استخدم اتصال JDBC من داخل ClickHouse

يمكن لـ ClickHouse الآن الوصول إلى بيانات MySQL إما باستخدام jdbc table function أو JDBC table engine. أسهل طريقة لتنفيذ الأمثلة التالية هي نسخها ولصقها في clickhouse-client أو في واجهة المستخدم Play.
  • jdbc table function:
نستخدم اسم مصدر البيانات المُسمّى الذي قمنا بتهيئته أعلاه كأول مَعلَمة في jdbc table function.
  • JDBC table engine:
نستخدم اسم مصدر البيانات المسمّى الذي أعددناه أعلاه كمعلمة أولى في بند محرك jdbcيجب أن يكون مخطط جدول محرك ClickHouse JDBC ومخطط جدول MySQL المتصل متطابقين؛ فعلى سبيل المثال، يجب أن تتطابق أسماء الأعمدة وترتيبها، وأن تكون أنواع بيانات الأعمدة متوافقة

تثبيت ClickHouse JDBC Bridge خارجيًا

بالنسبة إلى عنقود ClickHouse موزّع (أي عنقود يضم أكثر من مضيف ClickHouse واحد)، فمن المنطقي تثبيت ClickHouse JDBC Bridge وتشغيله خارجيًا على مضيف مستقل: وتتمثل ميزة ذلك في أن كل مضيف ClickHouse يمكنه الوصول إلى JDBC Bridge. بخلاف ذلك، سيلزم تثبيت JDBC Bridge محليًا على كل مثيل ClickHouse من المفترض أن يصل إلى مصادر بيانات خارجية عبر الـ Bridge. لتثبيت ClickHouse JDBC Bridge خارجيًا، نتبع الخطوات التالية:
  1. نثبّت ClickHouse JDBC Bridge ونُهيّئه ونشغّله على مضيف مخصص باتباع الخطوات الموضحة في القسم 1 من هذا الدليل.
  2. على كل مضيف ClickHouse، نضيف كتلة الإعداد التالية إلى إعدادات خادم ClickHouse (بحسب تنسيق الإعداد الذي اخترته، استخدم إما إصدار XML أو YAML):
  • تحتاج إلى استبدال JDBC-Bridge-Host باسم المضيف أو عنوان IP الخاص بمضيف ClickHouse JDBC Bridge المخصص
  • لقد حدّدنا المنفذ الافتراضي لـ ClickHouse JDBC Bridge وهو 9019، وإذا كنت تستخدم منفذًا مختلفًا لـ JDBC Bridge، فيجب تعديل الإعداد أعلاه وفقًا لذلك
آخر تعديل في ٢٣ يوليو ٢٠٢٦