> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# إدراج البيانات في ClickHouse Cloud باستخدام clickhouse-client

> تعرّف على كيفية استخدام clickhouse-client لإدراج بيانات من ملفات CSV وParquet المحلية في خدمة ClickHouse Cloud عبر سطر الأوامر.

export const e_1 = undefined

export const e_0 = undefined

<a href="/get-started/quickstarts/home" onClick={(e_0) => { e_0.preventDefault(); window.location.href = (window.location.pathname.startsWith('/docs') ? '/docs' : '') + '/get-started/quickstarts/home'; }} className="inline-flex items-center gap-1.5 text-sm text-gray-500 dark:text-zinc-500 hover:text-gray-900 dark:hover:text-[#fdff75] transition-colors font-normal no-underline"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" className="shrink-0"><path d="M19 12H5" /><path d="M12 19l-7-7 7-7" /></svg>All quickstarts</a>

<div className="mt-2 flex flex-wrap gap-2">
  <Badge size="lg" color="blue">التحليلات اللحظية</Badge>
  <Badge size="lg" color="blue">مستودعات البيانات</Badge>
  <Badge size="lg" color="blue">Observability</Badge>
  <Badge size="lg" color="blue">AI/ML</Badge>
  <Badge size="lg" color="orange">Cloud</Badge>
</div>

<div id="prerequisites">
  ## المتطلبات المسبقة
</div>

To successfully follow this guide, you'll need the following:

* A running ClickHouse Cloud service. If you don't have one yet, complete the [ClickHouse Cloud quick start](/get-started/setup/cloud) first.

يجب أيضًا أن تكون قد أكملت دليل البدء السريع التالي:

* [احصل على تفاصيل الاتصال بـ Cloud](/ar/get-started/quickstarts/obtain-your-cloud-connection-details) - ستحتاج إلى اسم المضيف واسم المستخدم وكلمة المرور للاتصال

<div id="what-youll-build">
  ## ما ستبنيه
</div>

في هذا الدليل السريع، ستستخدم **clickhouse-client** — عميل ClickHouse CLI الرسمي — لإدخال بيانات من ملف CSV محلي إلى خدمة ClickHouse Cloud.
ستثبّت clickhouse-client، وتُحضّر مجموعة بيانات تجريبية، وتتصل بخدمة Cloud الخاصة بك، وتنشئ جدولًا، ثم تُدخل البيانات من جهازك المحلي.
وفي نهاية هذا الدليل، ستعرف كيفية استخدام clickhouse-client لتحميل الملفات المحلية إلى ClickHouse Cloud، وهو سير عمل يدعم CSV وParquet وJSON والعديد من التنسيقات الأخرى.

