هذه الإعدادات متاحة في system.settings، ويتم توليدها تلقائيًا من المصدر.
s3_check_objects_after_upload
تحقّق من كل كائن تم رفعه إلى S3 باستخدام طلب head للتأكد من نجاح عملية الرفع
مهلة الاتصال بالمضيف لأقراص S3.
s3_create_new_file_on_insert
يُمكّن أو يعطّل إنشاء ملف جديد مع كل عملية إدراج في جداول محرك S3. وإذا كان مفعّلًا، فسيُنشأ كائن S3 جديد بالمفتاح نفسه مع كل عملية إدراج، وفق نمط مشابه لما يلي:
في البداية: data.Parquet.gz -> data.1.Parquet.gz -> data.2.Parquet.gz، وهكذا.
القيم الممكنة:
- 0 — ينشئ استعلام
INSERT ملفًا جديدًا، أو يفشل إذا كان الملف موجودًا ولم يتم تعيين s3_truncate_on_insert.
- 1 — ينشئ استعلام
INSERT ملفًا جديدًا مع كل عملية إدراج باستخدام لاحقة (بدءًا من الملف الثاني) إذا لم يتم تعيين s3_truncate_on_insert.
اطّلع على مزيد من التفاصيل هنا.
لا تحسب checksum عند إرسال ملف إلى S3. يسرّع ذلك عمليات الكتابة من خلال تجنّب تمريرات المعالجة المفرطة على الملف. ويُعد هذا آمنًا في معظم الحالات، لأن بيانات جداول MergeTree تتحقق سلامتها باستخدام checksum من قِبل ClickHouse على أي حال، وعند الوصول إلى S3 عبر HTTPS، توفّر طبقة TLS بالفعل سلامة البيانات أثناء نقلها عبر الشبكة. ومع ذلك، فإن استخدام checksums إضافية على S3 يوفّر حماية متعددة الطبقات.
s3_ignore_file_doesnt_exist
تجاهل عدم وجود الملف عند قراءة مفاتيح معيّنة.
القيم الممكنة:
- 1 — يعيد
SELECT نتيجة فارغة.
- 0 — يطلق
SELECT استثناءً.
الحد الأقصى لعدد الملفات التي يمكن إرجاعها في دفعة واحدة عبر طلب ListObject
الحد الأدنى لحجم الجزء المطلوب رفعه أثناء الرفع متعدد الأجزاء إلى S3.
الحد الأقصى لعدد قيم _path التي يمكن استخراجها من عوامل تصفية الاستعلام لاستخدامها في اجتياز الملفات
بدلاً من إدراجها باستخدام glob. وتعني القيمة 0 أنه معطّل.
مهلة خمول لإرسال البيانات واستقبالها من/إلى S3. تفشل العملية إذا ظل استدعاء واحد للقراءة أو الكتابة عبر TCP محجوبًا لهذه المدة.
يُفعّل أو يعطّل تخطي الملفات الفارغة في الجداول التي تستخدم محرك S3.
القيم الممكنة:
- 0 — يُطلق
SELECT استثناءً إذا لم يكن الملف الفارغ متوافقًا مع التنسيق المطلوب.
- 1 — يعيد
SELECT نتيجة فارغة للملف الفارغ.
s3_slow_all_threads_after_network_error
عند ضبطه على true، يتم إبطاء جميع سلاسل التنفيذ التي تنفّذ طلبات S3 إلى نقطة نهاية النسخة الاحتياطية نفسها
بعد أن يواجه أي طلب S3 واحد خطأ شبكة قابلاً لإعادة المحاولة، مثل مهلة socket.
وعند ضبطه على false، تتعامل كل سلسلة تنفيذ مع backoff لطلب S3 بشكل مستقل عن سلاسل التنفيذ الأخرى.
s3_strict_upload_part_size
الحجم المحدد بدقة للجزء المطلوب رفعه أثناء الرفع متعدد الأجزاء إلى S3 (بعض التطبيقات لا تدعم الأجزاء ذات الأحجام المتغيرة).
s3_throw_on_zero_files_match
إرجاع خطأ عندما لا يتمكن طلب ListObjects من مطابقة أي ملفات
يُفعّل أو يعطّل إجراء truncate قبل عمليات الإدراج في جداول محرك S3. وإذا كان معطّلًا، فسيُطرَح استثناء عند محاولة الإدراج إذا كان كائن S3 موجودًا مسبقًا.
القيم الممكنة:
- 0 — ينشئ استعلام
INSERT ملفًا جديدًا، أو يفشل إذا كان الملف موجودًا ولم يتم تعيين s3_create_new_file_on_insert.
- 1 — يستبدل استعلام
INSERT المحتوى الحالي للملف بالبيانات الجديدة.
اطّلع على مزيد من التفاصيل هنا.
يفرض نمط نقطة نهاية S3. القيم الممكنة: auto, virtual_hosted, path.
عند ضبطه على true، تُنفَّذ المحاولتان الأوليان لجميع طلبات S3 باستخدام مهلات إرسال واستقبال منخفضة.
عند ضبطه على false، تُنفَّذ جميع المحاولات باستخدام المهلات نفسها. آخر تعديل في ٢٣ يوليو ٢٠٢٦