为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】: 1-2-2-21.05.13-139380-10006-ENT Pack5
【操作系统】:centos 7.9
【CPU】: Intel 14900k
【问题描述】*:
第一个问题
V$SQL_STAT_HISTORY中max_mem_used为什么叫max_mem_used而不是mem_used
第二个问题
经过测试,我在disql同一个会话中执行同一个sql,max_mem_used一直在单调递增变大,如下图,请问下为什么我执行同样的sql在同一个会话里为什么会变大
第三个问题
max_mem_used记录的是否是操作系统上真实消耗掉的内存
第四个问题
为什么我执行 /xxxxxx/select 'xxxxxx' from dual;
内存消耗有64582kb,请问下这个合理吗?
语句的不同阶段使用的内存不一样 比如你做完一个排序 然后最后取10行进入下一层 排序的过程可能使用大量内存 但到下一个算子的时候不一定 这个时候的占用的内存并不多 这个MAX 记录的是峰值,然后这个值跟消耗操作系统多少内存关系不大,因为内存来源可能是自己的私有内存池,具体会从操作系统拿多少这个 只能通过相关内存池的使用来判断