MySQL分析实例解读

随着企业数据爆发式增长,MySQL分析查询卡顿问题越来越多,用户时效性不能保证,精细化运营诉求不能满足。如何能无缝对接业务库,实现毫秒级针对万亿级数据进行即时的多维分析透视和业务探索,MySQL分析实例给出完美解决方案。

MySQL分析实例是云数据库RDS MySQL与AnalyticDB for MySQL联合打造,产品级深度融合的OLTP+OLAP解决方案,解决客户复杂分析查询卡顿问题,快速构建实时数仓。一键购买,权限打通,免费自动数据同步,业务库毫无感知和影响情况下数据实时同步到分析库,帮助云数据库RDS MySQL客户快速构建实时数仓平台。无需自行搭建数仓,无需关注数据如何入库,更无需担心数据实时性,用户只需购买分析实例即可同步创建一个分析性能约为MySQL100倍的分析库。

1.MySQL分析实例和只读实例区别

使用场景上,只读实例主要面向在线应用,而分析实例针对RDS MySQL源实例的复杂报表分析,如下图所示;产品实现上,只读实例是只能接收只读请求的RDS MySQL,而分析实例是一个AnalyticDB for MySQL集群。

MySQL分析实例解读

2.分析实例其实是AnalyticDB

MySQL分析实例其是一个内置了数据传输(DTS)的AnalyticDB for MySQL集群(目前默认为基础版),购买成功后会自动将云数据库RDS MySQL主实例中的全量数据和增量数据实时同步到AnalyticDB for MySQL中,用户可以登陆AnalyticDB for MySQL控制台的集群详情页查看数据同步进度和延时情况。

2.1 AnalyticDB介绍

AnalyticDB是阿里巴巴自主研发、唯一经过超大规模以及核心业务验证的PB级实时数据仓库。自2012年第一次在集团发布上线以来,至今已累计迭代发布近百个版本,支撑起集团内的电商、广告、菜鸟、文娱、飞猪等众多在线分析业务。每年双十一上述众多实时分析业务高峰驱动着AnalyticDB不断的架构演进和技术创新。AnalyticDB于2014年在阿里云开始正式对外输出,支撑行业既包括传统的大中型企业和*机构,也包括众多的互联网公司,覆盖外部十几个行业。

2019年7月,全球最知名的数据管理系统评测标准化TPC组织公布了数据库领域分析性能基准测试排名,AnalyticDB登上榜首,是全球首个通过TPC严格审计认证的云数据库产品。AnalyticDB对数据进行在线统计和分析,帮助企业简单快速实时挖掘数据价值。登上TPC榜首,意味着其已经成为全球最快的实时数据仓库!在复杂分析场景中性能提升10倍,万亿数据多维分析仅需毫秒级。

近期,阿里云基于常见的开源数据分析产品与阿里云自研的AnalyticDB进行了TPC-H(100GB)对比测试,测试结果为:AnalyticDB性能约为开源MySQL100倍,约为Presto、Spark、Impala的6~10倍,详情情况参考测试结果

MySQL分析实例解读

2.3 AnalyticDB技术架构

如下为基础版和集群版架构图,无论哪种系列AnalyticDB都是由Coordinator和Worker组成。

MySQL分析实例解读

上图为基础版架构图,下面为集群版架构图


MySQL分析实例解读

2.3.1 Coordinator: 前端控制节点,职责包括

(1)MySQL协议层接入,SQL解析

(2)认证和鉴权,提供了更完善和细化的权限体系模型,白名单和集群级别RAM控制,并审计与合规记录所有SQL操作。

(3)集群管理:成员管理、元数据、数据一致性、路由同步、备份与恢复(数据与log管理)

(4)后台异步任务管理

(5)事务管理

(6)优化器,执行计划生成

(7)计算调度,负责执行任务调度

2.3.2 Worker: 存储和计算节点,包含

(1)计算模块

分布式MPP+DAG混合计算引擎和优化器达到了更高的复杂计算能力和混合负载管理能力。利用阿里云计算平台之上资源灵活调度上的优势,实现了计算资源的弹性调度。计算 Worker节点可以单独拉起,因应业务需求做到分钟级甚至秒级扩展,实现资源的最有效利用。

(2)存储模块

存储模块更加轻量化,具备了承载更大吞吐数据实时写入和读取能力,写入性能比之前版本同等规格高50%倍左右,毫秒级可见,满足客户实时分析需求。

存储节点提供全量和增量备份和恢复能力,云盘的定期快照和日志会实时同步到OSS中保存,对用户数据提供更高的安全保障,帮助用户在数据库发生问题时最大限度的找回。

(3)Worker Group

带存储模块的Worker节点被划分为一个个节点组(Worker Group),集群版提供三副本的存储,通过Raft分布式一致性协议像一个整体一样工作,允许其中一些Worker节点出现故障也能继续提供服务。

AnalyticDB的读写链路就是稳定运行在上诉组件之上

(1)写入链路,数据通过Coordinator写入后,会根据表上的分区键写入到不同的表分区(Shard)所属的Worker Group中,每个Worker Group中的Worker三副本通过Raft协议保证了数据的强一致性、高可靠、高可用、实时可见(线性一致性);为了保证高效,AnalyticDB 进行了GroupCommit、压缩、异步化、零拷贝等众多优化技术,大幅优化了写入性能, TPC-H表单节点TPS 到达15w 以上,并且可以线性扩展;

(2)查询链路,用户的SQL语句通过MySQL协议发送到Coordinator后,SQL会被Parser进行解析生成逻辑计划,然后被Optimizer进行优化后生成物理执行计划,再发送给计算调度模块将该SQL的物理执行Task分发到不同的Worker节点执行,每个执行Task都会被关联到Worker上的存储,从存储拉取数据进行分布式计算。为了提升计算性能,AnalyticDB 进行了计算下推存储、高效智能索引筛选、向量化+Pipeline流式执行等一系列优化,这也是AnalyticDB的TPC-DS性能做到了全球最快的原因。

AnalyticDB的读写链路就是稳定运行在上诉组件之上

3.MySQL分析实例优势

(1)一键购买,权限打通

RDS MySQL用户只需通过控制台购买MySQL分析实例,即可实现数据同步,无需分别购买AnalyticDB for MySQL集群和数据传输(DTS)实例;系统自动打通RDS MySQL、数据传输(DTS)和AnalyticDB for MySQL之间的权限,无需反复授权。

(2)免费自动同步数据

MySQL分析实例内置数据传输(DTS),创建成功后自动进行全量和增量数据同步。

(3)更大规模,性能更高

复杂分析性能约为MySQL的100倍以上;具有承载更大吞吐数据实时写入和读取能力。

(4)极度灵活的弹性能力

针对节点组和磁盘空间可以随时秒级扩缩容或者升降配;支持升配存储密集型和计算密集型规格,冷热数据分层存储,历史数据无限低成本保留(即将上线)。

(5)完整的OLTP+OLAP解决方案,

产品级别深度融合,完美解决客户复杂分析查询卡顿问题,快速构建实时数仓。

4.适合用户

MySQL分析实例特别适合以下人群:

(1)Hadoop/Spark等太复杂,想快速实现数据化转型的RDS客户;

(2)报表数据库查询慢的RDS用户;

(3)需要快速构建测试环境的进行数仓选型RDS用户;

(4)学习类客户,可快速了解AnalyticDB for MySQL的RDS用户;



上一篇:《STM32库开发实战指南:基于STM32F4》----2.3 仿真器配置


下一篇:重磅 | 端到端护航保障 阿里云发布数据库专家服务