开发者社区 > 数据库 > 正文

PolarDB 的并行执行架构主要包括几个执行模块?

已解决

PolarDB 的并行执行架构主要包括几个执行模块?

展开
收起
云上静思 2022-09-20 16:13:19 565 0
1 条回答
写回答
取消 提交回答
  • 推荐回答

    如图所示,

    配图52.png

    PolarDB 的并行执行架构示意图,主要有4 个执行模块,自顶向下分别是:

    • Leader。主要负责并行执行计划的生成,计算下推和汇总计算结果,图中执行计划的 Gather 节点就是Leader,接收来自各个消息队列的数据。

    • 消息队列。主要负责Leader 和Worker 之间的数据通信。每个消息队列表示一个Worker 和Leader 的通信关系,有N 个Worker,就需要有N 个消息队列。

    • Worker。接收Leader 下发的执行计划,并将执行结果返回给Leader。每个Worker 的执行任务是同构的,不同的是它们具体扫描的数据。例如,图中用5 个颜色表示Worker 线程,它们内部包含的执行计划是一样的。

    • 并行扫描。由InnoDB 层提供并行扫描功能。表中的数据被切分成多个分区,每个分区内的数据由一个Worker 负责(如图中不同颜色表示的分区块和上层的Worker 节点是一一对应的)。当一个Worker 处理完一个分区后,它会申请绑定到一个未被扫描的分区来继续执行。

    以上内容摘自《云原生数据库原理与实践》,这本书可以在电子工业出版社天猫店购买。

    2022-09-20 17:28:48
    赞同 展开评论 打赏

数据库领域前沿技术分享与交流

相关产品

  • 云原生数据库 PolarDB
  • 相关电子书

    更多
    云栖大会:开源 PolarDB 架构演进、关键技术与社区建设 立即下载
    2023云栖大会:和客户一起玩转PolarDB新特性 立即下载
    2023云栖大会:PolarDB for AI 立即下载