التثبيت
تشغيل
إذا كنت قد نزّلت ClickHouse فقط ولم تثبّته، فاستخدم
./clickhouse client بدلًا من clickhouse-client.
للاطلاع على قائمة كاملة بخيارات سطر الأوامر، راجع خيارات سطر الأوامر.
الاتصال بـ ClickHouse Cloud
اختر Native، وستظهر التفاصيل مع مثال لأمر
clickhouse-client:
تخزين تفاصيل الاتصال في ملف تهيئة
للتركيز على بناء جملة الاستعلام، حُذفت تفاصيل الاتصال (
--host, --port، إلخ) من بقية الأمثلة. تذكّر إضافتها عند استخدام الأوامر.الوضع التفاعلي
استخدام الوضع التفاعلي
PrettyCompact.
يمكنك تغيير التنسيق في بند FORMAT في الاستعلام أو بتحديد خيار سطر الأوامر --format.
لاستخدام Vertical format، يمكنك استخدام --vertical أو إضافة \G في نهاية الاستعلام.
في هذا التنسيق، تُطبع كل قيمة في سطر منفصل، وهو ما يكون مناسبًا للجداول العريضة.
في الوضع التفاعلي، يُنفَّذ افتراضيًا كل ما تُدخله عند الضغط على Enter.
ولا تحتاج إلى فاصلة منقوطة في نهاية الاستعلام.
يمكنك تشغيل العميل باستخدام المعامل -m, --multiline.
ولإدخال استعلام متعدد الأسطر، أدخل شرطة مائلة عكسية \ قبل محرف سطر جديد.
بعد الضغط على Enter، سيُطلب منك إدخال السطر التالي من الاستعلام.
ولتنفيذ الاستعلام، أنهِه بفاصلة منقوطة ثم اضغط Enter.
يعتمد عميل ClickHouse على replxx (وهو مشابه لـ readline)، لذا فهو يستخدم اختصارات لوحة مفاتيح مألوفة ويحتفظ بسجل الأوامر.
ويُكتَب سجل الأوامر افتراضيًا في ~/.clickhouse-client-history.
للخروج من العميل، اضغط Ctrl+D، أو أدخل أحد الخيارات التالية بدلًا من الاستعلام:
exitأوexit;quitأوquit;qأوQأو:qlogoutأوlogout;
معلومات عن معالجة الاستعلام
- معلومات التقدّم، وتُحدَّث افتراضيًا بما لا يزيد على 10 مرات في الثانية. بالنسبة إلى الاستعلامات السريعة، قد لا يكون هناك وقت كافٍ لعرض التقدّم.
- الاستعلام بعد تنسيقه وبعد التحليل، لأغراض تصحيح الأخطاء.
- النتيجة بالتنسيق المحدد.
- عدد الأسطر في النتيجة، والوقت المنقضي، ومتوسط سرعة معالجة الاستعلام. تشير جميع كميات البيانات إلى بيانات غير مضغوطة.
Ctrl+C.
ومع ذلك، ستظل بحاجة إلى الانتظار قليلًا حتى يُلغي الخادم الطلب.
لا يمكن إلغاء الاستعلام في مراحل معيّنة.
إذا لم تنتظر وضغطت على Ctrl+C مرةً ثانية، فسيخرج العميل.
يتيح عميل ClickHouse تمرير بيانات خارجية (جداول مؤقتة خارجية) لاستخدامها في الاستعلام.
لمزيد من المعلومات، راجع قسم البيانات الخارجية لمعالجة الاستعلام.
الأسماء المستعارة
\l- SHOW DATABASES\d- SHOW TABLES\c <DATABASE>- USE DATABASE.- كرّر آخر استعلام
اختصارات لوحة المفاتيح
Alt (Option) + Shift + e- افتح المحرر مع الاستعلام الحالي. يمكن تحديد المحرر المراد استخدامه عبر متغير البيئةEDITOR. يُستخدمvimافتراضيًا.Alt (Option) + #- علّق السطر.Ctrl + r- بحث تقريبي في السجل.
وضع الدُفعات
استخدام وضع الدُفعات
--query في سطر الأوامر:
stdin:
messages، يمكنك أيضًا إدراج البيانات من سطر الأوامر:
--query، تُضاف أي مدخلات إلى الطلب بعد محرف سطر جديد.
إدراج ملف CSV في خدمة ClickHouse عن بُعد
cell_towers.csv، في الجدول الموجود cell_towers ضمن قاعدة البيانات default:
أمثلة على إدراج البيانات من سطر الأوامر
cat <<_EOF كتلة heredoc التي تقرأ كل شيء حتى تصادف _EOF مرة أخرى، ثم تُخرِجه:
cat، ثم تُمرَّر عبر أنبوب إلى clickhouse-client كمدخلات:
TabSeparated.
يمكنك تعيين التنسيق في عبارة FORMAT في الاستعلام كما هو موضح في المثال أعلاه.
الاستعلامات ذات المعلمات
بنية الاستعلام
أمثلة
توليد SQL بالاستعانة بالذكاء الاصطناعي
OPENAI_API_KEY أو ANTHROPIC_API_KEY مُعيَّنًا. ولمزيد من التهيئة المتقدمة، راجع قسم التهيئة.
الاستخدام
?? في بداية استعلامك باللغة الطبيعية:
- استكشاف مخطط قاعدة بياناتك تلقائيًا
- إنشاء SQL مناسب بناءً على الجداول والأعمدة المكتشفة
- تنفيذ الاستعلام الذي تم إنشاؤه فورًا
مثال
الإعداد
آلية احتياطية تعتمد على البيئة
- يتحقق أولًا من متغير البيئة
OPENAI_API_KEY - إذا لم يجده، يتحقق من متغير البيئة
ANTHROPIC_API_KEY - إذا لم يعثر على أيٍّ منهما، فسيتم تعطيل ميزات الذكاء الاصطناعي
ملف الإعدادات
$XDG_CONFIG_HOME/clickhouse/config.xml(أو~/.config/clickhouse/config.xmlإذا لم يتم تعيينXDG_CONFIG_HOME) (بتنسيق XML)$XDG_CONFIG_HOME/clickhouse/config.yaml(أو~/.config/clickhouse/config.yamlإذا لم يتم تعيينXDG_CONFIG_HOME) (بتنسيق YAML)~/.clickhouse-client/config.xml(بتنسيق XML، الموقع القديم)~/.clickhouse-client/config.yaml(بتنسيق YAML، الموقع القديم)- أو حدِّد موقعًا مخصصًا باستخدام
--config-file
- XML
- YAML
استخدام واجهات برمجة التطبيقات المتوافقة مع OpenAI (مثل OpenRouter):
المعلمات
المعلمات المطلوبة
المعلمات المطلوبة
api_key- مفتاح واجهة برمجة التطبيقات الخاص بك لخدمة الذكاء الاصطناعي. يمكن الاستغناء عنه إذا كان معيّنًا عبر متغير بيئة:- OpenAI:
OPENAI_API_KEY - Anthropic:
ANTHROPIC_API_KEY - ملاحظة: تكون الأولوية لمفتاح واجهة برمجة التطبيقات في ملف الإعداد على متغير البيئة
- OpenAI:
provider- مزوّد الذكاء الاصطناعي:openaiأوanthropic- إذا لم يتم تحديده، فسيُستخدم الرجوع التلقائي استنادًا إلى متغيرات البيئة المتاحة
إعدادات النموذج
إعدادات النموذج
model- النموذج المراد استخدامه (الافتراضي: خاص بالمزوّد)- OpenAI:
gpt-4o,gpt-4,gpt-3.5-turbo, إلخ. - Anthropic:
claude-3-5-sonnet-20241022,claude-3-opus-20240229, إلخ. - OpenRouter: استخدم تسمية النماذج الخاصة به، مثل
anthropic/claude-3.5-sonnet
- OpenAI:
إعدادات الاتصال
إعدادات الاتصال
base_url- نقطة نهاية واجهة برمجة تطبيقات مخصّصة للخدمات المتوافقة مع OpenAI (اختياري)timeout_seconds- مهلة الطلب بالثواني (الافتراضي:30)
استكشاف المخططات
استكشاف المخططات
enable_schema_access- السماح للذكاء الاصطناعي باستكشاف مخططات قاعدة البيانات (الافتراضي:true)max_steps- الحد الأقصى لخطوات استدعاء الأدوات لاستكشاف المخططات (الافتراضي:10)
معلمات التوليد
معلمات التوليد
temperature- يتحكم في درجة العشوائية، 0.0 = حتمي، 1.0 = إبداعي (الافتراضي:0.0)max_tokens- الحد الأقصى لطول الاستجابة بالرموز (الافتراضي:1000)system_prompt- تعليمات مخصّصة للذكاء الاصطناعي (اختياري)
كيف يعمل
- اكتشاف المخطط
- يسرد قواعد البيانات المتاحة
- يكتشف الجداول ضمن قواعد البيانات ذات الصلة
- يفحص بنية الجداول من خلال عبارات
CREATE TABLE
- توليد الاستعلامات
- يتوافق مع طلبك المكتوب بلغة طبيعية
- يستخدم أسماء الجداول والأعمدة الصحيحة
- يطبّق عمليات
JOINوعمليات التجميع المناسبة
- التنفيذ
القيود
- يتطلب اتصالًا نشطًا بالإنترنت
- يخضع استخدام واجهة برمجة التطبيقات لقيود على معدل الاستخدام ولتكاليف يفرضها مزوّد الذكاء الاصطناعي
- قد تتطلب الاستعلامات المعقدة عدة تنقيحات
- لدى الذكاء الاصطناعي وصول للقراءة فقط إلى معلومات المخطط، وليس إلى البيانات الفعلية
الأمان
- لا تُرسَل مفاتيح واجهة برمجة تطبيقات مطلقًا إلى خوادم ClickHouse
- لا يرى الذكاء الاصطناعي سوى معلومات المخطط (أسماء الجداول/الأعمدة والأنواع)، وليس البيانات الفعلية
- تلتزم جميع الاستعلامات المُولَّدة بأذونات قاعدة البيانات الحالية لديك
سلسلة الاتصال
الاستخدام
ملاحظات
--user أو --password أو --database، والعكس صحيح.
يمكن أن يكون مكوّن المضيف إما اسم مضيف أو عنوان IPv4 أو IPv6.
يجب أن تكون عناوين IPv6 بين []:
clickHouse-client.
يمكن استخدام سلسلة الاتصال مع أي عدد من خيارات سطر الأوامر الأخرى، باستثناء --host و--port.
المفاتيح التالية مسموح بها لـ query_parameters:
الترميز بالنسبة المئوية
يجب أن تكون الأحرف غير التابعة لـ ASCII الأمريكي، والمسافات، والأحرف الخاصة في المَعلمات التالية مرمّزة بالنسبة المئوية:
userpasswordhostsdatabasequery parameters
أمثلة
localhost على المنفذ 9000 ونفّذ الاستعلام SELECT 1.
localhost كمستخدم john باستخدام كلمة المرور secret، والمضيف 127.0.0.1 والمنفذ 9000
localhost باسم المستخدم default، وبالمضيف ذي عنوان IPv6 [::1] وعلى المنفذ 9000.
localhost على المنفذ 9000 باستخدام وضع متعدد الأسطر.
localhost باستخدام المنفذ 9000 باسم المستخدم default.
localhost على المنفذ 9000، واستخدم قاعدة البيانات my_database كقاعدة بيانات افتراضية.
localhost على المنفذ 9000، واجعل قاعدة البيانات الافتراضية my_database كما هي محددة في سلسلة الاتصال، مع استخدام اتصال آمن عبر المعامل المختصر s.
my_user ومن دون كلمة مرور.
localhost باستخدام عنوان البريد الإلكتروني كاسم المستخدم. تُرمَّز العلامة @ بترميز النسبة المئوية إلى %40.
192.168.1.15، 192.168.1.25.
تنسيق معرّف الاستعلام
query_id_formats. ويُستبدل العنصر النائب {query_id} بمعرّف الاستعلام في سلسلة التنسيق. ويمكن استخدام عدة سلاسل تنسيق داخل هذا الوسم.
يمكن استخدام هذه الميزة لإنشاء عناوين URL لتسهيل تنميط الاستعلامات.
مثال
ملفات الإعدادات
- ملف تم تحديده باستخدام المعلمة
-c [ -C, --config, --config-file ]. ./clickhouse-client.[xml|yaml|yml]$XDG_CONFIG_HOME/clickhouse/config.[xml|yaml|yml](أو~/.config/clickhouse/config.[xml|yaml|yml]إذا لم يتم تعيينXDG_CONFIG_HOME)~/.clickhouse-client/config.[xml|yaml|yml]/etc/clickhouse-client/config.[xml|yaml|yml]
clickhouse-client.xml
- XML
- YAML
خيارات متغيرات البيئة
CLICKHOUSE_USER وCLICKHOUSE_PASSWORD وCLICKHOUSE_HOST.
تكون لوسيطات سطر الأوامر --user و--password و--host، أو سلسلة الاتصال (إذا كانت محددة)، أولوية على متغيرات البيئة.
خيارات سطر الأوامر
الخيارات العامة
خيارات الاتصال
بدلًا من الخيارات
--host و--port و--user و--password، يدعم العميل أيضًا سلاسل الاتصال.