ITPub博客

首页 > 数据库 > 国内数据库 > 南大通用技术分享:GBase 8a数据库执行计划分布式执行算子

南大通用技术分享:GBase 8a数据库执行计划分布式执行算子

原创 国内数据库 作者:GBASE南大通用 时间:2026-09-16 15:20:34 0 删除 编辑

南大通用GBase 8a数据库(gbase database)针对JOIN、GROUP BY、ORDER BY等核心操作,设计了适配分布式架构的专属执行算子,是执行计划的核心组成,分为静态无迁移、动态重分布两类。

1、分布式JOIN算子

•静态Hash Join(最优):关联两张表均为哈希分布表,且关联字段为分片键。各节点本地分片直接关联,无跨节点数据迁移,并行度最高、性能最优,是优先推荐的关联方式。

•小表广播Join:大表为分片表、小表数据量小。将小表全量广播至所有数据节点,各节点本地完成大小表关联,避免大表数据重分布,适配小维度表关联场景。

•动态重分布Hash Join:关联字段非分片键,节点本地无法完成关联。优化器自动对其中一张或两张表数据重分片、跨节点迁移数据后再关联,存在数据传输开销,性能次之。

2、分布式GROUP BY算子

•静态GROUP BY(最优):GROUP BY字段包含表分片键,各节点本地分片独立完成聚合,仅最终结果汇总至管理节点,无数据迁移,性能极高。

•动态重分布GROUP BY:GROUP BY字段不包含分片键,本地聚合结果分散,需先将数据按聚合字段重分布,再全局聚合,存在数据迁移开销。

•两阶段GROUP BY:先各节点局部聚合压缩数据量,再全局汇总聚合,大幅减少跨节点传输数据量,是大数量聚合的核心优化策略。

3、排序与去重算子

GBase 8a默认优先节点本地排序,再全局归并排序;若执行计划出现Using filesort,代表未利用索引排序,需手动优化索引或改写排序条件。DISTINCT去重逻辑与GROUP BY底层复用相同聚合算子,支持分布式并行去重。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69979120/viewspace-3182613/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
GBASE南大通用,致力于成为用户最信赖的数据库产品供应商!

注册时间:2020-07-16

  • 博文量
    1309
  • 访问量
    1282908