暂无图片
暂无图片
暂无图片
暂无图片
1
暂无图片

PostgreSQL 与 MogDB/openGauss 之 内存资源

原创 高云龙 云和恩墨 2021-11-29
1920

概述

MogDB/openGauss 虽然与PostgreSQL同源,但是对内存资源使用这部分还是做了一定的修改,最主要的修改就是对数据库使用操作系统内存的实例级限制,这在PostgreSQL中是缺失的,下表对两个数据库之间内存使用差异做一下整理。

PostgreSQL MogDB 备注
max_process_memory - 最小为2GB,默认单位是KB 限制使用服务器内存大小
shared_buffers 最小为128KB,默认128MB 最小为128MB,默认1GB 如参数值没有带单位,大小为是n * 8KB
standby_shared_buffers_fraction - 默认值0.3 备实例所在服务器使用shared_buffers内存缓冲区大小的比例
work_mem 默认4MB 最小64KB,默认64MB 内部排序操作和Hash表在开始写入临时磁盘文件之前使用的内存大小,单位是KB
maintenance_work_mem 默认64MB 最小1024KB,默认128MB 维护性操作(比如VACUUM、CREATE INDEX、ALTER TABLE ADD FOREIGN KEY等)中可使用的最大的内存,单位KB
temp_buffers 默认8MB 默认1MB,最小100 * 8KB 每个数据库会话设置用于临时缓冲区的最大内存,如果参数值没有单位,大小为n * 8KB
huge_pages 默认值try - 是否为主共享内存区域请求巨型页,设置为try,则服务器将尝试请求巨型页,但是如果失败会退回到默认的方式。如果为on,请求巨型页失败将使得服务器无法启动。如果为off,则不会请求巨型页
memorypool_enable - 默认值off 是否允许使用内存池
memorypool_size - 最小128KB,默认512MB 内存池大小
enable_memory_limit - 默认值on 是否启用逻辑内存管理模块,若max_process_memory-shared_buffers-cstore_buffers少于2G,MogDB强制把enable_memory_limit设置为off。
cstore_buffers - 最小16384KB,默认1GB 列存所使用的共享缓冲区的大小,单位KB
psort_work_mem - 最小64KB,默认512MB 列存表在进行局部排序中在开始写入临时磁盘文件之前使用的内存大小,单位KB
bulk_write_ring_size - 最小16384KB,默认2GB 数据并行导入使用的环形缓冲区大小,单位KB
query_max_mem - 默认0 执行作业所能够使用的最大内存,单位KB,值为负值或小于32MB,将设置为0,关闭此限制
query_mem - 默认0 执行作业所能够使用的最大内存,单位KB,值为负值或小于32MB,将设置为0,关闭此限制
最后修改时间:2021-11-29 15:31:47
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

墨天轮福利君
暂无图片
3年前
评论
暂无图片 0
您好,您的文章已入选合格奖,10墨值奖励已经到账请查收! ❤️我们还会实时派发您的流量收益。
3年前
暂无图片 点赞
评论
目录
  • 概述