Перейти к основному содержимому
Перейти к основному содержимому

system.settings

Содержит информацию о настройках сессии для текущего пользователя.

Столбцы:

  • name (String) — Название настройки.
  • value (String) — Значение настройки.
  • changed (UInt8) — Показывает, была ли настройка явно определена в конфигурации или явно изменена.
  • description (String) — Краткое описание настройки.
  • min (Nullable(String)) — Минимальное значение настройки, если оно установлено через constraints. Если у настройки нет минимального значения, содержит NULL.
  • max (Nullable(String)) — Максимальное значение настройки, если оно установлено через constraints. Если у настройки нет максимального значения, содержит NULL.
  • readonly (UInt8) — Показывает, может ли текущий пользователь изменить настройку:
    • 0 — Текущий пользователь может изменить настройку.
    • 1 — Текущий пользователь не может изменить настройку.
  • default (String) — Значение по умолчанию для настройки.
  • is_obsolete (UInt8) - Показывает, является ли настройка устаревшей.
  • tier (Enum8) — Уровень поддержки для этой функции. Функции ClickHouse организованы по уровням, которые варьируются в зависимости от текущего состояния их разработки и ожиданий, которые могут возникнуть при их использовании. Значения:
    • 'Production' — Функция стабильна, безопасна для использования и не имеет проблем взаимодействия с другими производственными функциями.
    • 'Beta' — Функция стабильна и безопасна. Результат ее совместного использования с другими функциями неизвестен, и корректность не гарантируется. Тестирование и отчеты приветствуются.
    • 'Experimental' — Функция находится в разработке. Предназначена только для разработчиков и энтузиастов ClickHouse. Функция может работать или не работать и может быть удалена в любой момент.
    • 'Obsolete' — Больше не поддерживается. Либо она уже удалена, либо будет удалена в будущих релизах.

Пример

Следующий пример показывает, как получить информацию о настройках, название которых содержит min_i.

SELECT *
FROM system.settings
WHERE name LIKE '%min_insert_block_size_%'
FORMAT Vertical
Row 1:
──────
name:        min_insert_block_size_rows
value:       1048449
changed:     0
description: Sets the minimum number of rows in the block that can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones.

Possible values:

- Positive integer.
- 0 — Squashing disabled.
min:         ᴺᵁᴸᴸ
max:         ᴺᵁᴸᴸ
readonly:    0
type:        UInt64
default:     1048449
alias_for:   
is_obsolete: 0
tier:        Production

Row 2:
──────
name:        min_insert_block_size_bytes
value:       268402944
changed:     0
description: Sets the minimum number of bytes in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones.

Possible values:

- Positive integer.
- 0 — Squashing disabled.
min:         ᴺᵁᴸᴸ
max:         ᴺᵁᴸᴸ
readonly:    0
type:        UInt64
default:     268402944
alias_for:   
is_obsolete: 0
tier:        Production

Row 3:
──────
name:        min_insert_block_size_rows_for_materialized_views
value:       0
changed:     0
description: Sets the minimum number of rows in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](../../sql-reference/statements/create/view.md). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.

Possible values:

- Any positive integer.
- 0 — Squashing disabled.

**See Also**

- [min_insert_block_size_rows](/operations/settings/settings#min_insert_block_size_rows)
min:         ᴺᵁᴸᴸ
max:         ᴺᵁᴸᴸ
readonly:    0
type:        UInt64
default:     0
alias_for:   
is_obsolete: 0
tier:        Production

Row 4:
──────
name:        min_insert_block_size_bytes_for_materialized_views
value:       0
changed:     0
description: Sets the minimum number of bytes in the block which can be inserted into a table by an `INSERT` query. Smaller-sized blocks are squashed into bigger ones. This setting is applied only for blocks inserted into [materialized view](../../sql-reference/statements/create/view.md). By adjusting this setting, you control blocks squashing while pushing to materialized view and avoid excessive memory usage.

Possible values:

- Any positive integer.
- 0 — Squashing disabled.

**See also**

- [min_insert_block_size_bytes](/operations/settings/settings#min_insert_block_size_bytes)
min:         ᴺᵁᴸᴸ
max:         ᴺᵁᴸᴸ
readonly:    0
type:        UInt64
default:     0
alias_for:   
is_obsolete: 0
tier:        Production

Использование WHERE changed может быть полезным, например, когда вы хотите проверить:

  • Загружены ли настройки из файлов конфигурации правильно и используются ли они.
  • Настройки, которые изменились в текущей сессии.
SELECT * FROM system.settings WHERE changed AND name='load_balancing'

См. также