本文将将介绍PolarDB-X 2.0 混合事务分析处理(Hybrid Transactional/Analytical Processing,简称HTAP)特性。

背景信息

PolarDB-X 1.0解决了OLTP数据库面对海量数据下的存储、并发方面的扩展性问题,但由于缺失多机并行查询加速能力和列存储等能力,无法满足对实时性计算和复杂查询都要求较高的在线业务场景,同时还面临着ETL(Extract-Transform-Loa)数据异步传输链路运维复杂度高、数据一致性和查询实时性无法严格保障等挑战。

PolarDB-X 2.0由多个节点构成计算、存储内核一体化实例,在共用一份数据的基础上避免了ETL(Extract-Transform-Load)操作,实现了在线高并发OLTP联机事务处理以及OLAP海量数据分析,即HTAP。

技术架构

架构1
  • MPP和只读资源

    PolarDB-X 2.0通过多组DRDS计算节点提供大规模多级并行处理能力(Massively Parallel Processing,简称MPP),针对计算节点进行Scale-out完成MPP处理能力的线性扩展。

    同时通过AiSQL三节点基于Paxos构建Row-based只读Learner配合DRDS只读计算节点,提供TP、AP资源链路隔离机制。

  • 连接地址和数据源

    PolarDB-X 2.0TP和AP请求提供了统一连接地址(Endpoint),保持SQL语义以及兼容性完全一致。

    主实例提供HTAP集群地址(Cluster Endpoint)面向在线通用业务场景,提供了智能读写分离和强一致读特性。只读实例提供HTAP只读地址(Private Read Only Endpoint),专注离线拖数、跑批等资源链路隔离场景,确保只读资源可被独享。

    PolarDB-X 2.0添加只读实例,默认将AP workload转发至只读实例进行MPP并行加速;若未添加任何只读实例,则转发至主实例内部所有计算节点完成执行。

优势

优势
  • 一份数据,一个数据源,一个Endpoint即可覆盖TP和AP业务场景,降低数据库选型成本。
  • 支持线性水平扩展提升HTAP复杂查询加速能力,通过横向增加只读实例即可提高复杂查询速率。
  • 避免数据异步传输,满足全局数据查询一致性,提升业务实时分析效率。
  • 资源链路隔离,确保在线核心业务链路稳定性。

典型业务场景

PolarDB-X 2.0可满足如下典型业务场景需求:

  • 在线业务联机查询
    • 少量逻辑表关联、排序、聚合,涉及数据少量。
    • 并发较高,实时性要求高,严格一致性要求。
  • 报表BI(Business Intelligence)分析查询
    • 多张大表关联、排序、聚合、子查询以及宽表统计查询,涉及海量数据。
    • 数据一致性、实时性要求不高。
  • 离线拖数跑批查询
    • 大批量数据离线抽取、全表扫描、离线归档、T+1离线跑批任务,涉及多张大表,SQL较复杂。
    • 物理资源链路需隔离,不能影响在线业务,少量业务存在INSERT或SELECT需求。
    • 数据一致性、实时性要求不高。
  • Adhoc交互式即系查询
    • 后台运营场景交互式标签即系查询,少量并发,少量表关联聚合,WHERE条件不固定。
    • 数据一致性、实时性要求高。