GBase 8c
性能调优
文章
什么是Plan Hint?它的主要作用是什么?目前支持指定哪几种Join方式?
发表于2026-03-10 11:08:476次浏览2个评论
1. 什么是Plan Hint?
Plan Hint(执行计划提示)是GBase 8c数据库为用户提供的一种直接影响和干预SQL语句执行计划生成的机制。它通过在SQL语句中添加特定的注释语法(/*+ hint_content */),将优化建议传递给查询优化器。
2. 主要作用是什么?
Plan Hint的主要作用是进行执行计划调优,以提升查询性能。当数据库优化器自动选择的执行计划不是最优时(例如,由于统计信息不准确或代价模型估算偏差),用户可以通过Hint来:
- 指定表的连接方式(Join Method)。
- 指定表的连接顺序(Join Order)。
- 指定表的扫描方式(Scan Method)。
指定中间结果集的行数估计。
- 干预子查询的处理方式(如是否扩展)。
在PBE(Parse-Bind-Execute)模式下,强制选择Custom Plan或Generic Plan。
3. 目前支持指定哪几种Join方式?
Plan Hint目前支持指定以下三种常用的Join方式:
- Hash Join
- Merge Join
- Nested Loop Join(文档中也写作Nested Join)
重要说明:Plan Hint暂不支持Semi Join(半连接)方式。
语法示例:/*+ hashjoin(t1 t2) */ 或 /*+ no mergejoin(t1 t2) */(其中no表示不使用该方式)。
评论
登录后才可以发表评论
GBase用户47954发表于 4个月前
感谢作者的精彩分享!
GBase用户51884发表于 2个月前
加油
热门帖子
- 12025-12-01浏览数:182764
- 22023-05-09浏览数:25062
- 42023-09-25浏览数:18526
- 52020-05-11浏览数:17529