• GBase 8c 核心技术简介(中)


    4 并行技术

    GBase 8c 采用并行技术来提升系统的性能和吞吐量,主要特点有:
    1. 分布式并行计划器,结合集群特征,对算子进行分布式处理,生成合适的
    分布式执行计划;
    2. 通过基于规则和基于代价的优化,保证执行计划的高效;
    3. 调度器采用异步 I/O 等技术,确保调度的高效、可靠;

    5 分布式查询

    对于分布式查询,根据关联表类型的不同分为:复制表+复制表、复制表+分
    布表、分布表+分布表,数据落在相同 HG 上、分布表+分布表,数据落在不同 HG
    上四种情况。

    5.1 复制表+复制表

    1. 应用发出查询 SQL;
    2. CN 解析 SQL,计算出 SQL 涉及的表均为复制表;
    3. 向本 HG 发送 SQL;
    4. 获得结果返回应用。
    5. 这类查询不涉及数据移动,无临时计算结果,查询性能高,支持高并发,
    性能线性提升。

    5.2 复制表+分布表

    1. 应用发出查询数据 SQL;
    2. CN 根据查询条件判断包含复制表和分布表,则分别向 HG-1、 HG-2、 HG-
    3 查询数据,并获得每个节点上的结果;
    3. 合并结果并返回。
    这类查询性能较高,高并发的支持不如只涉及单组情况,适于大表的存储。

    5.3 分布表+分布表

    分布表+分布表的查询,分为数据落在相同 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 返回给用户。
    这类查询性能较差,涉及数据移动,跨节点拉数据,网络传输是瓶颈。

  • 相关阅读:
    vue3组件通信学习笔记
    JS 流行框架(三):Koa2
    算法矩阵提速原理
    矩阵分析与应用+张贤达
    windows 10 更新永久关闭
    torch.utils.data.DataLoader
    Docker的基本使用
    TiDB 一栈式综合交易查询解决方案获“金鼎奖”优秀金融科技解决方案奖
    mac idea 常用快捷键
    HTML那些重要的知识点
  • 原文地址:https://blog.csdn.net/huixinhuiyismile/article/details/127650619