input_format_allow_errors_num
يحدّد الحد الأقصى لعدد الأخطاء المقبولة عند القراءة من التنسيقات النصية (CSV وTSV وما إلى ذلك). القيمة الافتراضية هي 0. استخدمه دائمًا معinput_format_allow_errors_ratio.
إذا حدث خطأ أثناء قراءة الصفوف، لكن عدّاد الأخطاء لا يزال أقل من input_format_allow_errors_num، فإن ClickHouse يتجاهل الصف وينتقل إلى الصف التالي.
إذا تم تجاوز كلٍّ من input_format_allow_errors_num وinput_format_allow_errors_ratio، يطرح ClickHouse استثناء.
input_format_allow_errors_ratio
يحدّد الحد الأقصى للنسبة المئوية المسموح بها من الأخطاء عند القراءة من التنسيقات النصية (CSV وTSV وما إلى ذلك). تُحدَّد نسبة الأخطاء كعدد ذي فاصلة عائمة بين 0 و1. القيمة الافتراضية هي 0. استخدمه دائمًا معinput_format_allow_errors_num.
إذا وقع خطأ أثناء قراءة الصفوف، ولكن ظلّ عدّاد الأخطاء أقل من input_format_allow_errors_ratio، فإن ClickHouse يتجاهل الصف وينتقل إلى الصف التالي.
إذا تم تجاوز كلٍّ من input_format_allow_errors_num وinput_format_allow_errors_ratio، يطرح ClickHouse استثناء.
input_format_allow_seeks
السماح بعملياتseek (أو قراءات النطاق) أثناء قراءة تنسيقات الإدخال ORC وParquet وArrow.
عند التمكين، وإذا كان المصدر يدعم ذلك (مثل ملف محلي، أو S3، أو HTTP مع دعم النطاق وحجم معروف)،
يمكن لـ ClickHouse قراءة نطاقات البايت المطلوبة فقط واستخدام ذاكرة أقل.
عند التعطيل، أو إذا كان المصدر لا يدعم عمليات seek (مثل عدم معرفة حجم الملف، أو إذا كان الدفق غير قابل لإجراء seek)،
قد تلجأ بعض أدوات القراءة إلى تحميل الملف بالكامل في الذاكرة.
مُمكَّن افتراضيًا.
input_format_arrow_allow_missing_columns
السماح بالأعمدة المفقودة عند قراءة تنسيقات إدخال Arrowinput_format_arrow_case_insensitive_column_matching
تجاهل حالة الأحرف عند مطابقة أعمدة Arrow مع أعمدة CH.input_format_arrow_skip_columns_with_unsupported_types_in_schema_inference
تجاوز الأعمدة ذات الأنواع غير المدعومة أثناء استنتاج المخطط لتنسيق Arrowinput_format_avro_allow_missing_fields
لتنسيق Avro/AvroConfluent: عند عدم العثور على الحقل في المخطط، استَخدم القيمة الافتراضية بدلًا من إرجاع خطأinput_format_avro_null_as_default
لتنسيق Avro/AvroConfluent: أدرِج القيمة الافتراضية عند وجود NULL في عمود غير Nullableinput_format_binary_decode_types_in_binary_format
قراءة أنواع البيانات بالتنسيق الثنائي بدلًا من أسماء الأنواع في تنسيق الإدخال RowBinaryWithNamesAndTypesinput_format_binary_max_type_complexity
الحد الأقصى لعدد عُقد الأنواع عند فك ترميز الأنواع الثنائية (ليس العمق، بل العدد الإجمالي).Map(String, UInt32) = 3 عُقد. يحمي من المُدخلات الضارة. 0 = غير محدود.
input_format_binary_read_json_as_string
قراءة قيم نوع البيانات JSON باعتبارها قيم String بتنسيق JSON في تنسيق الإدخال RowBinary.input_format_bson_skip_fields_with_unsupported_types_in_schema_inference
يتخطّى الحقول ذات الأنواع غير المدعومة أثناء استنتاج المخطط لتنسيق BSON.input_format_capn_proto_skip_fields_with_unsupported_types_in_schema_inference
تخطَّ الأعمدة ذات الأنواع غير المدعومة أثناء استنتاج المخطط في تنسيق CapnProtoinput_format_column_name_matching_mode
يحدّد وضع مطابقة أسماء الأعمدة عند إدخال البيانات عبر تنسيقات مختلفة (بما في ذلك، على سبيل المثال لا الحصر، JSONEachRow و CSVWithNames و JSONColumns و BSONEachRow و RowBinaryWithNames). الأوضاع المدعومة:- match_case: طابِق مع مراعاة حالة الأحرف
- ignore_case: طابِق دون مراعاة حالة الأحرف
- auto: يحاول أولاً المطابقة مع مراعاة حالة الأحرف، وإذا فشل، يحاول المطابقة دون مراعاة حالة الأحرف.
input_format_connection_handling
عند تمكين هذا الخيار، إذا أُغلِق الاتصال بشكل غير متوقع، فسيتم تحليل أي بيانات متبقية في المخزن المؤقت ومعالجتها بدلًا من التعامل معها على أنها خطأيؤدي تمكين هذا الخيار إلى تعطيل التحليل المتوازي ويجعل إلغاء التكرار غير ممكن
input_format_csv_allow_cr_end_of_line
إذا ضُبط هذا الإعداد على true، فسيُسمح بـ \r في نهاية السطر إذا لم يتبعه \ninput_format_csv_allow_variable_number_of_columns
تجاهل الأعمدة الإضافية في إدخال CSV (إذا كان الملف يحتوي على أعمدة أكثر من المتوقع)، واعتبر الحقول المفقودة في إدخال CSV قيماً افتراضيةinput_format_csv_allow_whitespace_or_tab_as_delimiter
يسمح باستخدام المسافات وعلامات الجدولة (\t) كمحدِّد للحقول في سلاسل CSVinput_format_csv_arrays_as_nested_csv
عند قراءة Array من CSV، يُتوقع أن تكون عناصرها قد جرى تسلسلها بتنسيق CSV متداخل ثم وُضعت داخل سلسلة نصية. مثال: ”[""Hello"", ""world"", ""42"""" TV""]”. يمكن حذف الأقواس المحيطة بالمصفوفة.input_format_csv_deserialize_separate_columns_into_tuple
إذا ضُبطت هذه القيمة على true، أمكن إلغاء تسلسل الأعمدة المنفصلة المكتوبة بتنسيق CSV إلى عمود Tuple. ينطبق هذا فقط علىTuple العاري. ويُكتب Nullable(Tuple) دائمًا كحقل CSV واحد (انظر output_format_csv_serialize_tuple_into_separate_columns)، وبالمثل يُقرأ مرة أخرى من حقل واحد فقط، وليس من أعمدة منفصلة مطلقًا، بغض النظر عن هذا الإعداد. تحليل الأعمدة المنفصلة غير مدعوم لـ Nullable(Tuple) لأن الحقل الأول \N ملتبس (فقد يكون NULL الخارجي للـ tuple أو NULL للعنصر الأول فيه).
بما أن Tuple العاري يشغل حقلًا واحدًا لكل عنصر، فإن \N في حقل عنصر مباشر على المستوى الأعلى يمثل ذلك العنصر لا العمود بأكمله، لذا ينطبق input_format_null_as_default على ذلك العنصر. ويُرفض الصف الذي يوفّر حقلًا واحدًا للـ tuple بأكمله لافتقاره إلى حقول العناصر المتبقية، بدلًا من استخدام القيمة الافتراضية للعمود. اضبط هذا الإعداد على 0 لقراءة هذا الحقل بوصفه العمود بأكمله مجددًا. ولا يزال \N في حقل عنصر ضمن Tuple متداخل يُقرأ بوصفه ذلك العنصر المتداخل بأكمله.
input_format_csv_detect_header
اكتشاف صف الرأس الذي يحتوي على الأسماء والأنواع تلقائيًا في تنسيق CSVinput_format_csv_empty_as_default
اعتبر الحقول الفارغة في إدخال CSV قيماً افتراضية.input_format_csv_enum_as_number
اعتبر قيمenum المُدرجة في تنسيقات CSV فهارسَ enum
input_format_csv_missing_nullable_as_empty_string
يتحكم هذا الإعداد في كيفية قراءةNullable(String) عند وجود قيمة مفقودة في CSV. وتكون القيمة المفقودة عبارة عن فراغ بين الفواصل أو قبلها أو بعدها، من دون أن تكون محاطة بعلامات اقتباس. إذا كان هذا الإعداد مفعّلًا، فبصرف النظر عن قيمة input_format_csv_empty_as_default، ستُفسَّر القيمة المفقودة لـ Nullable(String) على أنها String فارغة، وليس NULL.
input_format_csv_skip_first_lines
يتخطّى عددًا محددًا من الأسطر في بداية البيانات بتنسيق CSVinput_format_csv_skip_trailing_empty_lines
تخطّي الأسطر الفارغة الأخيرة في تنسيق CSVinput_format_csv_trim_whitespaces
يُزيل محارف المسافات وعلامات الجدولة (\t) من بداية سلاسل CSV ونهايتهاinput_format_csv_try_infer_numbers_from_strings
إذا كان هذا الإعداد مفعّلًا، فسيحاول ClickHouse أثناء استنتاج المخطط استنتاج القيم العددية من الحقول النصية. وقد يكون ذلك مفيدًا إذا كانت بيانات CSV تحتوي على أرقام UInt64 بين علامتَي اقتباس. يكون هذا الإعداد معطّلًا افتراضيًا.input_format_csv_try_infer_strings_from_quoted_tuples
اعتبر Tuples المحاطة بعلامتَي اقتباس في بيانات الإدخال قيماً من النوع String.input_format_csv_use_best_effort_in_schema_inference
استخدم بعض التحسينات والآليات الاستدلالية لاستنتاج المخطط في تنسيق CSVinput_format_csv_use_default_on_bad_values
السماح بتعيين قيمة افتراضية للعمود عند تعذّر فك تسلسل حقل CSV بسبب قيمة غير صالحةinput_format_custom_allow_variable_number_of_columns
تجاهل الأعمدة الزائدة في إدخال CustomSeparated (إذا كان الملف يحتوي على أعمدة أكثر من المتوقع)، واعتبر الحقول المفقودة في إدخال CustomSeparated قيماً افتراضيةinput_format_custom_detect_header
اكتشاف سطر صف الرأس الذي يحتوي على الأسماء والأنواع تلقائيًا في تنسيق CustomSeparatedinput_format_custom_skip_trailing_empty_lines
تجاهل الأسطر الفارغة في نهاية تنسيق CustomSeparatedinput_format_defaults_for_omitted_fields
عند تنفيذ استعلاماتINSERT، تُستبدل قيم أعمدة الإدخال المُغفلة بالقيم الافتراضية للأعمدة المقابلة. ينطبق هذا الخيار على تنسيق JSONEachRow (وتنسيقات JSON الأخرى)، وCSV، وTabSeparated، وTSKV، وParquet، وArrow، وAvro، وORC، وNative، وكذلك التنسيقات ذات اللواحق WithNames/WithNamesAndTypes.
عند تمكين هذا الخيار، تُرسَل بيانات التعريف الموسعة للجدول من الخادم إلى العميل. ويستهلك ذلك موارد حوسبة إضافية على الخادم وقد يؤدي إلى انخفاض الأداء.
- 0 — معطّل.
- 1 — مفعّل.
input_format_force_null_for_omitted_fields
فرض تهيئة الحقول المُغفلة بقيم NULLinput_format_geojson_unsupported_geometry_handling
يتحكم هذا الإعداد في ما يحدث عندما يلزم تخزين نوع شكل هندسي صالح منGeoJSON لا يمكن تمثيله بالنوع Geometry في ClickHouse (مثل GeometryCollection) في العمود geometry أثناء قراءة إدخال GeoJSON.
القيم الممكنة:
'throw'(الافتراضي) — إطلاق استثناء.'null'— إدراج قيمةNULLفي العمودgeometryومتابعة التحليل.
geometry مُجسَّدًا فعليًا. وإذا لم يكن عمود إخراج مطلوبًا، فيُتحقق من أن هذا الشكل الهندسي صحيح البنية، لكنه لا يفعّل هذا السلوك.
input_format_hive_text_allow_variable_number_of_columns
تجاهل الأعمدة الإضافية في إدخال Hive Text (إذا كان الملف يحتوي على أعمدة أكثر من المتوقع)، وتعامل مع الحقول المفقودة في إدخال Hive Text على أنها قيم افتراضية.input_format_hive_text_collection_items_delimiter
الفاصل بين عناصر المجموعات (Array أو Map) في Hive Text Fileinput_format_hive_text_fields_delimiter
الفاصل المستخدم بين الحقول في Hive Text Fileinput_format_hive_text_map_keys_delimiter
الفاصل بين المفتاح والقيمة في كل زوج ضمن Hive Text Fileinput_format_import_nested_json
يُمكّن أو يعطّل إدراج بيانات JSON التي تحتوي على كائنات متداخلة. التنسيقات المدعومة: القيم الممكنة:- 0 — معطّل.
- 1 — مفعّل.
- استخدام البُنى Nested مع التنسيق
JSONEachRow.
input_format_ipv4_default_on_conversion_error
ستستخدم عملية إلغاء تسلسل IPv4 القيم الافتراضية بدلًا من طرح استثناء عند حدوث خطأ في التحويل. مُعطَّل افتراضيًا.input_format_ipv6_default_on_conversion_error
ستُستخدم القيم الافتراضية عند إلغاء تسلسل IPV6 بدلًا من رفع استثناء عند حدوث خطأ في التحويل. معطّل افتراضيًا.input_format_json_compact_allow_variable_number_of_columns
اسمح بعدد متغيّر من الأعمدة في الصفوف ضمن تنسيقات الإدخال JSONCompact/JSONCompactEachRow. تجاهل الأعمدة الإضافية في الصفوف التي تحتوي على أعمدة أكثر من المتوقع، واعتبر الأعمدة المفقودة قيماً افتراضية. معطّل افتراضياً.input_format_json_defaults_for_missing_elements_in_named_tuple
يُدرِج القيم الافتراضية للعناصر المفقودة في كائن JSON أثناء تحليل الـ named tuple. لا يعمل هذا الإعداد إلا عند تمكين الإعدادinput_format_json_named_tuples_as_objects.
مُمكَّن افتراضيًا.
input_format_json_empty_as_default
عند التمكين، تُستبدل حقول الإدخال الفارغة في JSON بالقيم الافتراضية. أمّا إذا كانت تعبيرات القيم الافتراضية معقدة، فيجب أيضًا تمكينinput_format_defaults_for_omitted_fields.
القيم الممكنة:
- 0 — تعطيل.
- 1 — تمكين.
input_format_json_ignore_unknown_keys_in_named_tuple
تجاهل المفاتيح غير المعروفة في كائن JSON الخاص بـ named tuples. مفعَّل افتراضيًا.input_format_json_ignore_unnecessary_fields
تجاهل الحقول غير الضرورية وعدم تحليلها. قد لا يؤدي تفعيل هذا الخيار إلى إطلاق استثناءات عند وجود سلاسل JSON بتنسيق غير صالح أو تحتوي على حقول مكررةinput_format_json_infer_array_of_dynamic_from_array_of_different_types
إذا كان هذا الإعداد مُمكّنًا، فسيستخدم ClickHouse أثناء استنتاج المخطط النوع Array(Dynamic) لمصفوفات JSON التي تتضمن قيمًا من أنواع بيانات مختلفة. مثال:input_format_json_infer_incomplete_types_as_strings
يسمح باستخدام نوع String لمفاتيح JSON التي لا تحتوي في عينة البيانات أثناء استنتاج المخطط إلا علىNull/{}/[].
في تنسيقات JSON، يمكن قراءة أي قيمة على أنها String، وبذلك يمكن تجنب أخطاء مثل Cannot determine type for column 'column_name' by first 25000 rows of data, most likely this column contains only Nulls or empty Arrays/Maps أثناء استنتاج المخطط،
وذلك باستخدام نوع String للمفاتيح ذات الأنواع غير المعروفة.
مثال:
input_format_json_map_as_array_of_tuples
إلغاء تسلسل أعمدة maps كمصفوفات JSON من Tuples. معطّل افتراضيًا.input_format_json_max_depth
الحد الأقصى لعمق حقل في JSON. هذا ليس حدًا صارمًا، ولا يجب تطبيقه بدقة تامة.input_format_json_max_object_size
الحد الأقصى المسموح به لحجم كائن JSON واحد بالبايت. تُرفض الكائنات التي تتجاوز هذا الحد لأنها قد تكون غير سليمة. يحمي ذلك من استنفاد الذاكرة عند تحليل مستند JSON غير سليم ككائن واحد. يُطبّق الحد نفسه في مسارات التحليل المتوازية وغير المتوازية. اضبطه على 0 لتعطيل الفحص.input_format_json_max_string_column_growth_step
عند إنشاء المخازن المؤقتة الداخلية من نوع String لعمود JSON أثناء تحليل JSON من سلسلة نصية، حدِّد نموها بمضاعفات العدد اثنين بهذا العدد من البايتات: فعندما يصل الحجم المحجوز إلى هذه القيمة، ينمو المخزن المؤقت بزيادات بهذا الحجم بدلًا من أن يتضاعف. يحد هذا من التخصيص الزائد لأعمدة JSON الكبيرة. تعني القيمة 0 عدم وجود حد (مضاعفة فقط).input_format_json_named_tuples_as_objects
حلّل الأعمدة من نوع named tuple على أنها كائنات JSON. مفعّل افتراضيًا.input_format_json_read_arrays_as_strings
السماح بتحليل مصفوفات JSON كسلاسل نصية في تنسيقات إدخال JSON. مثال:input_format_json_read_bools_as_numbers
السماح بتفسير القيم المنطقية على أنها أرقام في تنسيقات إدخال JSON. مفعّل افتراضيًا.input_format_json_read_bools_as_strings
السماح بتحليل القيم المنطقية على أنها سلاسل نصية في تنسيقات إدخال JSON. مفعّل افتراضيًا.input_format_json_read_numbers_as_strings
السماح بتحليل الأرقام كسلاسل نصية في تنسيقات إدخال JSON. مُفعّل افتراضيًا.input_format_json_read_objects_as_strings
السماح بتحليل كائنات JSON كسلاسل نصية في تنسيقات إدخال JSON. مثال:input_format_json_throw_on_bad_escape_sequence
يؤدي إلى إصدار استثناء إذا كانت سلسلة JSON تحتوي على تسلسل هروب غير صالح في تنسيقات إدخال JSON. وإذا كان هذا الإعداد معطّلًا، فستبقى تسلسلات الهروب غير الصالحة كما هي في البيانات. مفعّل افتراضيًا.input_format_json_try_infer_named_tuples_from_objects
إذا كان هذا الإعداد مُمكّنًا، فسيحاول ClickHouse أثناء استنتاج المخطط استنتاج Tuple مسمّى من كائنات JSON. وسيحتوي الـ Tuple المسمّى الناتج على جميع العناصر من جميع كائنات JSON المقابلة في البيانات النموذجية. مثال:input_format_json_try_infer_numbers_from_strings
إذا كان مُمكّنًا، فسيحاول ClickHouse أثناء استنتاج المخطط استنتاج الأرقام من حقول السلاسل النصية. وقد يكون ذلك مفيدًا إذا كانت بيانات JSON تحتوي على أرقام UInt64 بين علامتَي اقتباس. يكون معطّلًا افتراضيًا.input_format_json_use_string_type_for_ambiguous_paths_in_named_tuples_inference_from_objects
استخدم النوع String بدلًا من استثناء عند وجود مسارات ملتبسة في كائنات JSON أثناء استنتاج الـ Tuples المسمّاةinput_format_json_validate_types_from_metadata
بالنسبة إلى تنسيقات الإدخال JSON/JSONCompact/JSONColumnsWithMetadata، إذا تم ضبط هذا الإعداد على 1، فستُقارَن الأنواع الموجودة في البيانات الوصفية ضمن بيانات الإدخال بأنواع الأعمدة المقابلة في الجدول. مفعّل افتراضيًا.input_format_max_block_size_bytes
يحدّ من حجم الكتل المتكوّنة أثناء تحليل البيانات في تنسيقات الإدخال، بالبايتات. يُستخدم في تنسيقات الإدخال المعتمدة على الصفوف عندما تتكوّن الكتلة من جهة ClickHouse. 0 تعني عدم وجود حد بالبايتات.input_format_max_block_wait_ms
يحدّد الحد الأقصى للوقت، بالمللي ثانية، الذي يجب انتظاره قبل إخراج كتلة أثناء التحليل في تنسيقات الإدخال القائمة على الصفوف. وتعني القيمة 0 عدم وجود حد.لا يعمل هذا الخيار إلا إذا كان
input_format_connection_handling مُمكّنًا. كما أن تعيين قيمة له يعطّل أيضًا التحليل المتوازي ويجعل إزالة التكرار غير ممكنة.بالنسبة إلى عمليات الإدراج المتدفقة، يجب أيضًا تعيين
min_insert_block_size_rows=0 و min_insert_block_size_bytes=0. وإلا، فقد تستمر الكتل التي تم تحليلها في التراكم في الذاكرة خلال مرحلة دمج الكتل حتى الوصول إلى تلك العتبات، مما يمنع تنفيذ عمليات الإدراج في الوقت المناسب.input_format_max_bytes_to_read_for_schema_inference
الحد الأقصى لكمية البيانات، بالبايت، التي يمكن قراءتها لأغراض الاستنتاج التلقائي للمخطط.input_format_max_rows_to_read_for_schema_inference
الحد الأقصى لعدد صفوف البيانات التي تتم قراءتها للاستنتاج التلقائي للمخطط.input_format_msgpack_number_of_columns
عدد الأعمدة في بيانات MsgPack المُدخلة. يُستخدم للاستنتاج التلقائي للمخطط من البيانات.input_format_mysql_dump_map_column_names
يطابق الأعمدة في جدول MySQL dump مع الأعمدة في جدول ClickHouse حسب الأسماءinput_format_mysql_dump_table_name
اسم الجدول في ملف تفريغ MySQL الذي ستُقرأ منه البياناتinput_format_native_allow_types_conversion
السماح بتحويل أنواع البيانات في صيغة الإدخال Nativeinput_format_native_decode_types_in_binary_format
قراءة أنواع البيانات بالتنسيق الثنائي بدلًا من أسماء الأنواع في صيغة الإدخال Nativeinput_format_null_as_default
يعمل هذا الإعداد على تمكين أو تعطيل تهيئة الحقول ذات القيمة NULL باستخدام القيم الافتراضية، إذا كان نوع بيانات هذه الحقول غير Nullable. إذا كان نوع العمود غير Nullable وكان هذا الإعداد معطّلًا، فإن إدراجNULL يؤدي إلى حدوث استثناء. أما إذا كان نوع العمود Nullable، فتُدرج قيم NULL كما هي، بغض النظر عن هذا الإعداد.
ينطبق هذا الإعداد على معظم تنسيقات الإدخال.
بالنسبة إلى تعبيرات القيم الافتراضية المعقدة، يجب أيضًا تمكين input_format_defaults_for_omitted_fields.
القيم الممكنة:
- 0 — يؤدي إدراج
NULLفي عمود غير Nullable إلى حدوث استثناء. - 1 — تُهيَّأ الحقول ذات القيمة
NULLباستخدام القيم الافتراضية للعمود.
input_format_orc_allow_missing_columns
السماح بالأعمدة المفقودة عند قراءة تنسيقات إدخال ORCinput_format_orc_case_insensitive_column_matching
تجاهل حالة الأحرف عند مطابقة أعمدة ORC بأعمدة CH.input_format_orc_dictionary_as_low_cardinality
اعتبار الأعمدة المشفّرة بقاموس ORC أعمدة من النوع LowCardinality عند قراءة ملفات ORC.input_format_orc_filter_push_down
عند قراءة ملفات ORC، يتم تخطي الشرائط أو مجموعات الصفوف بالكامل استنادًا إلى تعبيرات WHERE/PREWHERE، أو إحصاءات الحد الأدنى/الحد الأقصى، أو مرشح bloom في البيانات الوصفية لـ ORC.input_format_orc_reader_time_zone_name
اسم المنطقة الزمنية لقارئ صفوف ORC، والمنطقة الزمنية الافتراضية له هي GMT.input_format_orc_row_batch_size
حجم الدفعة عند قراءة مقاطع ORC.input_format_orc_skip_columns_with_unsupported_types_in_schema_inference
تخطَّ الأعمدة ذات الأنواع غير المدعومة عند استنتاج المخطط لتنسيق ORCinput_format_parallel_parsing
يُفعّل أو يُعطّل تحليل تنسيقات البيانات بالتوازي مع الحفاظ على الترتيب. وهو مدعوم فقط لتنسيقات TabSeparated (TSV) وTSKV وCSV وJSONEachRow. القيم الممكنة:- 1 — مُمكّن.
- 0 — مُعطّل.
input_format_parquet_allow_geoparquet_parser
استخدم محلّل الأعمدة الجغرافية لتحويل Array(UInt8) إلى أنواع Point/MultiPoint/Linestring/Polygon/MultiLineString/MultiPolygoninput_format_parquet_allow_missing_columns
السماح بالأعمدة المفقودة عند قراءة تنسيقات إدخال Parquetinput_format_parquet_bloom_filter_push_down
عند قراءة ملفات Parquet، تُتجاوز مجموعات الصفوف بأكملها استنادًا إلى تعبيرات WHERE وإلى bloom filter في البيانات الوصفية لـ Parquet.input_format_parquet_case_insensitive_column_matching
تجاهل حالة الأحرف عند مطابقة أعمدة Parquet بأعمدة CH.input_format_parquet_dictionary_filter_push_down
عند قراءة ملفات Parquet (باستخدام القارئ v3)، تُتجاوز مجموعات الصفوف كاملةً استنادًا إلى تعبيرات WHERE/PREWHERE ومحتويات صفحات القاموس، إذا كانت جميع صفحات البيانات في جزء من العمود مرمّزة باستخدام القاموس. القيمة هي الحد الأقصى لحجم صفحة القاموس (بالبايت) الذي يُطبّق عليه هذا التحسين؛ اضبطها على 0 لتعطيله. يتقدّم هذا التحسين على bloom filter عند توفرهما معًا.input_format_parquet_enable_json_parsing
عند قراءة ملفات Parquet، فسِّر أعمدة JSON كأعمدة JSON في ClickHouse.input_format_parquet_enable_row_group_prefetch
تمكين الجلب المسبق لمجموعات الصفوف أثناء تحليل Parquet. لا يدعم الجلب المسبق حاليًا إلا التحليل أحادي الخيط.input_format_parquet_filter_push_down
عند قراءة ملفات Parquet، يتم تخطي مجموعات الصفوف بالكامل استنادًا إلى تعبيرات WHERE/PREWHERE وإحصاءات الحد الأدنى/الحد الأقصى في البيانات الوصفية لـ Parquet.input_format_parquet_local_file_min_bytes_for_seek
الحد الأدنى لعدد البايتات المطلوب لكي تُجري القراءة المحلية (للملف) عملية seek بدلًا من القراءة مع التجاهل في تنسيق إدخال Parquetinput_format_parquet_local_time_as_utc
يحدّد نوع البيانات الذي يستخدمه استنتاج المخطط لطوابع Parquet الزمنية عندما تكون isAdjustedToUTC=false. إذا كانت القيمة true: DateTime64(…, ‘UTC’)، وإذا كانت false: DateTime64(…). لا يُعد أيّ من السلوكين صحيحًا تمامًا، لأن ClickHouse لا يوفّر نوع بيانات للوقت المحلي وفق ساعة الحائط. وعلى نحو غير بديهي، يُرجّح أن يكون الخيار ‘true’ أقلّهما خطأً، لأن تنسيق الطابع الزمني ‘UTC’ على هيئة String سيُنتج تمثيلًا للوقت المحلي الصحيح.input_format_parquet_max_block_size
الحد الأقصى لحجم الكتلة لقارئ Parquet.input_format_parquet_memory_high_watermark
الحد التقريبي للذاكرة لقارئ Parquet v3. يقيّد عدد مجموعات الصفوف أو الأعمدة التي يمكن قراءتها بالتوازي. عند قراءة عدة ملفات في استعلام واحد، يُطبَّق هذا الحد على إجمالي استهلاك الذاكرة عبر تلك الملفات.input_format_parquet_memory_low_watermark
يُجدول عمليات الجلب الاستباقي بوتيرة أكثر كثافة إذا كان استخدام الذاكرة أقل من الحدّ المحدد. قد يكون ذلك مفيدًا، على سبيل المثال، إذا كان هناك العديد من مرشحات bloom الصغيرة المطلوب قراءتها عبر الشبكة.input_format_parquet_page_filter_push_down
تجاوز الصفحات بالاستناد إلى قيم الحد الأدنى/الحد الأقصى من فهرس العمود.input_format_parquet_prefer_block_bytes
متوسط حجم الكتلة بالبايت الناتج عن قارئ Parquetinput_format_parquet_preserve_order
تجنّب إعادة ترتيب الصفوف عند القراءة من ملفات Parquet. لا يُنصح بهذا، لأن ترتيب الصفوف ليس مضمونًا عادةً، وقد تفسده أجزاء أخرى من مسار تنفيذ الاستعلام. استخدمORDER BY _row_number بدلًا من ذلك.
input_format_parquet_skip_columns_with_unsupported_types_in_schema_inference
تخطَّ الأعمدة ذات الأنواع غير المدعومة أثناء استنتاج المخطط لتنسيق Parquetinput_format_parquet_spatial_filter_push_down
عند قراءة ملفات GeoParquet، تجاوز مجموعات الصفوف بالكامل، وبالاقتران معinput_format_parquet_page_filter_push_down، الصفحات الفردية، استنادًا إلى الشروط المكانية في عبارة WHERE وإحصاءات المربع المحيط للهندسة (العمودين geospatial_statistics.bbox أو covering.bbox) في البيانات الوصفية لـ Parquet.
input_format_parquet_use_offset_index
تعديل طفيف على طريقة قراءة الصفحات من ملف Parquet عند عدم استخدام تصفية الصفحات.input_format_parquet_verify_checksums
التحقق من قيم التحقق للصفحات عند قراءة ملفات Parquet.input_format_protobuf_flatten_google_wrappers
فعّل مغلّفات Google للأعمدة العادية غير المتداخلة، على سبيل المثال google.protobuf.StringValue ‘str’ للعمود String ‘str’. وبالنسبة إلى أعمدة Nullable، تُعرَف المغلّفات الفارغة على أنها قيم افتراضية، وتُعامَل القيم غير الموجودة على أنها NULLinput_format_protobuf_oneof_presence
يحدِّد أي حقل من protobuf oneof تم العثور عليه من خلال تعيين قيمة enum في عمود خاصinput_format_protobuf_skip_fields_with_unsupported_types_in_schema_inference
تخطّي الحقول ذات الأنواع غير المدعومة أثناء استنتاج المخطط لتنسيق Protobufinput_format_read_datetime_number_as_raw_value
اقرأ عددًا صحيحًا غير مقتبس لعمودDateTime/DateTime64 باعتباره القيمة الخام الأساسية — بالثواني لـ
DateTime، وبـ ticks وفق دقة العمود لـ DateTime64 — بدلًا من Unix timestamp بالثواني.
يكون هذا الإعداد معطّلًا افتراضيًا: إذ يُفسَّر الرقم غير المقتبس على أنه Unix timestamp بالثواني (مع دقة اختيارية دون الثانية)،
بما يتوافق مع تنسيق Values وCAST وtoDateTime64. فعّله (أو SET compatibility = '26.7') لاستعادة
سلوك الإصدارات حتى 26.7 ضمنًا، حيث كان العدد الصحيح غير المقتبس المُمرَّر إلى عمود DateTime64
يُفسَّر باعتباره القيمة الخام المُقاسة (ticks). لا يقبل المسار legacy إلا عددًا صحيحًا غير مقتبس بهذا الشكل:
فعند تمكين الإعداد، يُرفض الرقم الذي يحتوي على جزء كسري أو أسّي عبر مسارات إدخال الصفوف
(كما كان الحال قبل 26.8)، بينما في JSONExtract ونوع JSON المحدد النوع، يظل الرقم الكسري يُقرأ
كثوانٍ لـ DateTime64 ويُرفض لـ DateTime (كما كان الحال أيضًا قبل 26.8). في تنسيق Values نفسه،
يعود الرقم الذي يرفضه محلّل التدفق إلى تقييم تعبير SQL ويُقرأ بالثواني،
سواء قبل 26.8 أو عند تمكين هذا الإعداد — لذلك يكون سلوك Values للرقم الكسري
متطابقًا في جميع الإعدادات.
لا ينطبق هذا الإعداد إلا على مسارات JSON وValues/Quoted وJSONExtract/نوع JSON المحدد النوع (إذ يغطي مسار Quoted
جميع التنسيقات التي تحلل الحقول باستخدام قاعدة الإفلات Quoted: وهي Values وMySQLDump و
Template/CustomSeparated/Regexp المُهيأة بإفلات الحقول Quoted). لا تتأثر التنسيقات المفصولة بعلامات الجدولة أو CSV وغيرها من
التنسيقات ذات الإفلات/النص الكامل: إذ يظل الرقم الكبير غير المقتبس لـ DateTime64 يُقرأ هناك باعتباره ticks.
input_format_record_errors_file_path
مسار الملف المستخدَم لتسجيل الأخطاء أثناء قراءة تنسيقات النص (CSV، TSV).input_format_skip_unknown_fields
يُفعّل أو يُعطّل تخطي إدراج البيانات الإضافية. عند كتابة البيانات، يطرح ClickHouse استثناء إذا كانت بيانات الإدخال تحتوي على أعمدة غير موجودة في الجدول الهدف. وإذا كان هذا الخيار مُمكّنًا، فلن يُدرج ClickHouse البيانات الإضافية ولن يطرح استثناء. التنسيقات المدعومة:- JSONEachRow (وتنسيقات JSON الأخرى)
- BSONEachRow (وتنسيقات JSON الأخرى)
- TSKV
- جميع التنسيقات ذات اللواحق WithNames/WithNamesAndTypes
- MySQLDump
- Native
- 0 — معطّل.
- 1 — مُمكّن.
input_format_try_infer_dates
إذا كان هذا الخيار مفعّلًا، فسيحاول ClickHouse استنتاج النوعDate من الحقول النصية عند استنتاج المخطط للتنسيقات النصية. وإذا جرى تحليل جميع الحقول في أحد أعمدة بيانات الإدخال بنجاح على أنها تواريخ، فسيكون نوع النتيجة Date؛ أما إذا تعذّر تحليل حقل واحد على الأقل كتاريخ، فسيكون نوع النتيجة String.
مفعّل افتراضيًا.
input_format_try_infer_datetimes
إذا كان هذا الإعداد مُمكّنًا، فسيحاول ClickHouse استنتاج النوعDateTime64 من الحقول النصية أثناء استنتاج المخطط للتنسيقات النصية. وإذا جرى تحليل جميع الحقول في عمود من بيانات الإدخال بنجاح على أنها قيم تاريخ ووقت، فسيكون نوع النتيجة DateTime64. أما إذا تعذّر تحليل حقل واحد على الأقل على أنه قيمة تاريخ ووقت، فسيكون نوع النتيجة String.
مُمكَّن افتراضيًا.
input_format_try_infer_datetimes_only_datetime64
عند تمكين input_format_try_infer_datetimes، لا يُستنتج إلا DateTime64 دون أنواع DateTimeinput_format_try_infer_exponent_floats
حاول استدلال الأعداد العائمة ذات الصيغة الأُسّية عند استدلال المخطط في التنسيقات النصية (باستثناء JSON، حيث يُستدل دائمًا على الأعداد ذات الأُسّ)input_format_try_infer_integers
إذا كان هذا الخيار مفعّلًا، فسيحاول ClickHouse استنتاج الأعداد الصحيحة بدلًا من الأعداد ذات الفاصلة العائمة عند استنتاج المخطط في التنسيقات النصية. إذا كانت جميع الأرقام في العمود ضمن بيانات الإدخال أعدادًا صحيحة، فسيكون نوع النتيجةInt64، أما إذا وُجد رقم واحد على الأقل ذو فاصلة عائمة، فسيكون نوع النتيجة Float64.
مفعّل افتراضيًا.
input_format_try_infer_variants
إذا كان هذا الإعداد مفعّلًا، فسيحاول ClickHouse استنتاج نوعVariant أثناء استنتاج المخطط للتنسيقات النصية عندما يكون هناك أكثر من نوع محتمل لعناصر العمود/المصفوفة.
القيم الممكنة:
- 0 — معطّل.
- 1 — مفعّل.
input_format_tsv_allow_variable_number_of_columns
تجاهل الأعمدة الإضافية في إدخال TSV (إذا كان الملف يحتوي على أعمدة أكثر من المتوقع)، واعتبر الحقول المفقودة في إدخال TSV قيماً افتراضية.input_format_tsv_crlf_end_of_line
إذا تم ضبطه على true، فستقرأ الدالة file تنسيق TSV باستخدام \r\n بدلًا من \n.input_format_tsv_detect_header
اكتشاف الترويسة التي تتضمن الأسماء والأنواع تلقائيًا في تنسيق TSVinput_format_tsv_empty_as_default
اعتبر الحقول الفارغة في بيانات TSV المُدخلة قيماً افتراضية.input_format_tsv_enum_as_number
التعامل مع قيم enum المُدرَجة في تنسيقات TSV باعتبارها فهارس enum.input_format_tsv_skip_first_lines
تخطَّ عدد الأسطر المحدد في بداية البيانات بتنسيق TSVinput_format_tsv_skip_trailing_empty_lines
تجاهل الأسطر الفارغة الأخيرة في تنسيق TSVinput_format_tsv_use_best_effort_in_schema_inference
يستخدم بعض التحسينات والآليات الاستدلالية لاستنتاج المخطط في تنسيق TSVinput_format_values_accurate_types_of_literals
بالنسبة إلى Values format: عند تحليل التعبيرات وتفسيرها باستخدام Template، افحص النوع الفعلي للقيمة الحرفية لتجنّب مشكلات تجاوز السعة والدقة المحتملة.input_format_values_deduce_templates_of_expressions
بالنسبة إلى تنسيق Values: إذا تعذّر على محلّل التدفق تحليل الحقل، فشِّل محلّل SQL، واستنتج قالبًا لتعبير SQL، وحاول تحليل جميع الصفوف باستخدام هذا القالب، ثم فسِّر التعبير في جميع الصفوف.input_format_values_interpret_expressions
في Values format: إذا تعذّر على streaming parser تحليل الحقل، فشغّل SQL parser وحاول تفسيره على أنه تعبير SQL.input_format_with_names_use_header
يُمكّن هذا الإعداد أو يعطّل التحقق من ترتيب الأعمدة عند إدراج البيانات. لتحسين أداء الإدراج، نوصي بتعطيل هذا التحقق إذا كنت متأكدًا من أن ترتيب أعمدة بيانات الإدخال مطابق لترتيبها في الجدول المستهدف. التنسيقات المدعومة:- CSVWithNames
- CSVWithNamesAndTypes
- TabSeparatedWithNames
- TabSeparatedWithNamesAndTypes
- JSONCompactEachRowWithNames
- JSONCompactEachRowWithNamesAndTypes
- JSONCompactStringsEachRowWithNames
- JSONCompactStringsEachRowWithNamesAndTypes
- RowBinaryWithNames
- RowBinaryWithNamesAndTypes
- CustomSeparatedWithNames
- CustomSeparatedWithNamesAndTypes
- 0 — معطّل.
- 1 — مفعّل.
input_format_with_types_use_header
يتحكم هذا الإعداد في ما إذا كان محلل التنسيق سيتحقق من تطابق أنواع البيانات في بيانات الإدخال مع أنواع البيانات في الجدول الهدف. التنسيقات المدعومة:- CSVWithNamesAndTypes
- TabSeparatedWithNamesAndTypes
- JSONCompactEachRowWithNamesAndTypes
- JSONCompactStringsEachRowWithNamesAndTypes
- RowBinaryWithNamesAndTypes
- CustomSeparatedWithNamesAndTypes
- 0 — معطّل.
- 1 — مُمكّن.