> ## Documentation Index
> Fetch the complete documentation index at: https://private-7c7dfe99-parallel-read-in-order-multi-part.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# allow_experimental_* 会话设置

> ClickHouse 中 allow_experimental_* 自动生成组里的会话设置。

export const ExperimentalBadge = () => {
  return <a href="https://clickhouse.com/docs/reference/settings/beta-and-experimental-features#experimental-features" className="experimentalBadge">
            <div className="experimentalIcon">
            <svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
                <path strokeWidth="1.25" d="M5.5 2H10.5" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M9.50015 2V6.19625L13.4283 12.7425C13.4738 12.8183 13.4985 12.9049 13.4996 12.9934C13.5008 13.0818 13.4785 13.169 13.435 13.246C13.3914 13.323 13.3283 13.3871 13.2519 13.4317C13.1755 13.4764 13.0886 13.4999 13.0002 13.5H3.00015C2.91164 13.5 2.8247 13.4766 2.74822 13.432C2.67174 13.3874 2.60847 13.3233 2.56487 13.2463C2.52126 13.1693 2.49889 13.082 2.50004 12.9935C2.50119 12.905 2.52582 12.8184 2.5714 12.7425L6.50015 6.19625V2" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
                <path strokeWidth="1.25" d="M4.47656 9.56754C5.30344 9.41254 6.47656 9.47942 7.99969 10.25C10.0153 11.2707 11.4216 11.0569 12.2184 10.7282" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" />
            </svg>
        </div>
            Experimental 功能
        </a>;
};

export const VersionHistory = ({rows = []}) => {
  if (rows.length === 0) {
    return null;
  }
  const headers = ["版本", "默认值", "注释"];
  const border = "1px solid rgba(128, 128, 128, 0.3)";
  const cell = {
    border,
    padding: "0.25rem 0.5rem",
    textAlign: "start",
    verticalAlign: "top"
  };
  return <details className="not-prose" style={{
    border,
    borderRadius: "0.5rem",
    margin: "0.5rem 0",
    padding: "0.5rem 0.75rem",
    fontSize: "0.8125rem",
    lineHeight: "1.125rem"
  }}>
      <summary style={{
    cursor: "pointer",
    fontWeight: 600,
    opacity: 0.72
  }}>
        版本历史
      </summary>
      <table style={{
    borderCollapse: "collapse",
    width: "100%",
    margin: "0.5rem 0 0"
  }}>
        <thead>
          <tr>
            {headers.map(header => <th key={header} style={{
    ...cell,
    fontWeight: 600,
    opacity: 0.72
  }}>
                {header}
              </th>)}
          </tr>
        </thead>
        <tbody>
          {rows.map((row, row_index) => <tr key={row.id ?? row_index}>
              {(row.items ?? []).map((item, item_index) => <td key={item_index} style={{
    ...cell,
    overflowWrap: "anywhere"
  }}>
                  {item?.label}
                </td>)}
            </tr>)}
        </tbody>
      </table>
    </details>;
};

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
  }}>类型</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{type}</div>
      <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>默认值</div>
      <div style={{
    overflowWrap: "anywhere"
  }}>{default_value}</div>
      {changeable_without_restart && <div style={{
    fontWeight: 600,
    opacity: 0.72,
    marginInlineStart: "0.5rem"
  }}>
          无需重启即可更改
        </div>}
      {changeable_without_restart && <div style={{
    overflowWrap: "anywhere"
  }}>
          {changeable_without_restart}
        </div>}
    </div>;
};

