GBase 8a
运维管理
问答

GBase 8a 如何优化查询性能?

发表于2025-09-12 23:33:3351次浏览5个评论

为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。

【GBase版本】:

【操作系统】:

【CPU】:

【问题描述】*:GBase 8a 如何优化查询性能?

评论

登录后才可以发表评论
GBase用户21182发表于 10个月前
看下其它同学怎么回答。
用户头像
GBase社区管理员发表于 10个月前

优化查询性能可以从以下几方面入手:

首先需要着重注意表类型和表分布键的选择,然后

1、避免使用select *,明确实际使用的投影列。
2、海量数据 group by 操作,哈希分布列应该放在第一个位置上。
3、子查询使用where条件提前过滤数据,减少join的运算。
4、避免子查询嵌套,若必须嵌套则层数应尽量少。
5、内连接比外连接效率要高, 连接查询所使用的最后一个字段应该是哈希分布列。
6、表关联方式使用 SQL 99 标准并且不要丢失关联查询条件,以避免产生笛卡尔乘积。
7、关注笛卡尔积的问题: 
    关注 $GBASE_BASE/tmpdata/cache_gbase/HashJoin 空间变化,如果出现2-10G增长,则表示可能出现笛卡尔积
 

 

崔哥发表于 9个月前
人生贵相知,何用金与钱
用户头像
GBase用户28017发表于 8个月前
索引,使用窗口函数。
ljt98发表于 2个月前
蹲个答案。