Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Tableau Online

يمكن لـ Tableau Online الاتصال بـ ClickHouse Cloud أو ببيئة ClickHouse المحلية عبر واجهة MySQL باستخدام مصدر بيانات MySQL الرسمي.

إعداد ClickHouse Cloud

[object Object]

بعد إنشاء خدمة ClickHouse Cloud الخاصة بك، في شاشة Connect your app، حدّد MySQL من القائمة المنسدلة.

شاشة بيانات اعتماد ClickHouse Cloud التي تعرض قائمة منسدلة لاختيار واجهة MySQL

فعّل واجهة MySQL

بدّل المفتاح لتفعيل واجهة MySQL لهذه الخدمة. سيؤدي ذلك إلى إتاحة المنفذ 3306 لهذه الخدمة، وستظهر لك شاشة اتصال MySQL تتضمن اسم مستخدم MySQL الفريد الخاص بك.

مفتاح تفعيل واجهة MySQL في ClickHouse Cloud وتفاصيل الاتصال

بدلًا من ذلك، لتفعيل واجهة MySQL لخدمة موجودة:

[object Object]

تأكد من أن خدمتك في حالة Running، ثم انقر على الخدمة التي تريد تفعيل واجهة MySQL لها. حدّد "Connect" من القائمة اليسرى:

شاشة اتصال خدمة ClickHouse Cloud مع تمييز خيار Connect

[object Object]

حدّد MySQL من القائمة المنسدلة Connect With.

شاشة اتصال ClickHouse Cloud التي تعرض اختيار خيار MySQL

فعّل واجهة MySQL

بدّل المفتاح لتفعيل واجهة MySQL لهذه الخدمة. سيؤدي ذلك إلى إتاحة المنفذ 3306 لهذه الخدمة، وستظهر لك شاشة اتصال MySQL التي تتضمن اسم مستخدم MySQL الفريد الخاص بك.

شاشة اتصال ClickHouse Cloud مع تفعيل واجهة MySQL تعرض تفاصيل الاتصال

إنشاء مستخدم MySQL للقراءة فقط في ClickHouse Cloud

ينشئ ClickHouse Cloud تلقائيًا مستخدمًا باسم mysql4<subdomain> يستخدم كلمة المرور نفسها الخاصة بالمستخدم الافتراضي. ويشير الجزء <subdomain> إلى الجزء الأول من اسم المضيف الخاص بك في ClickHouse Cloud.

صيغة اسم المستخدم هذه مطلوبة للتوافق مع الأدوات التي تنشئ اتصالات آمنة لكنها لا تضمّن بيانات SNI (Server Name Indication) ضمن مصافحة TLS. ومن دون معلومات SNI، لا يستطيع النظام إجراء التوجيه الداخلي بشكل صحيح، لذلك يوفّر تلميح النطاق الفرعي المضمّن في اسم المستخدم معلومات التوجيه اللازمة. ويُعد عميل MySQL من سطر الأوامر مثالًا على أداة تتطلب ذلك.

إنشاء ملف تعريف إعدادات للقراءة فقط

أنشئ ملف تعريف إعدادات لتطبيقه على مستخدمك المخصّص للقراءة فقط، مع ضبط الإعداد readonly على 1:

CREATE SETTINGS PROFILE readonly_profile SETTINGS readonly = 1

إنشاء مستخدم MySQL جديد للقراءة فقط

أنشئ مستخدمًا باسم يتبع هذه الصيغة:

mysql4<subdomain>_<username>

طبّق readonly_profile على المستخدم الجديد، وتأكد من أن كلمة المرور بتنسيق double SHA1. على سبيل المثال:

CREATE USER mysql4foobar_readonly
IDENTIFIED WITH double_sha1_password BY 'YourPassword42$'
SETTINGS PROFILE 'readonly_profile';

منح المستخدم الجديد أذونات الوصول إلى الجداول المطلوبة

امنح المستخدم الجديد الأذونات اللازمة للوصول إلى الجداول أو قواعد البيانات المطلوبة. على سبيل المثال، إذا كنت تريد منح الوصول إلى system.query_log فقط:

GRANT SELECT ON system.query_log TO mysql4foobar_readonly;

يمكن استخدام المستخدم الذي أنشأته حديثًا للاتصال بخدمة ClickHouse Cloud الخاصة بك عبر واجهة MySQL.

