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

华为GaussDB T 硬解析软解析

原创 章芋文 2019-10-01
470

GaussDB 100在第一次执行一条SQL语句时,该SQL语法会被执行硬解析,生成相应的执行计划缓存到独立的Shared Pool内存区,后续再次执行该语句时,系统自动匹配SQL文本并直接调用缓存在SQL Pool中的执行计划,省去了再次硬解析的步骤,减少SQL执行时间。

SQL文本必须每个字符都完全一致的情况下,GaussDB 100认定可复用SQL Pool中的历史执行信息和复用执行计划,即使SQL文本存在细微的差异,GaussDB 100也认为是完全不同的SQL语句,在执行时会重复进行硬解析,并生成单独的执行计划缓存在Shared Pool中。如果SQL文本中仅是where过滤条件中的数值不同,推荐业务使用绑定变量的方式。。

SQL Pool占用内存的大小受内存参数SHARED_POOL_SIZE影响,该内存区大小可动态修改。可以使用DV_GMA视图查看SGA的结构及共享池的大小,可以使用DV_SQLS视图查看缓存的SQL语句,可以使用DV_OBJECT_CACHE视图查看数据字典缓存。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论