أداة توفّر عمليات على أقراص ClickHouse شبيهة بعمليات نظام الملفات. ويمكنها العمل في الوضعين التفاعلي وغير التفاعلي.
خيارات عامة للبرنامج
--config-file, -C– مسار إعدادات ClickHouse، والقيمة الافتراضية هي/etc/clickhouse-server/config.xml.--save-logs– يسجّل تقدّم الأوامر المستدعاة في/var/log/clickhouse-server/clickhouse-disks.log.--log-level– نوع الأحداث المطلوب تسجيلها، والقيمة الافتراضية هيnone.--disk– قرص المستخدمة لأوامرmkdir, move, read, write, remove. القيمة الافتراضية هيdefault.--query, -q– استعلام واحد يمكن تنفيذه دون تشغيل الوضع التفاعلي--help, -h– عرض جميع الخيارات والأوامر مع الوصف
التهيئة الكسولة
تُهيَّأ جميع الأقراص المتاحة في إعدادات تهيئةً كسولة. وهذا يعني أن الكائن المرتبط بالقرص لا يُهيَّأ إلا عند استخدام ذلك القرص في أحد الأوامر. ويُجرى ذلك لجعل الأداة أكثر متانةً وتجنّب التعامل مع الأقراص الموصوفة في إعدادات ولكن غير المستخدمة من قِبل المستخدم، والتي قد تفشل أثناء التهيئة. ومع ذلك، يجب أن يكون هناك قرص يُهيَّأ عند تشغيل clickhouse-disks. ويُحدَّد هذا القرص باستخدام المعلَمة --disk عبر سطر الأوامر (القيمة الافتراضية هي default).
الأقراص الافتراضية
بعد بدء التشغيل، يتوفر قرصان غير محددين في التهيئة ولكن يمكن تهيئتهما.
-
قرص
local: صُمم هذا القرص لمحاكاة نظام الملفات المحلي الذي شُغّلت منه الأداةclickhouse-disks. ويكون مساره الأولي هو الدليل الذي بدأت منهclickhouse-disks، ويكون مربوطًا بدليل الجذر لنظام الملفات. -
قرص
default: يكون هذا القرص مربوطًا بنظام الملفات المحلي في الدليل المحدد بواسطة المعلمةclickhouse/pathفي التهيئة (القيمة الافتراضية هي/var/lib/clickhouse). ويُضبط مساره الأولي على/.
حالة clickhouse-disks
بالنسبة إلى كل قرص مُضاف، تحتفظ الأداة بالدليل الحالي (كما هو الحال في نظام ملفات اعتيادي). ويمكن للمستخدم تغيير الدليل الحالي والتبديل بين الأقراص.
تظهر الحالة في موجّه الأوامر بالشكل "disk_name:path_name"
الأوامر
في ملف التوثيق هذا، يُشار إلى جميع الوسيطات الموضعية الإلزامية بصيغة <parameter>، ويُشار إلى الوسيطات المُسمّاة بصيغة [--parameter value]. ويمكن أيضًا الإشارة إلى جميع المعلمات الموضعية كمعلمات مُسمّاة باستخدام الاسم المقابل.
cd (change-dir, change_dir) [--disk disk] <path>غيّر الدليل إلى المسارpathعلى القرصdisk(القيمة الافتراضية هي القرص الحالي). ولا يحدث أي تبديل للقرص.copy (cp) [--disk-from disk_1] [--disk-to disk_2] <path-from> <path-to>. انسخ البيانات بشكل تكراري منpath-fromعلى القرصdisk_1(القيمة الافتراضية هي القرص الحالي (المعلمةdiskفي الوضع غير التفاعلي)) إلىpath-toعلى القرصdisk_2(القيمة الافتراضية هي القرص الحالي (المعلمةdiskفي الوضع غير التفاعلي)).current_disk_with_path (current, current_disk, current_path)اطبع الحالة الحالية بالتنسيق:Disk: "current_disk" Path: "current path on current disk"du [--human-readable] [<path>]اطبع الحجم الإجمالي بالبايت للملف أو الدليل الموجود فيpathعلى القرص الحالي. وبالنسبة إلى الدليل، يُجمع حجم جميع الملفات التي يحتويها بشكل تكراري. وإذا لم يتم تحديدpath، فسيُستخدم الدليل الحالي. ومع--human-readable(-h) يُطبع الحجم بصيغة مقروءة بشريًا (مثل1.23 GiB).help [<command>]اطبع رسالة المساعدة الخاصة بالأمرcommand. وإذا لم يتم تحديدcommand، فاطبع معلومات عن جميع الأوامر.move (mv) <path-from> <path-to>. انقل ملفًا أو دليلًا منpath-fromإلىpath-toداخل القرص الحالي.remove (rm, delete) <path>. احذفpathبشكل تكراري على القرص الحالي.link (ln) <path-from> <path-to>. أنشئ رابطًا صلبًا منpath-fromإلىpath-toعلى القرص الحالي.list (ls) [--recursive] <path>اعرض الملفات فيpathعلى القرص الحالي. والوضع الافتراضي غير تكراري.list-disks (list_disks, ls-disks, ls_disks). اعرض أسماء الأقراص.mkdir [--recursive] <path>على القرص الحالي. أنشئ دليلًا. والوضع الافتراضي غير تكراري.read (r) <path-from> [--path-to path]اقرأ ملفًا منpath-fromإلىpath(stdoutإذا لم يتم توفيره).read-bitmap <path-from> [--values]افحص ملفdelete-bitmapالجانبي (.rbm) فيpath-from. يطبع الأمر القيمة السحرية والإصدار وصلاحية CRC والكاردينالية (عدد الصفوف المحذوفة) ونطاق الصفوف. ومع--values، يفرغ أيضًا جميع البتات المضبوطة (إزاحات الصفوف المحذوفة) بترتيب تصاعدي.switch-disk [--path path] <disk>بدّل إلى القرصdiskعلى المسارpath(إذا لم يتم تحديدpath، فالقيمة الافتراضية هي المسار السابق على القرصdisk).write (w) [--path-from path] <path-to>. اكتب ملفًا منpath(stdinإذا لم يتم توفيرpath، ويجب إنهاء الإدخال عبر Ctrl+D) إلىpath-to.wc <path> [--bytes] [--lines] [--words]احسب عدد البايتات والأسطر والكلمات في الملف الموجود فيpathعلى القرص الحالي (كما في Unixwc). ومن دون أي علامة، تُطبع القيم الثلاث كلها بترتيب الأسطر ثم الكلمات ثم البايتات. استخدم--bytes(-c) و--lines(-l) و--words(-w) لتحديد القيم المطلوبة.sed <expression> <path>طبّقexpressionالخاصة بـsedعلى الملف الموجود فيpathعلى القرص الحالي، مباشرةً على الملف نفسه. يتطلب ذلك أن يكونsedمثبتًا على المضيف. لا يُدعم إلا تعبيرsedواحد من دون خيارات (مثل's/foo/bar/g'و'/foo/d')، ولا تُدعم تعبيرات متعددة (-e ... -e ...) أو خيارات مدمجة مع عنوان (مثل-nمع4,10p).read-checksums <path>اقرأ ملفchecksums.txtالخاص بـMergeTreedata part على القرص الحالي واطبعه إلىstdoutكجدول مفصول بعلامات الجدولة ومقروء بشريًا، بالأعمدةnameوfile_sizeوfile_hashوuncompressed_sizeوuncompressed_hash. ويظهر العمودان الأخيران فقط للملفات المضغوطة.