استكشاف أخطاء تعدد مستخدمي MySQL في ClickHouse Cloud

إذا أنشأت مستخدم MySQL جديدًا وظهر لك الخطأ التالي أثناء الاتصال باستخدام عميل MySQL CLI:

ERROR 2013 (HY000): Lost connection to MySQL server at 'reading authorization packet', system error: 54

في هذه الحالة، تأكد من أن اسم المستخدم يتبع صيغة mysql4<subdomain>_<username>، كما هو موضّح (أعلاه).

إعداد خادم ClickHouse المحلي

يُرجى الرجوع إلى الوثائق الرسمية للتعرّف على كيفية إعداد خادم ClickHouse مع تمكين واجهة MySQL.

إلى جانب إضافة إدخال إلى ملف config.xml الخاص بالخادم

<clickhouse>
    <mysql_port>9004</mysql_port>
</clickhouse>

من الضروري أيضًا استخدام تشفير كلمة المرور باستخدام Double SHA1 للمستخدم الذي سيستخدم واجهة MySQL.

إنشاء كلمة مرور عشوائية مُشفّرة باستخدام Double SHA1 من سطر الأوامر:

PASSWORD=$(base64 < /dev/urandom | head -c16); echo "$PASSWORD"; echo -n "$PASSWORD" | sha1sum | tr -d '-' | xxd -r -p | sha1sum | tr -d '-'

يجب أن تكون المخرجات كما يلي:

LZOQYnqQN4L/T6L0
fbc958cc745a82188a51f30de69eebfc67c40ee4

السطر الأول هو كلمة المرور المُولَّدة، والسطر الثاني هو قيمة hash التي يمكن استخدامها لإعداد ClickHouse.

فيما يلي مثال على إعداد mysql_user يستخدم قيمة hash المُولَّدة:

/etc/clickhouse-server/users.d/mysql_user.xml

<users>
    <mysql_user>
        <password_double_sha1_hex>fbc958cc745a82188a51f30de69eebfc67c40ee4</password_double_sha1_hex>
        <networks>
            <ip>::/0</ip>
        </networks>
        <profile>default</profile>
        <quota>default</quota>
    </mysql_user>
</users>

استبدل الإدخال password_double_sha1_hex بقيمة Double SHA1 hash التي تولّدها بنفسك.

بالإضافة إلى ذلك، يُوصى باستخدام use_mysql_types_in_show_columns لعرض أنواع MySQL الأصلية بدلًا من أنواع ClickHouse في نتائج الاستعلام SHOW [FULL] COLUMNS، مما يتيح لأدوات BI فحص مخطط قاعدة البيانات بشكل صحيح عند استخدام موصلات MySQL.

على سبيل المثال:

/etc/clickhouse-server/users.d/mysql_user.xml

<profiles>
    <default>
        <use_mysql_types_in_show_columns>1</use_mysql_types_in_show_columns>
    </default>
</profiles>

أو أسنده إلى ملف تعريف مختلف بدلًا من الملف الافتراضي.

إذا كان البرنامج التنفيذي mysql متاحًا لديك، يمكنك اختبار الاتصال من سطر الأوامر. وباستخدام اسم المستخدم المثال (mysql_user) وكلمة المرور (LZOQYnqQN4L/T6L0) المذكورين أعلاه، سيكون الأمر في سطر الأوامر كما يلي:

mysql --protocol tcp -h localhost -u mysql_user -P 9004 --password=LZOQYnqQN4L/T6L0
mysql> show databases;
+--------------------+
| name               |
+--------------------+
| INFORMATION_SCHEMA |
| default            |
| information_schema |
| system             |
+--------------------+
4 rows in set (0.00 sec)
Read 4 rows, 603.00 B in 0.00156 sec., 2564 rows/sec., 377.48 KiB/sec.

أخيرًا، اضبط خادم ClickHouse للاستماع على عنوان IP أو العناوين المطلوبة. على سبيل المثال، في config.xml، أزل التعليق عن التالي للاستماع على جميع العناوين:

<listen_host>::</listen_host> 

ربط Tableau Online بـ ClickHouse (محليًا دون SSL)

سجّل الدخول إلى موقع Tableau Cloud الخاص بك وأضف مصدر بيانات منشورًا جديدًا.

واجهة Tableau Online تعرض زر 'New' لإنشاء مصدر بيانات منشور

