#openGauss #入门 #安装 #数据库 #开源
知识来源:docs-opengauss.osinfra.cn/zh/
num_internal_lock_partitions
参数说明: 控制内部轻量级锁分区的个数。主要用于各类场景的性能调优。内容以关键字和数字的KV方式组织,各个不同类型锁之间以逗号隔开。先后顺序对设置结果不影响,例如“CLOG_PART=256,CSNLOG_PART=512”等同于“CSNLOG_PART=512,CLOG_PART=256”。重复设置同一关键字时,以最后一次设置为准,例如“CLOG_PART=256,CLOG_PART=2”,设置的结果为CLOG_PART=2。当没有设置关键字时,则为默认值,各类锁的使用描述和最大、最小、默认值如下。
- CLOG_PART:CLOG文件控制器的个数。增大该值可以提高CLOG日志写入效率,提升事务提交性能,但是会增大内存使用;减小该值会减少相应内存使用,但可能使得CLOG日志写入冲突变大,影响性能。最小值为1,最大值为256。
- CSNLOG_PART:CSNLOG文件控制器的个数。增大该值可以提高CSNLOG日志写入效率,提升事务提交性能,但是会增大内存使用;减小该值会减少相应内存使用,但可能使得CSNLOG日志写入冲突变大,影响性能。最小值为1,最大值为512。
- LOG2_LOCKTABLE_PART:常规锁表锁分区个数的2对数。增大该值可以提升正常流程常规锁获取锁的并行度,但是可能增加锁转移和锁消除时的耗时,对于等待事件在LockMgrLock时,可以调大该锁增加性能。最小值为4,即锁分区数为16;最大值为16,即锁分区数为65536。
- TWOPHASE_PART:两阶段事务锁的分区数。调大该值可以提高两阶段事务提交的并发数。最小值为1,最大值为64。
- FASTPATH_PART:每个线程可以不通过主锁表拿锁的最大锁个数,对于分区表读取、更新、插入、删除操作且等待事件在LockMgrLock时,可以通过调大该值避免获取LockMgrLock提升性能,建议调整数量大于等于分区数*(1+本地索引数量)+全局索引数量+10,调大该值会额外增加内存。最小值为20,最大值为10000。
该参数属于POSTMASTER类型参数,参考表2中对应设置方法进行设置。
取值范围: 字符串
默认值:
-
CLOG_PART:256
-
CSNLOG_PART:512
-
LOG2_LOCKTABLE_PART:4
-
TWOPHASE_PART:1
#openGauss #入门 #安装 #数据库 #开源