这些设置可在 [system.settings](/zh/reference/system-tables/settings) 中查看，由 [源代码](https://github.com/ClickHouse/ClickHouse/blob/master/src/Core/Settings.cpp) 自动生成。

## allow\_experimental\_analyzer

**别名**：`enable_analyzer`

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.9"},{"label": "1"},{"label": "该设置已过时：analyzer 为强制启用，旧的查询分析不再受支持。禁用该设置会被直接拒绝，而不再被忽略；将 `compatibility` 设为低于 24.3 的版本也不会再恢复旧行为。"}]}, {"id": "row-2","items": [{"label": "24.3"},{"label": "1"},{"label": "默认启用 analyzer 和 planner。"}]}]} />

自 v26.9 起过时：analyzer 已无法禁用。

analyzer 是自 v24.3 起默认启用的查询分析与查询计划基础设施。在 v26.9 中，该设置被固定为唯一受支持的值 `1`：尝试将其设为 `0` 会被拒绝，`compatibility` 设置也不再使其恢复旧行为。在 v26.10 中，它原先所切换到的查询分析已被移除。请从查询、会话设置、profile 及客户端配置中移除 `enable_analyzer = 0`。如需对比查询在旧查询分析下的行为或性能，请使用 v26.9 之前的 ClickHouse 版本。

## allow\_experimental\_cleanup\_old\_data\_files\_compaction

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": "0"},{"label": "新设置"}]}]} />

允许在 Iceberg 合并整理期间清理旧数据文件。

## allow\_experimental\_database\_hms\_catalog

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.5"},{"label": "0"},{"label": "允许使用 catalog_type = 'hive' 的Experimental数据库引擎 DataLakeCatalog"}]}]} />

允许使用 catalog\_type = 'hms' 的Experimental数据库引擎 DataLakeCatalog

## allow\_experimental\_database\_materialized\_postgresql

<ExperimentalBadge />

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

允许创建使用 Engine=MaterializedPostgreSQL(...) 的 database。

## allow\_experimental\_database\_paimon\_rest\_catalog

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.1"},{"label": "0"},{"label": "新设置"}]}]} />

允许使用 catalog\_type = 'paimon\_rest' 的Experimental数据库引擎 DataLakeCatalog

## allow\_experimental\_eval\_table\_function

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.7"},{"label": "0"},{"label": "新增设置，用于启用 Experimental 表函数 `eval`。"}]}]} />

启用 Experimental 表函数 `eval`。

## allow\_experimental\_expire\_snapshots

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.3"},{"label": "0"},{"label": "新增设置。"}]}]} />

允许执行Experimental的 Iceberg 命令 `ALTER TABLE ... EXECUTE expire_snapshots`。

## allow\_experimental\_hash\_functions

<ExperimentalBadge />

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

启用Experimental哈希函数

## allow\_experimental\_iceberg\_compaction

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "0"},{"label": "新设置"}]}]} />

允许显式地对 Iceberg 表执行 'OPTIMIZE'。

## allow\_experimental\_kusto\_dialect

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "0"},{"label": "一项新设置"}]}]} />

启用 Kusto 查询语言 (KQL) 方言，可作为 SQL 的替代方案。

## allow\_experimental\_nlp\_functions

<ExperimentalBadge />

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

启用 Experimental 自然语言处理函数。

## allow\_experimental\_object\_storage\_queue\_hive\_partitioning

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.1"},{"label": "0"},{"label": "新设置。"}]}]} />

允许在 S3Queue/AzureQueue 引擎中使用 Hive 分区

## allow\_experimental\_paimon\_storage\_engine

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.5"},{"label": "0"},{"label": "New setting."}]}]} />

允许创建使用 Paimon\* 表引擎的表。

## allow\_experimental\_parallel\_reading\_from\_replicas

**别名**: `enable_parallel_replicas`

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

对每个分片，SELECT 查询执行时最多可使用 `max_parallel_replicas` 个副本。读取会并行执行，并进行动态协调。0 - 禁用，1 - 启用，失败时静默禁用，2 - 启用，失败时抛出异常

## allow\_experimental\_polyglot\_dialect

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "26.3"},{"label": "0"},{"label": "新增设置，用于启用 polyglot SQL 转译器方言。"}]}]} />

启用 polyglot SQL 转译器：可将 30 多种 SQL 方言 (MySQL、PostgreSQL、SQLite、Snowflake、DuckDB 等) 转译为 ClickHouse SQL。

## allow\_experimental\_prql\_dialect

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.1"},{"label": "0"},{"label": "新设置"}]}]} />

启用 PRQL——作为 SQL 的一种替代方案。

## allow\_experimental\_ytsaurus\_dictionary\_source

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "0"},{"label": "新增设置。"}]}]} />

用于与 YTsaurus 集成的 Experimental 字典源。

## allow\_experimental\_ytsaurus\_table\_engine

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "0"},{"label": "新设置。"}]}]} />

用于集成 YTsaurus 的 Experimental 表引擎。

## allow\_experimental\_ytsaurus\_table\_function

<ExperimentalBadge />

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

<VersionHistory rows={[{"id": "row-1","items": [{"label": "25.8"},{"label": "0"},{"label": "新设置。"}]}]} />

用于与 YTsaurus 集成的 Experimental 表引擎。