حدّد "MySQL" من قائمة الموصلات المتاحة.

شاشة اختيار الموصلات في Tableau Online مع تمييز خيار MySQL

أدخِل تفاصيل الاتصال التي جمعتها أثناء إعداد ClickHouse.

شاشة إعداد اتصال MySQL في Tableau Online مع حقول الخادم والمنفذ وقاعدة البيانات وبيانات الاعتماد

سيقوم Tableau Online بفحص قاعدة البيانات وعرض قائمة بالجداول المتاحة. اسحب الجدول المطلوب إلى مساحة العمل على اليمين. بالإضافة إلى ذلك، يمكنك النقر على "Update Now" لمعاينة البيانات، وكذلك ضبط أنواع الحقول أو أسمائها التي اكتشفها بدقة أكبر.

صفحة مصدر البيانات في Tableau Online تعرض جداول قاعدة البيانات على اليسار ومساحة العمل على اليمين مع وظيفة السحب والإفلات

بعد ذلك، لن يتبقى سوى النقر على "Publish As" في الزاوية العلوية اليمنى، ومن المفترض أن تتمكن من استخدام مجموعة البيانات التي أنشأتها حديثًا في Tableau Online كالمعتاد.

ملاحظة: إذا كنت تريد استخدام Tableau Online مع Tableau Desktop ومشاركة مجموعات بيانات ClickHouse بينهما، فتأكد من استخدام Tableau Desktop مع موصل MySQL الافتراضي أيضًا، باتباع دليل الإعداد المعروض هنا إذا اخترت MySQL من القائمة المنسدلة لـ Data Source. إذا كان لديك Mac بمعالج M1، فراجع موضوع استكشاف الأخطاء وإصلاحها هذا للاطلاع على حل بديل لتثبيت برنامج التشغيل.

توصيل Tableau Online بـ ClickHouse (إعداد Cloud أو محلي باستخدام SSL)

نظرًا لعدم إمكانية توفير شهادات SSL عبر معالج إعداد اتصال MySQL في Tableau Online، فالطريقة الوحيدة هي استخدام Tableau Desktop لإعداد الاتصال، ثم تصديره إلى Tableau Online. ومع ذلك، فإن هذه العملية سهلة إلى حد كبير.

شغّل Tableau Desktop على جهاز Windows أو Mac، ثم اختر "Connect" -> "To a Server" -> "MySQL". ومن المرجح أن تحتاج أولًا إلى تثبيت برنامج تشغيل MySQL على جهازك. يمكنك القيام بذلك باتباع دليل الإعداد المعروض هنا إذا اخترت MySQL من القائمة المنسدلة Data Source. إذا كان لديك جهاز Mac بمعالج M1، فراجع سلسلة استكشاف الأخطاء وإصلاحها هذه للاطلاع على حل بديل لتثبيت برنامج التشغيل.

واجهة Tableau Desktop تعرض قائمة Connect مع تمييز خيار MySQL

أدخل بيانات اعتماد مستخدم MySQL الخاصة بمثيلك على ClickHouse Cloud، ومسار الشهادة الجذرية التي نزّلتها.

مربع حوار اتصال MySQL في Tableau Desktop مع تمكين خيار SSL ووجود حقول للخادم واسم المستخدم وكلمة المرور والشهادة

اختر الجداول المطلوبة كالمعتاد (على نحو مماثل لـ Tableau Online)، ثم اختر "Server" -> "Publish Data Source" -> Tableau Cloud.

Tableau Desktop يعرض قائمة Server مع تمييز خيار Publish Data Source

مهم: تحتاج إلى اختيار "Embedded password" ضمن خيارات "Authentication".

مربع حوار النشر في Tableau Desktop يعرض خيارات Authentication مع تحديد Embedded password

بالإضافة إلى ذلك، اختر "Update workbook to use the published data source".

مربع حوار النشر في Tableau Desktop مع تحديد خيار 'Update workbook to use the published data source'

أخيرًا، انقر على "Publish"، وسيُفتح مصدر البيانات الخاص بك مع بيانات الاعتماد المضمنة تلقائيًا في Tableau Online.

القيود المعروفة (ClickHouse 23.11)

تم إصلاح جميع القيود المعروفة في ClickHouse 23.11. إذا واجهت أي حالات عدم توافق أخرى، فلا تتردد في التواصل معنا أو إنشاء تذكرة جديدة.

Navigation