GBase 8a
性能调优
文章

GBase南大通用 8aMPP数据库 Single Hash Optimizer

发表于2024-04-01 14:10:16144次浏览1个评论

GBase南大通用 8aMPP数据库是一款分布式的数据库,他的Single Hash Optimizer 可以理解为单点 hash 优化;正常情况下,

集群将执行计划下发到所有的 gnode节点进行计算,但是在某些情况下,只有部分 gnode节点需要计算,其余的节点不需要做计算。例如:

 

sql1:select * from t1 where a = 1;

 

假设 t1 表为hash分布表,且hash分布列为 a,集群构建完相应的查询计划、执行计划时,在下发前,根据sql中的使用的等值hash条件中的

hash值计算下发的目标节点,将执行计划只下发到目标节点计算即可。

 

如本例GBase南大通用 8aMPP数据库集群将执行计划下发到 gnode1 节点进行计算,其他的gnode节点不需要做计算,因为 sql 中使用 a = 1的查询条件,

gnode1存放hash值为1的数据,即使其他的gnode节点做计算操作,也是与意义的计算;在某些情况下能够减少对系统资源的占用,提高吞吐量。

 

约束条件:

使用的数据表为分布表

where 条件为 hash 等值类型,不能包含 or等运算符,可以包含and

同时满足上述条件

 

参数说明:

gcluster_single_hash_node_optimize

功能:控制 single hash optimizer 功能是否启用

默认值:1 功能开启

最小值:0

最大值:3

 

参数意义:

0:功能关闭

1:功能开启,只支持单表

2:功能开启,支持from 子查询

3:功能开启,支持多表

评论

登录后才可以发表评论
崔哥发表于 7个月前
九十日春都过了,贪忙何处追游。三分春色一分愁。雨翻榆荚阵,风转柳花球。我与使君皆白首,休夸少年风流。佳人斜倚合江楼,水光都眼净,山色总眉愁。