> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

> دفق البيانات إلى ClickHouse باستخدام مسارات بيانات BladePipe

# ربط BladePipe بـ ClickHouse

export const PartnerBadge = () => {
  return <div className="PartnerBadge">
            <div className="PartnerBadgeIcon">
                <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                    <polyline points="12.5 9.5 10 12 6 11 2.5 8.5" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1" />
                    <polyline points="4.54 4.41 8 3.5 11.46 4.41" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1" />
                    <path d="M2.15,3.78 L0.55,6.95 A0.5,0.5 0,0,0 0.77,7.62 L2.5,8.5 L4.54,4.41 L2.82,3.55 A0.5,0.5 0,0,0 2.15,3.78 Z" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1" />
                    <path d="M13.5,8.5 L15.23,7.62 A0.5,0.5 0,0,0 15.45,6.95 L13.85,3.78 A0.5,0.5 0,0,0 13.18,3.55 L11.46,4.41 Z" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1" />
                    <path d="M11.5,4.5 L9,4.5 L6.15,7.27 A0.5,0.5 0,0,0 6.24,8.05 C7.33,8.74 8.81,8.72 10,7.5 L12.5,9.5 L13.5,8.5" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1" />
                    <polyline points="7.75 13.5 5.15 12.85 3.5 11.67" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" strokeWidth="1" />
                </svg>
            </div>
            تكامل شريك
        </div>;
};

export const Image = ({img, alt, size = "lg"}) => {
  const normalizedSize = ["sm", "md", "lg"].includes(size) ? size : "lg";
  return <div className={`ch-image-${normalizedSize}`}>
      <Frame>
        <img src={img} alt={alt} />
      </Frame>
    </div>;
};

<PartnerBadge />

<a href="https://www.bladepipe.com/" target="_blank">BladePipe</a> هي أداة تكامل بيانات شاملة من البداية إلى النهاية في الوقت الفعلي، بزمن استجابة يقل عن ثانية، ما يضمن تدفقًا سلسًا للبيانات عبر المنصات.

يُعد ClickHouse أحد الموصلات الجاهزة في BladePipe، ما يتيح للمستخدمين دمج البيانات من مصادر متعددة في ClickHouse تلقائيًا. توضّح هذه الصفحة كيفية تحميل البيانات إلى ClickHouse في الوقت الفعلي خطوة بخطوة.

<div id="supported-sources">
  ## المصادر المدعومة
</div>

يدعم BladePipe حاليًا تكامل البيانات مع ClickHouse من المصادر التالية:

* MySQL/MariaDB/AuroraMySQL
* Oracle
* PostgreSQL/AuroraPostgreSQL
* MongoDB
* Kafka
* PolarDB-MySQL
* OceanBase
* TiDB

سيجري دعم المزيد من المصادر لاحقًا.

