> ## Documentation Index
> Fetch the complete documentation index at: https://clickhouse.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# low_cardinality_* session settings

> ClickHouse session settings in the low_cardinality_* generated group.

export const SettingsInfoBlock = ({type, default_value, changeable_without_restart}) => {
  return <div className="not-prose" style={{
    display: "flex",
    flexWrap: "wrap",
    alignItems: "baseline",
    columnGap: "0.5rem",
    rowGap: "0.125rem",
    margin: "0.375rem 0",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <div style={{
    fontWeight: 600,
    opacity: 0.72
  }}>Type</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>Default</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          Changeable without restart
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

These settings are available in [system.settings](/docs/reference/system-tables/settings) and are autogenerated from [source](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp).

<h2 id="low_cardinality_allow_in_native_format">
  low\_cardinality\_allow\_in\_native\_format
</h2>

<SettingsInfoBlock type="Bool" default_value="1" />

Allows or restricts using the [LowCardinality](/docs/reference/data-types/lowcardinality) data type with the [Native](/docs/reference/formats/Native) format.

If usage of `LowCardinality` is restricted, ClickHouse server converts `LowCardinality`-columns to ordinary ones for `SELECT` queries, and convert ordinary columns to `LowCardinality`-columns for `INSERT` queries.

This setting is required mainly for third-party clients which do not support `LowCardinality` data type.

Possible values:

* 1 — Usage of `LowCardinality` is not restricted.
* 0 — Usage of `LowCardinality` is restricted.

<h2 id="low_cardinality_max_dictionary_size">
  low\_cardinality\_max\_dictionary\_size
</h2>

<SettingsInfoBlock type="UInt64" default_value="8192" />

Sets a maximum size in rows of a shared global dictionary for the [LowCardinality](/docs/reference/data-types/lowcardinality) data type that can be written to a storage file system. This setting prevents issues with RAM in case of unlimited dictionary growth. All the data that can't be encoded due to maximum dictionary size limitation ClickHouse writes in an ordinary method.

Possible values:

* Any positive integer.

<h2 id="low_cardinality_use_single_dictionary_for_part">
  low\_cardinality\_use\_single\_dictionary\_for\_part
</h2>

<SettingsInfoBlock type="Bool" default_value="0" />

Turns on or turns off using of single dictionary for the data part.

By default, the ClickHouse server monitors the size of dictionaries and if a dictionary overflows then the server starts to write the next one. To prohibit creating several dictionaries set `low_cardinality_use_single_dictionary_for_part = 1`.

Possible values:

* 1 — Creating several dictionaries for the data part is prohibited.
* 0 — Creating several dictionaries for the data part is not prohibited.