<Steps titleSize="h3">
  <Step title="تثبيت clickhouse-client" id="install-clickhouse-client">
    يُعد `clickhouse-client` واجهة CLI الرسمية للاتصال بـ ClickHouse، وهو مُضمَّن في الملف التنفيذي لـ ClickHouse.

    ثبّته باستخدام المُثبّت العام:

    ```bash theme={null}
    curl https://clickhouse.com/ | sh
    ```

    سيؤدي هذا إلى تنزيل أحدث ملف تنفيذي `clickhouse` إلى الدليل الحالي. تحقّق من التثبيت:

    ```bash theme={null}
    ./clickhouse client --version
    ```

    من المفترض أن يظهر لك ناتج يعرض رقم إصدار ClickHouse، مما يؤكد أن `clickhouse-client` جاهز للاستخدام.
  </Step>

  <Step title="جهّز ملف CSV نموذجيًا صغيرًا" id="prepare-a-sample-csv-file">
    أنشئ ملف CSV نموذجيًا صغيرًا حتى يكون هذا الدليل التمهيدي السريع مكتفيًا بذاته. شغّل ما يلي في الطرفية:

    ```bash theme={null}
    cat <<'EOF' > sample_data.csv
    timestamp,event_type,user_id,duration_ms,status
    2024-01-15 10:30:00,page_view,1001,120,success
    2024-01-15 10:31:15,click,1002,45,success
    2024-01-15 10:32:00,page_view,1003,200,success
    2024-01-15 10:33:30,purchase,1001,1500,success
    2024-01-15 10:34:00,click,1004,60,error
    2024-01-15 10:35:45,page_view,1002,95,success
    2024-01-15 10:36:10,purchase,1005,2200,success
    2024-01-15 10:37:00,click,1003,30,success
    2024-01-15 10:38:20,page_view,1004,150,error
    2024-01-15 10:39:00,purchase,1002,1800,success
    EOF
    ```
  </Step>

  <Step title="اتصل بخدمة Cloud الخاصة بك" id="connect-to-your-cloud-service">
    تفترض الأوامر أدناه أنك صدّرت `CLICKHOUSE_HOST` و`CLICKHOUSE_USER` و`CLICKHOUSE_PASSWORD` كمتغيرات بيئة، كما هو موضح في الدليل السريع [الحصول على تفاصيل اتصال Cloud الخاصة بك](/ar/get-started/quickstarts/obtain-your-cloud-connection-details). وإذا لم تكن قد فعلت ذلك، فيمكنك استبدالها بقيمك مباشرةً.

    اختبر الاتصال من خلال تشغيل استعلام بسيط على خدمة Cloud الخاصة بك:

    ```bash theme={null}
    ./clickhouse client \
      --host $CLICKHOUSE_HOST \
      --port 9440 \
      --user $CLICKHOUSE_USER \
      --password $CLICKHOUSE_PASSWORD \
      --secure \
      -q "SELECT 1"
    ```

    إذا نجح الاتصال، فسترى القيمة `1` مطبوعة في الطرفية. وإذا ظهر خطأ في الاتصال، فتحقّق من أن خدمتك تعمل في Cloud Console وأن اسم المضيف وكلمة المرور صحيحان.

    <Note>
      المنفذ `9440` هو منفذ native protocol الآمن في ClickHouse Cloud. ويؤدي الخيار `--secure` إلى تفعيل تشفير TLS. وهذان مطلوبان لجميع اتصالات Cloud.
    </Note>
  </Step>

  <Step title="أنشئ جدولًا مستهدفًا وأدرج البيانات" id="create-a-target-table-and-insert-data">
    أولًا، أنشئ جدولًا على خدمة Cloud لديك لاستقبال البيانات:

    ```bash theme={null}
    ./clickhouse client \
      --host $CLICKHOUSE_HOST \
      --port 9440 \
      --user $CLICKHOUSE_USER \
      --password $CLICKHOUSE_PASSWORD \
      --secure \
      -q "
        CREATE TABLE IF NOT EXISTS events (
          timestamp DateTime,
          event_type LowCardinality(String),
          user_id UInt32,
          duration_ms UInt32,
          status LowCardinality(String)
        )
        ENGINE = MergeTree
        ORDER BY (event_type, timestamp)
      "
    ```

    الآن أدخِل البيانات من ملف CSV المحلي لديك. هذه هي الخطوة الأساسية - يقرأ `clickhouse-client` الملف من stdin ويُرسله كتدفّق إلى الخدمة البعيدة:

    ```bash theme={null}
    ./clickhouse client \
      --host $CLICKHOUSE_HOST \
      --port 9440 \
      --user $CLICKHOUSE_USER \
      --password $CLICKHOUSE_PASSWORD \
      --secure \
      -q "INSERT INTO events FORMAT CSVWithNames" < sample_data.csv
    ```

    يرسل `clickhouse-client` محتويات ملف CSV مباشرةً إلى خدمة Cloud الخاصة بك. ويُخبر تنسيق `CSVWithNames` ClickHouse بأن الصف الأول يحتوي على أسماء الأعمدة.
  </Step>

  <Step title="تحقّق من أنه تم إدراج البيانات" id="verify-the-data-was-inserted">
    نفّذ استعلامًا على خدمة Cloud الخاصة بك للتأكد من وصول الصفوف:

    ```bash theme={null}
    ./clickhouse client \
      --host $CLICKHOUSE_HOST \
      --port 9440 \
      --user $CLICKHOUSE_USER \
      --password $CLICKHOUSE_PASSWORD \
      --secure \
      -q "SELECT count() FROM events"
    ```

    ينبغي أن يظهر لك `10`، وهو عدد الصفوف في ملف CSV التجريبي.

    عاين البيانات:

    ```bash theme={null}
    ./clickhouse client \
      --host $CLICKHOUSE_HOST \
      --port 9440 \
      --user $CLICKHOUSE_USER \
      --password $CLICKHOUSE_PASSWORD \
      --secure \
      -q "SELECT * FROM events ORDER BY timestamp LIMIT 5"
    ```

    يعمل سير العمل نفسه مع Parquet وTSV وJSON وAvro وORC والعديد من [التنسيقات المدعومة](/ar/reference/formats/index) الأخرى - ما عليك سوى تغيير بند `FORMAT` وتمرير الملف المناسب.
  </Step>
</Steps>

## الخطوات التالية

في دليل البدء السريع هذا، قمت بتثبيت `clickhouse-client`، وربطته بخدمة ClickHouse Cloud، واستخدمته لبث البيانات من ملف CSV محلي إلى Cloud. وينطبق النهج نفسه على Parquet وJSON وعشرات التنسيقات الأخرى.

اطّلع بعد ذلك على أدلة البدء السريع التالية:

* [أنشئ أول جدول MergeTree لك](/ar/get-started/quickstarts/create-your-first-mergetree-table)

أو تعمّق أكثر عبر الوثائق المرجعية:

* [مرجع clickhouse-client](/ar/concepts/features/interfaces/client)
* [تنسيقات الإدخال/الإخراج المدعومة](/ar/reference/formats/index)

<Frame caption="Check out the ClickHouse academy for on-demand and live training">
  <a href="https://learn.clickhouse.com/" target="_blank">
    <img src="https://mintcdn.com/private-7c7dfe99-parallel-read-in-order-multi-part/GTkpPcjoRQ_okrH3/images/academy.webp?fit=max&auto=format&n=GTkpPcjoRQ_okrH3&q=85&s=cf09cecabded097d3153b56365b07e3f" alt="ClickHouse Academy — Master ClickHouse with expert-designed training for every skill level" width="560" noZoom data-path="images/academy.webp" />
  </a>
</Frame>

<div className="mt-8">
  <a href="/get-started/quickstarts/home" onClick={(e_1) => { e_1.preventDefault(); window.location.href = (window.location.pathname.startsWith('/docs') ? '/docs' : '') + '/get-started/quickstarts/home'; }} className="inline-flex items-center gap-1.5 text-sm text-gray-500 dark:text-zinc-500 hover:text-gray-900 dark:hover:text-[#fdff75] transition-colors font-normal no-underline"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" className="shrink-0"><path d="M19 12H5" /><path d="M12 19l-7-7 7-7" /></svg>All quickstarts</a>
</div>