<Steps>
  <Step title="تنزيل وتشغيل BladePipe" id="1-run-bladepipe">
    1. سجّل الدخول إلى <a href="https://www.bladepipe.com/" target="_blank">BladePipe Cloud</a>.

    2. اتبع التعليمات الواردة في <a href="https://doc.bladepipe.com/productOP/byoc/installation/install_worker_docker" target="_blank">تثبيت Worker (Docker)</a> أو <a href="https://doc.bladepipe.com/productOP/byoc/installation/install_worker_binary" target="_blank">تثبيت Worker (الملف التنفيذي)</a> لتنزيل Worker من BladePipe وتثبيته.

    <Note>
      بدلاً من ذلك، يمكنك تنزيل <a href="https://doc.bladepipe.com/productOP/onPremise/installation/install_all_in_one_binary" target="_blank">BladePipe Enterprise</a> ونشره.
    </Note>
  </Step>

  <Step title="أضِف ClickHouse كوجهة" id="2-add-clickhouse-as-a-target">
    <Note>
      1. يدعم BladePipe إصدار ClickHouse `20.12.3.3` أو الإصدارات الأحدث.
      2. لاستخدام ClickHouse كوجهة، تأكَّد من أن لدى المستخدم أذونات SELECT وINSERT وأذونات DDL الشائعة.
    </Note>

    1. في BladePipe، انقر على "DataSource" > "Add DataSource".

    2. اختر `ClickHouse`، ثم املأ الإعدادات بإدخال مضيف ClickHouse والمنفذ واسم المستخدم وكلمة المرور، ثم انقر على "Test Connection".

           <Image img="https://mintcdn.com/private-7c7dfe99/pIetLsS_hOGHqoPJ/images/integrations/data-ingestion/etl-tools/bp_ck_1.webp?fit=max&auto=format&n=pIetLsS_hOGHqoPJ&q=85&s=63b11e4a76a8fedaf8a98c4d3a496fa6" size="lg" border alt="أضِف ClickHouse كوجهة" width="1882" height="1744" data-path="images/integrations/data-ingestion/etl-tools/bp_ck_1.webp" />

    3. انقر على "Add DataSource" في الأسفل، وستتم إضافة مثيل ClickHouse.
  </Step>

  <Step title="إضافة MySQL كمصدر" id="3-add-mysql-as-a-source">
    في هذا الدليل العملي، نستخدم مثيل MySQL كمصدر، ونشرح عملية تحميل بيانات MySQL إلى ClickHouse.

    <Note>
      لاستخدام MySQL كمصدر، تأكد من أن المستخدم لديه <a href="https://doc.bladepipe.com/dataMigrationAndSync/datasource_func/MySQL/privs_for_mysql" target="_blank">الأذونات المطلوبة</a>.
    </Note>

    1. في BladePipe، انقر على "DataSource" > "Add DataSource".

    2. حدِّد `MySQL`، ثم املأ الإعدادات بإدخال مضيف MySQL والمنفذ واسم المستخدم وكلمة المرور، ثم انقر على "Test Connection".

           <Image img="https://mintcdn.com/private-7c7dfe99/pIetLsS_hOGHqoPJ/images/integrations/data-ingestion/etl-tools/bp_ck_2.webp?fit=max&auto=format&n=pIetLsS_hOGHqoPJ&q=85&s=86149981e4823e8ffc94d870405a0674" size="lg" border alt="إضافة MySQL كمصدر" width="1882" height="1746" data-path="images/integrations/data-ingestion/etl-tools/bp_ck_2.webp" />

    3. انقر على "Add DataSource" في الأسفل، وستتم إضافة مثيل MySQL.
  </Step>

  <Step title="إنشاء مسار معالجة" id="4-create-a-pipeline">
    1. في BladePipe، انقر على "DataJob" > "Create DataJob".

    2. حدِّد مثيلَي MySQL وClickHouse اللذين تمت إضافتهما، ثم انقر على "Test Connection" للتأكد من اتصال BladePipe بهما. بعد ذلك، حدِّد قواعد البيانات المطلوب نقلها.
           <Image img="https://mintcdn.com/private-7c7dfe99/pIetLsS_hOGHqoPJ/images/integrations/data-ingestion/etl-tools/bp_ck_3.webp?fit=max&auto=format&n=pIetLsS_hOGHqoPJ&q=85&s=6c86c863a807dc03306618540b9167ab" size="lg" border alt="حدد المصدر والوجهة" width="3264" height="1904" data-path="images/integrations/data-ingestion/etl-tools/bp_ck_3.webp" />

    3. حدِّد "Incremental" كنوع DataJob، مع خيار "Full Data".
           <Image img="https://mintcdn.com/private-7c7dfe99/pIetLsS_hOGHqoPJ/images/integrations/data-ingestion/etl-tools/bp_ck_4.webp?fit=max&auto=format&n=pIetLsS_hOGHqoPJ&q=85&s=0bb27a97a3e1b70fd1b5590af98ea1e8" size="lg" border alt="حدد نوع المزامنة" width="2248" height="1884" data-path="images/integrations/data-ingestion/etl-tools/bp_ck_4.webp" />

    4. حدِّد الجداول المطلوب نسخها.
           <Image img="https://mintcdn.com/private-7c7dfe99/pIetLsS_hOGHqoPJ/images/integrations/data-ingestion/etl-tools/bp_ck_5.webp?fit=max&auto=format&n=pIetLsS_hOGHqoPJ&q=85&s=750373dc99b3fc14365d4b8b5cba5786" size="lg" border alt="حدد الجداول" width="2956" height="1730" data-path="images/integrations/data-ingestion/etl-tools/bp_ck_5.webp" />

    5. حدِّد الأعمدة المطلوب نسخها.
           <Image img="https://mintcdn.com/private-7c7dfe99/pIetLsS_hOGHqoPJ/images/integrations/data-ingestion/etl-tools/bp_ck_6.webp?fit=max&auto=format&n=pIetLsS_hOGHqoPJ&q=85&s=d4fb0124a2705ab7b41cc727645b326b" size="lg" border alt="حدد الأعمدة" width="2960" height="1738" data-path="images/integrations/data-ingestion/etl-tools/bp_ck_6.webp" />

    6. أكِّد إنشاء DataJob، وسيبدأ تشغيله تلقائيًا.
           <Image img="https://mintcdn.com/private-7c7dfe99/pIetLsS_hOGHqoPJ/images/integrations/data-ingestion/etl-tools/bp_ck_8.webp?fit=max&auto=format&n=pIetLsS_hOGHqoPJ&q=85&s=abbfdab480cf84fbe2047ec33a0b9111" size="lg" border alt="DataJob قيد التشغيل" width="2244" height="294" data-path="images/integrations/data-ingestion/etl-tools/bp_ck_8.webp" />
  </Step>

  <Step title="تحقّق من البيانات" id="5-verify-the-data">
    1. أوقف كتابة البيانات في مثيل MySQL وانتظر حتى يُكمل ClickHouse دمج البيانات.

    <Note>
      نظرًا إلى أن توقيت عمليات الدمج التلقائي في ClickHouse غير متوقع، يمكنك تشغيل الأمر `OPTIMIZE TABLE xxx FINAL;` لبدء عملية دمج يدويًا. لاحظ أن عملية الدمج اليدوية هذه قد لا تنجح دائمًا.

      بدلاً من ذلك، يمكنك تشغيل الأمر `CREATE VIEW xxx_v AS SELECT * FROM xxx FINAL;` لإنشاء عرض ثم تنفيذ الاستعلامات عليه للتأكد من أن البيانات قد دُمجت بالكامل.
    </Note>

    2. أنشئ <a href="https://doc.bladepipe.com/operation/job_manage/create_job/create_period_verification_correction_job" target="_blank">DataJob للتحقق</a>. بعد اكتمال DataJob للتحقق، راجع النتائج للتأكد من أن البيانات في ClickHouse مطابقة للبيانات في MySQL.
           <Image img="https://mintcdn.com/private-7c7dfe99/pIetLsS_hOGHqoPJ/images/integrations/data-ingestion/etl-tools/bp_ck_9.webp?fit=max&auto=format&n=pIetLsS_hOGHqoPJ&q=85&s=85a6aedaebcf7d61338b632241660fda" size="lg" border alt="التحقق من البيانات" width="2234" height="286" data-path="images/integrations/data-ingestion/etl-tools/bp_ck_9.webp" />
  </Step>
</Steps>
