基于混合负载的查询优化
企业数字化分析的多元化,涵盖了实时的BI决策,实时报表,数据ETL,数据清洗以及AI分析。
传统数仓方案,通过组合多套数据库与大数据产品,利用各自不同的优势来解决不同的分析场景,带来的问题就是整个数据冗余,同时管理多个异构系统的代价。
完备数据仓库,首要解决的问题包括:
如何更好的支持数据库场景下的交互式分析以及大数据场景下的复杂批计算场景。
如何一站式的解决混合负载下的服务能力。
新一代云原生数据仓库 AnalyticDB MySQL 版提供一站式的数仓服务。
混合计算引擎
提供Interactive与Batch计算模式,同时提供低延迟实时分析能力与大数据的高吞吐批计算能力,分别满足交互式查询与复杂离线计算场景。
Interactive模式:采用MPP计算架构,调度粒度为整个查询所有任务,计算过程中pipeline流式计算,满足低延迟的交互式分析场景。
Batch模式:采用批计算架构,通过DAG进行任务切分,分批调度,满足有限资源下大数据量计算,支持计算数据落盘,适用于计算量大,吞吐高的复杂分析场景。
资源组混合负载隔离
AnalyticDB for MySQL企业版、基础版、湖仓版和数仓版弹性模式均支持资源组多租户隔离。通过一个实例,满足客户不同分析场景的资源需求。
湖仓版和数仓版弹性模式资源组多租户隔离实例架构如下:
企业版和基础版资源组多租户隔离实例架构如下:
资源组之间计算资源物理隔离,保证隔离的效果,同时用户可以管理分配组内的资源,查询引擎模式,以及相关配置等信息。
查询流量可基于用户连接实例时使用的用户名自动路由到对应资源组中,做到最小化对用户的感知,同时也可通过hint的方式,由用户制定路由到对应资源组进行执行。