最大Hash表槽数(max_hash_size)
📄字数 402
👁️阅读量 加载中...
引入版本
v11.0.0
功能描述
系统内部进行散列计算时的最大 HASH 槽数。
参数属性
| 属性 | 属性值 |
|---|---|
| 参数类型 | INTEGER |
| 默认值 | 3000000 |
| 取值范围 | [1048576, 134217728] |
| 影响范围 | 系统级 |
| 修改方式 | 在线修改,立即生效 |
使用场景说明
- 数据库内部在进行连接计算时,需要预分配内存用作 HASH 槽,一个 HASH 槽消耗 8 Byte,max_hash_size 控制计算过程中 HASH 槽数消耗的最大内存。
注意
- 该参数值过小会导致在大数据量的 HASH 计算(HASH JOIN/HASH LINK/HASH GROUP/HASH GROUPING)场景中频繁产生 HASH 碰撞,影响计算效率。
- 该参数值过大会导致内存浪费。
示例
sql
-- 在线修改 max_hash_size
SQL> SET max_hash_size TO 3000000;
-- 在线查看 max_hash_size
SQL> SHOW max_hash_size;