s3_base
عنوان URL الأساسي المستخدم لحل عناوين URL النسبية في دالة الجدول s3 ومحرك الجدول S3، وكذلك في دوال الجدول التي تشترك في تهيئتها (s3Cluster وgcs وoss).
عند تعيينه، يُحل عنوان URL الذي لا يتضمن مخططًا بالاستناد إلى s3_base وفقًا لـ RFC 3986، باستخدام القواعد نفسها المتبعة في url_base. أما عناوين URL التي تتضمن مخططًا بالفعل، فتُستخدم كما هي.
على سبيل المثال، إذا كانت قيمة s3_base هي s3://clickhouse-public-datasets/، فإن s3('hits_compatible/hits.csv') يقرأ s3://clickhouse-public-datasets/hits_compatible/hits.csv.
يمكن أن يستخدم عنوان URL الأساسي أي صيغة تقبلها دالة الجدول s3، مثل s3://bucket/ أو https://bucket.s3.amazonaws.com/ أو https://endpoint/bucket/.
s3_check_objects_after_upload
تحقّق من كل كائن تم رفعه إلى S3 باستخدام طلب head للتأكد من نجاح عملية الرفعs3_connect_timeout_ms
مهلة الاتصال بالمضيف لأقراص 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.
s3_ignore_file_doesnt_exist
تجاهل عدم وجود الملف عند قراءة مفاتيح معيّنة. القيم الممكنة:- 1 — يعيد
SELECTنتيجة فارغة. - 0 — يطلق
SELECTاستثناءً.
s3_list_object_keys_size
الحد الأقصى لعدد الملفات التي يمكن إرجاعها في دفعة واحدة عبر طلب ListObjects3_min_upload_part_size
الحد الأدنى لحجم الجزء المطلوب رفعه أثناء الرفع متعدد الأجزاء إلى S3.s3_path_filter_limit
الحد الأقصى لعدد قيم_path التي يمكن استخراجها من عوامل تصفية الاستعلام لاستخدامها في اجتياز الملفات
بدلاً من إدراجها باستخدام glob. وتعني القيمة 0 أنه معطّل.
s3_request_timeout_ms
مهلة خمول لإرسال البيانات واستقبالها من/إلى S3. تفشل العملية إذا ظل استدعاء واحد للقراءة أو الكتابة عبر TCP محجوبًا لهذه المدة.s3_skip_empty_files
يُفعّل أو يعطّل تخطي الملفات الفارغة في الجداول التي تستخدم محرك 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 من مطابقة أي ملفاتs3_truncate_on_insert
يُفعّل أو يعطّل إجراء truncate قبل عمليات الإدراج في جداول محرك S3. وإذا كان معطّلًا، فسيُطرَح استثناء عند محاولة الإدراج إذا كان كائن S3 موجودًا مسبقًا. القيم الممكنة:- 0 — ينشئ استعلام
INSERTملفًا جديدًا، أو يفشل إذا كان الملف موجودًا ولم يتم تعيين s3_create_new_file_on_insert. - 1 — يستبدل استعلام
INSERTالمحتوى الحالي للملف بالبيانات الجديدة.
s3_uri_style
يفرض نمط نقطة نهاية S3. القيم الممكنة: auto, virtual_hosted, path.s3_use_adaptive_timeouts
عند ضبطه علىtrue، تُنفَّذ المحاولتان الأوليان لجميع طلبات S3 باستخدام مهلات إرسال واستقبال منخفضة.
عند ضبطه على false، تُنفَّذ جميع المحاولات باستخدام المهلات نفسها.