云数据库 GAUSSDB-其他优化器选项:plan_cache_mode
plan_cache_mode
参数说明:标识在prepare语句中,选择生成执行计划的策略。
参数类型:枚举类型
参数单位:无
取值范围:auto、force_generic_plan、force_custom_plan
- auto:表示由优化器自动选择custom plan或者generic plan。
- force_generic_plan:表示强制走generic plan(软解析)。generic plan是指对于prepare语句生成计划,该计划策略会在执行execute语句的时候把参数bind到plan中,然后执行计划。这种方案的优点是每次执行可以省去重复的优化器开销;缺点是当bind参数字段上数据存在倾斜时该计划可能不是最优的,部分bind参数场景下执行性能较差。bind会绑定第一次传入的参数类型,如果同一占位符两次传入的参数类型不一致会导致报错。
- force_custom_plan:表示强制走custom plan(硬解析)。custom plan是指对于prepare语句,在执行execute的时候,把execute语句中的参数嵌套到语句之后生成的计划。custom plan会根据execute语句中具体的参数生成计划,这种方案的优点是每次都按照具体的参数生成优选计划,执行性能比较好;缺点是每次执行前都需要重新生成计划,存在大量的重复的优化器开销。
此参数只对prepare语句生效,一般用在prepare语句中参数化字段存在比较严重的数据倾斜的场景下。
默认值:auto
设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。
设置建议:根据实际业务场景进行设置。
设置不当的风险与影响:设置不当可能会导致计划生成开销增加或计划生成质量下降。
- 云数据库 GaussDB(for MySQL)与华为云其他服务的关系
- 云数据库 RDS for MySQL与华为云其他服务的关系
- GaussDB学习_gaussdb教程_高斯数据库学习_华为云
- GaussDB数据库云备份_华为GaussDB_高斯数据库云备份
- GaussDB使用技巧_高斯数据库下载_高斯数据库使用技巧_华为云
- GaussDB考试_GaussDB数据库考试_高斯数据库考试_华为云
- GaussDB数据库考试_GaussDB认证_高斯数据库考试_华为云
- GaussDB视频教程_gaussdb查看表结构语句_高斯数据库视频教程_华为云
- GaussDB培训_GaussDB教程_高斯数据库培训-华为云
- GaussDB查版本命令_GaussDB命令参考_高斯数据库查版本命令-华为云