Эти настройки автоматически сгенерированы на основе исходного файла.
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
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.12 | 1 | По умолчанию разрешить отсутствие столбцов в файлах Arrow |
Разрешить отсутствие столбцов при чтении входных форматов Arrow
input_format_arrow_case_insensitive_column_matching
Игнорировать регистр при сопоставлении столбцов Arrow со столбцами ClickHouse.
input_format_arrow_skip_columns_with_unsupported_types_in_schema_inference
Пропускать столбцы с неподдерживаемыми типами при определении схемы для формата Arrow
input_format_avro_allow_missing_fields
Для формата Avro/AvroConfluent: если поле отсутствует в схеме, использовать значение по умолчанию вместо ошибки
input_format_avro_null_as_default
Для форматов Avro/AvroConfluent: использовать значение по умолчанию в случае NULL и для столбцов без типа Nullable
input_format_binary_decode_types_in_binary_format
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.7 | 0 | Добавлена новая настройка, позволяющая считывать имена типов в бинарном формате во входном формате RowBinaryWithNamesAndTypes |
Считывать типы данных в бинарном формате вместо имён типов во входном формате RowBinaryWithNamesAndTypes
input_format_binary_max_type_complexity
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.1 | 1000 | Добавлена новая настройка для управления максимальным количеством узлов типа при декодировании бинарных типов. Защищает от вредоносных входных данных. |
Максимальное количество узлов типа при декодировании бинарных типов (не глубина, а общее число). Map(String, UInt32) = 3 узла. Защищает от вредоносных входных данных. 0 = без ограничений.
input_format_binary_read_json_as_string
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.10 | 0 | Добавлена новая настройка для чтения значений типа JSON как JSON-строки во входном формате RowBinary |
Считывать значения типа данных 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
Пропускать столбцы с неподдерживаемыми типами при определении схемы для формата CapnProto
input_format_column_name_matching_mode
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.5 | auto | Сначала сопоставлять имена входных столбцов с учётом регистра, а при неудаче переходить к регистронезависимому сопоставлению, вместо того чтобы требовать точного совпадения регистра. |
| 26.4 | match_case | Новая настройка. |
Определяет режим сопоставления имён столбцов при ингестии данных через различные форматы (включая, но не ограничиваясь, JSONEachRow, CSVWithNames, JSONColumns, BSONEachRow, RowBinaryWithNames). Поддерживаемые режимы:
- match_case: сопоставлять с учётом регистра
- ignore_case: сопоставлять без учёта регистра
- auto: сначала пытается сопоставлять с учётом регистра; если не удаётся, пытается сопоставлять без учёта регистра.
input_format_connection_handling
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.2 | 0 | Новая настройка, позволяющая разбирать и обрабатывать оставшиеся в буфере данные, если соединение неожиданно закрывается |
Если этот параметр включен, то при неожиданном закрытии соединения оставшиеся в буфере данные будут разобраны и обработаны, а не приведут к ошибке
input_format_csv_allow_cr_end_of_line
Если задано значение true, \r будет разрешён в конце строки, за которым не следует
input_format_csv_allow_variable_number_of_columns
Игнорировать лишние столбцы во входных CSV-данных (если в файле столбцов больше, чем ожидается) и обрабатывать отсутствующие поля во входных CSV-данных как значения по умолчанию
input_format_csv_allow_whitespace_or_tab_as_delimiter
Разрешает использовать пробелы и символы табуляции (\t) в качестве разделителей полей в строках CSV
input_format_csv_arrays_as_nested_csv
При чтении Array из CSV предполагается, что его элементы были сериализованы во вложенный CSV, а затем помещены в строку. Пример: "[""Hello"", ""world"", ""42"""" TV""]". Скобки вокруг массива можно опустить.
input_format_csv_deserialize_separate_columns_into_tuple
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.6 | 1 | Добавлен новый способ интерпретации Tuple в формате CSV. |
| 24.3 | 1 | Добавлен новый способ интерпретации Tuple в формате CSV. |
Если задано значение true, отдельные столбцы, записанные в формате CSV, можно десериализовать в столбец Tuple.
Это применимо только к обычному Tuple. Nullable(Tuple) всегда записывается как одно поле CSV (см. output_format_csv_serialize_tuple_into_separate_columns) и, соответственно, считывается обратно из одного поля, а не из отдельных столбцов, независимо от этой настройки. Разбор отдельных столбцов для Nullable(Tuple) не поддерживается, потому что начальное поле \N неоднозначно (это может быть как внешний NULL кортежа, так и NULL его первого элемента).
Поскольку обычный Tuple занимает по одному полю на элемент, \N в поле непосредственного элемента верхнего уровня относится к этому элементу, а не ко всему столбцу, поэтому input_format_null_as_default применяется к этому элементу. Строка, содержащая одно поле для всего кортежа, не содержит полей для оставшихся элементов и отклоняется вместо использования значения столбца по умолчанию. Установите для этой настройки значение 0, чтобы снова считывать такое поле как весь столбец. \N в поле элемента вложенного Tuple по-прежнему считывается как весь этот вложенный элемент.
input_format_csv_detect_header
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.1 | 1 | Автоматически определять заголовок в формате CSV по умолчанию |
Автоматически определять заголовок с именами и типами в формате CSV
input_format_csv_empty_as_default
Считать пустые поля во входных данных CSV значениями по умолчанию.
input_format_csv_enum_as_number
Считать вставляемые значения enum в форматах CSV индексами enum
input_format_csv_missing_nullable_as_empty_string
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.7 | 0 | Новая настройка для чтения отсутствующего значения `Nullable(String)` из CSV как пустой строки вместо NULL. |
Определяет, как читать Nullable(String) при отсутствии значения в CSV. Отсутствующее значение — это пустое место между запятыми, перед ними или после них, не заключенное в кавычки. Если эта настройка включена, то независимо от значения input_format_csv_empty_as_default отсутствующее значение Nullable(String) будет интерпретироваться как пустой String, а не как NULL.
input_format_csv_skip_first_lines
Пропускать указанное количество строк в начале данных в формате CSV
input_format_csv_skip_trailing_empty_lines
Пропускать пустые строки в конце в формате CSV
input_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
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.6 | 1 | Добавлен новый способ интерпретации Tuple в формате CSV. |
| 24.3 | 1 | Добавлен новый способ интерпретации Tuple в формате CSV. |
Интерпретировать заключённые в кавычки Tuple во входных данных как значения типа String.
input_format_csv_use_best_effort_in_schema_inference
Использовать дополнительные настройки и эвристики для определения схемы в формате CSV
input_format_csv_use_default_on_bad_values
Позволяет устанавливать для столбца значение по умолчанию, если десериализация поля CSV завершается ошибкой из-за некорректного значения
input_format_custom_allow_variable_number_of_columns
Игнорировать лишние столбцы во входных данных CustomSeparated (если в файле столбцов больше, чем ожидается) и рассматривать отсутствующие поля во входных данных CustomSeparated как значения по умолчанию
input_format_custom_detect_header
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.1 | 1 | По умолчанию определять заголовок в формате CustomSeparated |
Автоматически определять заголовок с именами и типами в формате CustomSeparated
input_format_custom_skip_trailing_empty_lines
Пропускать пустые строки в конце в формате CustomSeparated
input_format_defaults_for_omitted_fields
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 19.12 | 1 | Включить вычисление сложных выражений по умолчанию для пропущенных полей в некоторых входных форматах, поскольку это ожидаемое поведение |
При выполнении запросов INSERT пропущенные значения входных столбцов заменяются значениями по умолчанию соответствующих столбцов. Эта опция применяется к форматам JSONEachRow (и другим форматам JSON), CSV, TabSeparated, TSKV, Parquet, Arrow, Avro, ORC, Native, а также к форматам с суффиксами WithNames/WithNamesAndTypes.
Возможные значения:
- 0 — Отключено.
- 1 — Включено.
input_format_force_null_for_omitted_fields
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.5 | 0 | При необходимости отключает значения по умолчанию для пропущенных полей |
Принудительно инициализировать пропущенные поля значениями NULL
input_format_geojson_unsupported_geometry_handling
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.6 | throw | Новая настройка, которая управляет обработкой геометрических типов GeoJSON, не представимых типом Geometry (например, GeometryCollection) |
Определяет, что происходит, если при чтении входных данных GeoJSON нужно сохранить в столбце geometry корректный геометрический тип GeoJSON, который не может быть представлен типом Geometry в ClickHouse (например, GeometryCollection).
Возможные значения:
'throw'(по умолчанию) — сгенерировать исключение.'null'— вставить значениеNULLв столбецgeometryи продолжить разбор.
Это применимо только тогда, когда столбец geometry материализован. Если он не запрошен как выходной столбец, такая геометрия проверяется на корректность, но эта обработка не срабатывает.
input_format_hive_text_allow_variable_number_of_columns
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.4 | 1 | Игнорировать лишние столбцы во входных данных в формате Hive Text (если в файле больше столбцов, чем ожидается) и обрабатывать отсутствующие поля как значения по умолчанию. |
Игнорировать лишние столбцы во входных данных в формате Hive Text (если в файле больше столбцов, чем ожидается) и обрабатывать отсутствующие поля как значения по умолчанию
input_format_hive_text_collection_items_delimiter
Разделитель между элементами коллекции (Array или Map) в Hive Text File
input_format_hive_text_fields_delimiter
Разделитель полей в Hive Text File
input_format_hive_text_map_keys_delimiter
Разделитель между ключом и значением в паре map в Hive Text File
input_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
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.1 | 1 | По умолчанию разрешено отсутствие элементов в объектах JSON при чтении именованных кортежей |
Подставляет значения по умолчанию для отсутствующих элементов в объекте JSON при разборе именованного кортежа.
Этот параметр работает только при включенном параметре input_format_json_named_tuples_as_objects.
Включен по умолчанию.
input_format_json_empty_as_default
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.9 | 0 | Добавлена новая настройка, позволяющая обрабатывать пустые поля во входном JSON как значения по умолчанию. |
При включении пустые поля во входном JSON заменяются значениями по умолчанию. Для сложных выражений по умолчанию также должна быть включена настройка input_format_defaults_for_omitted_fields.
Возможные значения:
- 0 — Отключено.
- 1 — Включено.
input_format_json_ignore_unknown_keys_in_named_tuple
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.3 | 1 | Улучшен разбор объектов JSON как именованных кортежей |
Игнорировать неизвестные ключи в объекте JSON при обработке именованных кортежей.
Включено по умолчанию.
input_format_json_ignore_unnecessary_fields
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.4 | 1 | Игнорировать лишние поля и не разбирать их. При включении этого параметра исключения для JSON-строк с некорректным форматом или дублирующимися полями могут не генерироваться |
Игнорировать лишние поля и не разбирать их. При включении этого параметра исключения для JSON-строк с некорректным форматом или дублирующимися полями могут не генерироваться
input_format_json_infer_array_of_dynamic_from_array_of_different_types
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.8 | 1 | По умолчанию определять Array(Dynamic) для JSON-массивов со значениями разных типов |
Если включено, при определении схемы ClickHouse будет использовать тип Array(Dynamic) для JSON-массивов со значениями разных типов данных.
Пример:
SET input_format_json_infer_array_of_dynamic_from_array_of_different_types=1;
DESC format(JSONEachRow, '{"a" : [42, "hello", [1, 2, 3]]}');┌─name─┬─type───────────┐
│ a │ Array(Dynamic) │
└──────┴────────────────┘SET input_format_json_infer_array_of_dynamic_from_array_of_different_types=0;
DESC format(JSONEachRow, '{"a" : [42, "hello", [1, 2, 3]]}');┌─name─┬─type─────────────────────────────────────────────────────────────┐
│ a │ Tuple(Nullable(Int64), Nullable(String), Array(Nullable(Int64))) │
└──────┴──────────────────────────────────────────────────────────────────┘Включено по умолчанию.
input_format_json_infer_incomplete_types_as_strings
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.9 | 1 | По умолчанию позволяет определять неполные типы как Strings в форматах JSON |
Позволяет использовать тип 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 для ключей с неизвестными типами.
Пример:
SET input_format_json_infer_incomplete_types_as_strings = 1, input_format_json_try_infer_named_tuples_from_objects = 1;
DESCRIBE format(JSONEachRow, '{"obj" : {"a" : [1,2,3], "b" : "hello", "c" : null, "d" : {}, "e" : []}}');
SELECT * FROM format(JSONEachRow, '{"obj" : {"a" : [1,2,3], "b" : "hello", "c" : null, "d" : {}, "e" : []}}');Результат:
┌─name─┬─type───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┬─default_type─┬─default_expression─┬─comment─┬─codec_expression─┬─ttl_expression─┐
│ obj │ Tuple(a Array(Nullable(Int64)), b Nullable(String), c Nullable(String), d Nullable(String), e Array(Nullable(String))) │ │ │ │ │ │
└──────┴────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┘
┌─obj────────────────────────────┐
│ ([1,2,3],'hello',NULL,'{}',[]) │
└────────────────────────────────┘Включено по умолчанию.
input_format_json_map_as_array_of_tuples
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.7 | 0 | новая настройка |
Десериализует столбцы типа Map как JSON-массивы кортежей.
По умолчанию отключено.
input_format_json_max_depth
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.8 | 1000 | В предыдущих версиях ограничение отсутствовало, но это было небезопасно. |
Максимальная глубина поля в JSON. Это не жёсткое ограничение: его не обязательно соблюдать в точности.
input_format_json_max_object_size
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.8 | 536870912 | Новая настройка, ограничивающая максимальный размер одного объекта JSON в байтах |
Максимально допустимый размер одного объекта JSON в байтах. Объекты, превышающие этот лимит, отклоняются как вероятно некорректные. Это защищает от исчерпания памяти, когда некорректный JSON-документ разбирается как единый объект. Этот лимит применяется как при параллельном, так и при непараллельном разборе. Установите 0, чтобы отключить проверку.
input_format_json_max_string_column_growth_step
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.8 | 0 | Новая настройка, ограничивающая рост внутренних буферов String JSON-столбца по степеням двойки при материализации JSON и предотвращающая избыточное выделение памяти. |
При формировании внутренних буферов String JSON-столбца при разборе JSON из строки ограничивает рост по степеням двойки указанным числом байтов: когда зарезервированный размер достигает этого значения, буфер увеличивается на это значение вместо удвоения. Это ограничивает избыточное выделение памяти для больших JSON-столбцов. 0 означает отсутствие ограничений (чистое удвоение).
input_format_json_named_tuples_as_objects
Разбирать столбцы с именованными кортежами как объекты JSON.
Включено по умолчанию.
input_format_json_read_arrays_as_strings
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.9 | 1 | Позволяет по умолчанию читать массивы как строки в JSON-форматах |
Позволяет разбирать JSON-массивы как строки во входных JSON-форматах.
Пример:
SET input_format_json_read_arrays_as_strings = 1;
SELECT arr, toTypeName(arr), JSONExtractArrayRaw(arr)[3] from format(JSONEachRow, 'arr String', '{"arr" : [1, "Hello", [1,2,3]]}');Результат:
┌─arr───────────────────┬─toTypeName(arr)─┬─arrayElement(JSONExtractArrayRaw(arr), 3)─┐
│ [1, "Hello", [1,2,3]] │ String │ [1,2,3] │
└───────────────────────┴─────────────────┴───────────────────────────────────────────┘Включено по умолчанию.
input_format_json_read_bools_as_numbers
Разрешает интерпретировать логические значения как числа во входных форматах JSON.
Включено по умолчанию.
input_format_json_read_bools_as_strings
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.1 | 1 | По умолчанию разрешает читать логические значения как строки в форматах JSON |
Разрешает разбирать логические значения как строки во входных форматах JSON.
Включено по умолчанию.
input_format_json_read_numbers_as_strings
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.9 | 1 | По умолчанию разрешает читать числа как строки в JSON-форматах |
Разрешает разбирать числа как строки во входных JSON-форматах.
Включено по умолчанию.
input_format_json_read_objects_as_strings
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.1 | 1 | Включает чтение вложенных объектов JSON как строк, пока тип Object является экспериментальным |
Разрешает разбирать объекты JSON как строки во входном формате JSON.
Пример:
SET input_format_json_read_objects_as_strings = 1;
CREATE TABLE test (id UInt64, obj String, date Date) ENGINE=Memory();
INSERT INTO test FORMAT JSONEachRow {"id" : 1, "obj" : {"a" : 1, "b" : "Hello"}, "date" : "2020-01-01"};
SELECT * FROM test;Результат:
┌─id─┬─obj──────────────────────┬───────date─┐
│ 1 │ {"a" : 1, "b" : "Hello"} │ 2020-01-01 │
└────┴──────────────────────────┴────────────┘Включено по умолчанию.
input_format_json_throw_on_bad_escape_sequence
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.4 | 1 | Разрешает сохранять JSON-строки с некорректными escape-последовательностями |
Генерирует исключение, если JSON-строка содержит некорректную escape-последовательность во входных JSON-форматах. Если параметр отключен, некорректные escape-последовательности сохраняются в данных как есть.
Включено по умолчанию.
input_format_json_try_infer_named_tuples_from_objects
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.9 | 1 | По умолчанию пытаться определять именованные Tuple из объектов JSON |
Если настройка включена, то при определении схемы ClickHouse будет пытаться определять именованный Tuple из объектов JSON. Полученный именованный Tuple будет содержать все элементы из всех соответствующих объектов JSON в выборочных данных.
Пример:
SET input_format_json_try_infer_named_tuples_from_objects = 1;
DESC format(JSONEachRow, '{"obj" : {"a" : 42, "b" : "Hello"}}, {"obj" : {"a" : 43, "c" : [1, 2, 3]}}, {"obj" : {"d" : {"e" : 42}}}')Результат:
┌─name─┬─type───────────────────────────────────────────────────────────────────────────────────────────────┬─default_type─┬─default_expression─┬─comment─┬─codec_expression─┬─ttl_expression─┐
│ obj │ Tuple(a Nullable(Int64), b Nullable(String), c Array(Nullable(Int64)), d Tuple(e Nullable(Int64))) │ │ │ │ │ │
└──────┴────────────────────────────────────────────────────────────────────────────────────────────────────┴──────────────┴────────────────────┴─────────┴──────────────────┴────────────────┘Включено по умолчанию.
input_format_json_try_infer_numbers_from_strings
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.9 | 0 | По умолчанию не определять числа в строках в форматах JSON, чтобы избежать возможных ошибок разбора |
Если параметр включен, при определении схемы ClickHouse будет пытаться распознавать числа в строковых полях. Это может быть полезно, если данные JSON содержат числа UInt64 в кавычках.
По умолчанию отключено.
input_format_json_use_string_type_for_ambiguous_paths_in_named_tuples_inference_from_objects
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.3 | 0 | Разрешить использовать тип String вместо исключения при неоднозначных путях во время вывода именованных кортежей из объектов JSON |
Использовать тип String вместо исключения при неоднозначных путях в объектах JSON во время вывода именованных кортежей
input_format_json_validate_types_from_metadata
Для входных форматов JSON/JSONCompact/JSONColumnsWithMetadata, если для этой настройки задано значение 1, типы из метаданных во входных данных будут сравниваться с типами соответствующих столбцов таблицы.
Включено по умолчанию.
input_format_max_block_size_bytes
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.5 | 0 | Новая настройка для ограничения размера блоков в байтах, если они создаются входным форматом |
Ограничивает размер блоков в байтах, формируемых при разборе данных во входных форматах. Используется во входных форматах на основе строк, когда блок формируется на стороне ClickHouse. 0 означает отсутствие ограничения по размеру в байтах.
input_format_max_block_wait_ms
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.2 | 0 | Новая настройка для ограничения максимального времени ожидания в миллисекундах перед выдачей блока входным форматом |
Ограничивает максимальное время ожидания в миллисекундах перед выдачей блока при разборе данных в построчных входных форматах. 0 означает отсутствие ограничения.
Пример: стриминг недавних изменений в Википедии в ClickHouse
clickhouse-client --query 'CREATE TABLE wikipedia_edits (data JSON)'
curl -sS --globoff -H 'Accept: application/json' --no-buffer \
'https://stream.wikimedia.org/v2/stream/recentchange' \
| clickhouse-client \
--query 'INSERT INTO wikipedia_edits FORMAT JSONAsObject' \
--input_format_max_block_wait_ms 1000 \
--input_format_connection_handling 1 \
--min_insert_block_size_rows 0 \
--min_insert_block_size_bytes 0input_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
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.3 | 1 | Разрешить преобразование типов во входном формате Native |
Разрешить преобразование типов во входном формате Native
input_format_native_decode_types_in_binary_format
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.7 | 0 | Добавлена новая настройка, позволяющая читать имена типов в бинарном формате в формате вывода Native |
Читать типы данных в бинарном формате вместо имён типов во входном формате Native
input_format_null_as_default
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 21.1 | 1 | По умолчанию разрешает использовать NULL как значение по умолчанию во входных форматах |
Включает или отключает инициализацию полей со значением NULL значениями по умолчанию, если тип данных этих полей не Nullable.
Если тип столбца не Nullable и этот параметр отключен, то вставка NULL вызывает исключение. Если тип столбца — Nullable, значения NULL вставляются как есть, независимо от этого параметра.
Этот параметр применим к большинству входных форматов.
Для сложных выражений по умолчанию также должен быть включен input_format_defaults_for_omitted_fields.
Возможные значения:
- 0 — Вставка
NULLв столбец, не являющийся Nullable, вызывает исключение. - 1 — Поля со значением
NULLинициализируются значениями столбца по умолчанию.
input_format_orc_allow_missing_columns
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.12 | 1 | По умолчанию разрешать отсутствующие столбцы в ORC-файлах |
Разрешить отсутствующие столбцы при чтении данных в формате ORC
input_format_orc_case_insensitive_column_matching
Игнорировать регистр при сопоставлении столбцов ORC со столбцами ClickHouse.
input_format_orc_dictionary_as_low_cardinality
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.10 | 1 | Рассматривать столбцы ORC, закодированные с помощью словаря, как столбцы LowCardinality при чтении файлов ORC |
Рассматривать столбцы ORC, закодированные с помощью словаря, как столбцы LowCardinality при чтении файлов ORC.
input_format_orc_filter_push_down
При чтении файлов ORC позволяет пропускать целые страйп или группа строк на основе выражений WHERE/PREWHERE, статистики min/max или bloom-фильтра в метаданных ORC.
input_format_orc_reader_time_zone_name
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.7 | GMT | Название часового пояса для построчного считывателя ORC; часовой пояс построчного считывателя ORC по умолчанию — GMT. |
Название часового пояса для построчного считывателя ORC; часовой пояс построчного считывателя ORC по умолчанию — GMT.
input_format_orc_row_batch_size
Размер батча при чтении страйпов ORC.
input_format_orc_skip_columns_with_unsupported_types_in_schema_inference
Пропускать столбцы с неподдерживаемыми типами при автоматическом определении схемы для формата ORC
input_format_parallel_parsing
Включает или отключает параллельный парсинг с сохранением порядка для форматов данных. Поддерживается только для форматов TabSeparated (TSV), TSKV, CSV и JSONEachRow.
Возможные значения:
- 1 — Включено.
- 0 — Отключено.
input_format_parquet_allow_geoparquet_parser
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.5 | 1 | Новая настройка для работы с геостолбцами в файле Parquet |
Использовать парсер геостолбцов для преобразования Array(UInt8) в типы Point/MultiPoint/Linestring/Polygon/MultiLineString/MultiPolygon
input_format_parquet_allow_missing_columns
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.12 | 1 | По умолчанию разрешить отсутствие столбцов в файлах Parquet |
Разрешить отсутствие столбцов при чтении входного формата Parquet
input_format_parquet_bloom_filter_push_down
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.5 | 1 | При чтении файлов Parquet пропускать целые группы строк на основании выражений WHERE/PREWHERE и bloom-фильтра в метаданных Parquet. |
| 24.10 | 0 | При чтении файлов Parquet пропускать целые группы строк на основании выражений WHERE/PREWHERE и bloom-фильтра в метаданных Parquet. |
При чтении файлов Parquet пропускать целые группы строк на основании выражений WHERE и bloom-фильтра в метаданных Parquet.
input_format_parquet_case_insensitive_column_matching
Игнорировать регистр при сопоставлении столбцов Parquet со столбцами ClickHouse без учёта регистра.
input_format_parquet_dictionary_filter_push_down
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.8 | 1048576 | Новая настройка, включающая отсечение групп строк Parquet на основе содержимого страниц словаря (ридер v3). Значение — максимальный размер страницы словаря в байтах, для которого применяется оптимизация; 0 (прежнее поведение) отключает её. |
При чтении файлов Parquet (с ридер v3) пропускает целые группы строк на основе выражений WHERE/PREWHERE и содержимого страниц словаря, если все страницы данных фрагмента столбца закодированы с использованием словаря. Значение — максимальный размер страницы словаря (в байтах), для которого применяется эта оптимизация; установите 0, чтобы отключить её. Если доступны оба механизма, эта настройка имеет приоритет над bloom-фильтром.
input_format_parquet_enable_json_parsing
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.6 | 1 | При чтении файлов Parquet разбирать JSON-столбцы как JSON-столбцы ClickHouse. |
При чтении файлов Parquet разбирать JSON-столбцы как JSON-столбцы ClickHouse.
input_format_parquet_enable_row_group_prefetch
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.10 | 1 | Включает предварительную загрузку групп строк при парсинге Parquet. В настоящее время предварительная загрузка поддерживается только при однопоточном парсинге. |
Включает предварительную загрузку групп строк при парсинге Parquet. В настоящее время предварительная загрузка поддерживается только при однопоточном парсинге.
input_format_parquet_filter_push_down
При чтении файлов Parquet пропускает целые группы строк на основании выражений WHERE/PREWHERE и статистики min/max в метаданных Parquet.
input_format_parquet_local_file_min_bytes_for_seek
Минимальное количество байтов, необходимое при локальном чтении файла для выполнения seek вместо чтения с пропуском во входном формате Parquet
input_format_parquet_local_time_as_utc
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.11 | 1 | Использовать более подходящий тип DateTime64(..., 'UTC') для типа Parquet 'local time without timezone'. |
Определяет тип данных, используемый при автоматическом определении схемы для временных меток Parquet с isAdjustedToUTC=false. Если true: DateTime64(…, 'UTC'), если false: DateTime64(…). Ни один из вариантов не является полностью корректным, так как в ClickHouse нет типа данных для локального времени без привязки к часовому поясу. Как ни парадоксально, вариант true, вероятно, менее ошибочен, поскольку форматирование временной метки 'UTC' как String даст корректное представление локального времени.
input_format_parquet_max_block_size
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.6 | 65409 | Увеличен размер блока для ридера Parquet. |
Максимальный размер блока для ридера Parquet.
input_format_parquet_memory_high_watermark
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.8 | 4294967296 | новая настройка |
Приблизительный лимит памяти для ридера Parquet v3. Ограничивает количество групп строк или столбцов, которые можно читать параллельно. При чтении нескольких файлов в одном запросе ограничение применяется к суммарному использованию памяти для всех этих файлов.
input_format_parquet_memory_low_watermark
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.8 | 2097152 | Новая настройка |
Более агрессивно запускает операции предварительного чтения, если использование памяти ниже порога. Может быть полезно, например, если по сети нужно читать много небольших bloom-фильтров.
input_format_parquet_page_filter_push_down
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.8 | 1 | новая настройка (не действует, если input_format_parquet_use_native_reader_v3 отключён) |
Пропускать страницы на основе минимальных/максимальных значений из индекса столбца.
input_format_parquet_prefer_block_bytes
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.6 | 16744704 | Средний размер блока в байтах на выходе ридера Parquet. |
Средний размер блока в байтах на выходе ридера Parquet
input_format_parquet_preserve_order
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.5 | 0 | Разрешить ридеру Parquet менять порядок строк для повышения параллелизма. |
Не меняйте порядок строк при чтении файлов Parquet. Не рекомендуется, так как порядок строк обычно не гарантируется, а другие части конвейера выполнения запроса могут его нарушить. Вместо этого используйте ORDER BY _row_number.
input_format_parquet_skip_columns_with_unsupported_types_in_schema_inference
Пропускать столбцы с неподдерживаемыми типами при автоматическом определении схемы для формата Parquet
input_format_parquet_spatial_filter_push_down
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.8 | 1 | Новая настройка: пропуск групп строк и страниц GeoParquet на основе пространственных предикатов и статистики ограничивающего прямоугольника |
При чтении файлов GeoParquet пропускайте целые группы строк и, при включённом input_format_parquet_page_filter_push_down, отдельные страницы на основе пространственных предикатов в предложении WHERE и статистики ограничивающего прямоугольника геометрии (столбцы geospatial_statistics.bbox или covering.bbox) в метаданных Parquet.
input_format_parquet_use_offset_index
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.8 | 1 | новая настройка (не действует, если input_format_parquet_use_native_reader_v3 отключён) |
Небольшое изменение в способе чтения страниц из файла Parquet, когда фильтрация страниц не используется.
input_format_parquet_verify_checksums
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.11 | 1 | Новая настройка |
Проверять контрольные суммы страниц при чтении файлов Parquet.
input_format_protobuf_flatten_google_wrappers
Включает wrappers Google для обычных невложенных столбцов, например google.protobuf.StringValue 'str' для столбца String 'str'. Для столбцов с типом Nullable пустые wrappers распознаются как значения по умолчанию, а отсутствующие — как null
input_format_protobuf_oneof_presence
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 25.9 | 0 | новая настройка |
Указывает, какое поле protobuf oneof было обнаружено, путём установки значения enum в специальном столбце
input_format_protobuf_skip_fields_with_unsupported_types_in_schema_inference
Пропускать поля с неподдерживаемыми типами при автоматическом определении схемы для формата Protobuf
input_format_read_datetime_number_as_raw_value
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 26.8 | 0 | Начиная с версии 26.8 число без кавычек для столбца `DateTime`/`DateTime64` в путях `JSON` и `Values`/`Quoted` (а также в `JSONExtract` и типизированном `JSON`) интерпретируется как Unix-временная метка в секундах, что соответствует формату `Values`, `CAST` и `toDateTime64`. Установите `true` (или `SET compatibility = '26.7'`), чтобы восстановить поведение до версии 26.8, при котором целое число без кавычек, передаваемое в столбец `DateTime64`, считывалось как исходное масштабированное значение (тики). На форматы с табличным разделением, CSV и другие экранированные/полнотекстовые форматы эта настройка не влияет. |
Считывать целое число без кавычек для столбца DateTime/DateTime64 как исходное значение: секунды для
DateTime, тики с точностью столбца для DateTime64, а не как Unix-временную метку в секундах.
По умолчанию отключено: число без кавычек интерпретируется как Unix-временная метка в секундах (с возможной точностью до долей секунды),
что соответствует формату Values, CAST и toDateTime64. Включите эту настройку (или SET compatibility = '26.7'), чтобы
восстановить поведение версий до 26.7 включительно, при котором целое число без кавычек, передаваемое в столбец DateTime64,
интерпретировалось как исходное масштабированное значение (тики). Устаревший путь принимает только такое целое число без кавычек:
при включенной настройке число с дробной частью или экспонентой отклоняется путями ввода строк
(как и до версии 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 без кавычек по-прежнему считывается как тики.
input_format_record_errors_file_path
Путь к файлу, используемому для записи ошибок при чтении текстовых форматов (CSV, TSV).
input_format_skip_unknown_fields
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 22.6 | 1 | Оптимизировано чтение подмножества столбцов для некоторых форматов ввода |
Включает или отключает пропуск лишних данных при вставке.
При записи данных 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
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.8 | 0 | Разрешить определять DateTime вместо DateTime64 в форматах данных |
Когда включен параметр input_format_try_infer_datetimes, определять только DateTime64, а не типы DateTime
input_format_try_infer_exponent_floats
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.2 | 0 | По умолчанию не определять числа с плавающей точкой в экспоненциальной форме |
Пытаться определять числа с плавающей точкой в экспоненциальной форме при автоматическом определении схемы в текстовых форматах (кроме JSON, где числа в экспоненциальной форме определяются всегда)
input_format_try_infer_integers
Если включено, ClickHouse будет пытаться определять целочисленные типы вместо типов с плавающей точкой при автоматическом определении схемы для текстовых форматов. Если все числа в столбце входных данных являются целыми, результирующим типом будет Int64; если хотя бы одно число имеет дробную часть, результирующим типом будет Float64.
Включено по умолчанию.
input_format_try_infer_variants
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.9 | 0 | Пытаться определять тип Variant при определении схемы для текстовых форматов, когда для элементов столбца/массива возможно более одного типа |
Если включено, ClickHouse будет пытаться определять тип Variant при определении схемы для текстовых форматов, когда для элементов столбца/массива возможно более одного типа.
Возможные значения:
- 0 — Отключено.
- 1 — Включено.
input_format_tsv_allow_variable_number_of_columns
Игнорировать лишние столбцы во входных данных TSV (если в файле столбцов больше, чем ожидается) и считать отсутствующие поля во входных данных TSV значениями по умолчанию
input_format_tsv_crlf_end_of_line
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 24.5 | 0 | Включает чтение окончаний строк CRLF в формате TSV |
Если параметр имеет значение true, функция file будет читать формат TSV с окончанием строк \r\n вместо \n.
input_format_tsv_detect_header
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 23.1 | 1 | По умолчанию определять заголовок в формате TSV |
Автоматически определять заголовок с именами и типами в формате TSV
input_format_tsv_empty_as_default
Считать пустые поля во входных данных TSV значениями по умолчанию.
input_format_tsv_enum_as_number
Считать значения enum, вставляемые в форматах TSV, индексами enum.
input_format_tsv_skip_first_lines
Пропускать указанное количество строк в начале данных в TSV format
input_format_tsv_skip_trailing_empty_lines
Пропускать пустые строки в конце в формате TSV
input_format_tsv_use_best_effort_in_schema_inference
Использовать дополнительные настройки и эвристики для автоматического определения схемы в формате TSV
input_format_values_accurate_types_of_literals
Для формата Values: при разборе и интерпретации выражений по шаблону проверяйте фактический тип литерала, чтобы избежать возможных проблем с переполнением и потерей точности.
input_format_values_deduce_templates_of_expressions
Для формата Values: если поле не удалось разобрать потоковым парсером, запускается SQL-парсер, определяется шаблон SQL-выражения, затем с помощью этого шаблона выполняется попытка разобрать все строки, после чего выражение интерпретируется для всех строк.
input_format_values_interpret_expressions
Для формата Values: если поле не удалось разобрать потоковым парсером, используется SQL-парсер, который пытается интерпретировать его как SQL-выражение.
input_format_with_names_use_header
История версий
| Версия | Значение по умолчанию | Комментарий |
|---|---|---|
| 20.5 | 1 | Включение использования заголовка с именами для форматов с суффиксами WithNames/WithNamesAndTypes |
Включает или отключает проверку порядка столбцов при вставке данных.
Чтобы повысить производительность вставки, рекомендуем отключить эту проверку, если вы уверены, что порядок столбцов во входных данных совпадает с порядком столбцов в целевой таблице.
Поддерживаемые форматы:
- 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 — Включено.