GBase 8c
其他
文章

GBase 8c核心技术之分布式查询(三)

发表于2023-12-06 17:28:1859次浏览2个评论

分布表+分布表
 

分布表+分布表的查询,分为数据落在相同HG上和不同HG上两种类型。
 

 

数据落在相同HG上时原理如下:


 

TD1和TD2皆为分布表,以uid为分片列:
 

 

1. CN接收到SQL后,根据集群元数据存储的分片规则,确认此次查询仅涉及HG-1;

2. 把SQL语句直接发送给HG-1,获得执行结果;

3. CN将结果返回给用户。

这类查询性能高,无冗余操作,支持高并发,性能线性提升。

数据落在相同HG上时原理如下:


 

TD1和TD2皆为分布表,以uid为分片列:

1. CN接收到SQL后,根据集群元数据存储的分片规则,根据TD1表的分片规则,生成分布SQL语句;

2. 把SQL语句发送给HG-1数据引擎执行;

3. HG-1拉取其他HG上TD2表uid<60的数据;

4. 进行JOIN查询计算;

5. HG-1将结果返回给CN;

6. CN返回给用户。

这类查询性能较差,涉及数据移动,跨节点拉数据,网络传输是瓶颈。

评论

登录后才可以发表评论
用户头像
GBase用户28017发表于 6个月前
学习。
崔哥发表于 5个月前
墙角数枝梅,凌寒独自开。遥知不是雪,为有暗香来。