统计分析采样级别(analyze_level)
📄字数 486
👁️阅读量 加载中...
引入版本
v11.0.0
功能描述
用于设置统计分析函数的采样级别。取值越大,采样越精确。
参数属性
| 属性 | 属性值 |
|---|---|
| 参数类型 | INTEGER |
| 默认值 | 2 |
| 取值范围 | [1,6] |
| 影响范围 | 系统级 |
| 修改方式 | 在线修改,立即生效 |
使用场景说明
- 采样级别参数值与采样间隔对应关系如下:
| 采样级别 | 采样间隔 |
|---|---|
| 1 | 32 |
| 2 | 16 |
| 3 | 8 |
| 4 | 4 |
| 5 | 2 |
| 6 | 1 |
- 采样间隔为1(参数值为6)表示全采样,此时统计信息最准确,但也最耗时。因此,在统计分析时应根据实际应用场景设置合理的采样级别。
2.根据表的总记录数 N,推荐的 analyze_level 设置如下:
| 表的总记录数 N | 推荐值 |
|---|---|
| N < 65536 | 6 |
| 65536 < N < 131072 | 5 |
| 131072 < N < 4194304 | 4 |
| N > 4194304 | 无。采样方式调整为块采样,应根据数据buff缓冲区和表数据总量大小动态调整。 |
示例
- 在线修改 analyze_level
sql
SQL> set analyze_level to 2;
Execute successful.
Use time:21 ms.- 在线查看 analyze_level
sql
SQL> show analyze_level;
+---------------+
| ANALYZE_LEVEL |
+---------------+
| 2 |
+---------------+
(1 row)
Use time:0 ms.