Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

Looker Studio

تكامل شريك

يمكن لـ Looker Studio الاتصال بـ ClickHouse من خلال واجهة MySQL باستخدام مصدر بيانات Google 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> 

ربط Looker Studio بـ ClickHouse

أولاً، سجّل الدخول إلى Looker Studio باستخدام حساب Google الخاص بك، ثم أنشئ مصدر بيانات جديدًا:

إنشاء مصدر بيانات جديد في واجهة Looker Studio

ابحث عن موصل MySQL الرسمي الذي توفّره Google (ويظهر باسم MySQL فقط):

البحث عن موصل MySQL في قائمة الموصلات في Looker Studio

حدّد تفاصيل الاتصال الخاصة بك. يُرجى ملاحظة أن منفذ واجهة MySQL هو 9004 افتراضيًا، وقد يختلف ذلك حسب إعدادات الخادم لديك.

تحديد تفاصيل اتصال MySQL الخاصة بـ ClickHouse في Looker Studio

الآن، لديك خياران لجلب البيانات من ClickHouse. أولاً، يمكنك استخدام ميزة Table Browser:

استخدام Table Browser لتحديد جداول ClickHouse في Looker Studio

أو يمكنك تحديد استعلام SQL مخصص لجلب بياناتك:

استخدام استعلام SQL مخصص لجلب البيانات من ClickHouse في Looker Studio

أخيرًا، ينبغي أن تتمكن من رؤية بنية الجدول التي جرى استكشافها وضبط أنواع البيانات إذا لزم الأمر.

عرض بنية جدول ClickHouse التي جرى استكشافها في Looker Studio

يمكنك الآن المتابعة لاستكشاف بياناتك أو إنشاء تقرير جديد!

استخدام Looker Studio مع ClickHouse Cloud

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

تمكين واجهة MySQL في إعدادات ClickHouse Cloud

في واجهة مستخدم Looker Studio، اختر خيار "Enable SSL". شهادة SSL الخاصة بـ ClickHouse Cloud موقَّعة من Let's Encrypt. يمكنك تنزيل الشهادة الجذرية من هنا.

إعداد اتصال Looker Studio مع إعدادات SSL الخاصة بـ ClickHouse Cloud

بقية الخطوات هي نفسها المذكورة أعلاه في القسم السابق.

Navigation