AnalyticDB for MySQL技术架构解析

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: AnalyticDB for MySQL可以实现更精细化的资源利用和更低成本的投入,让用户能更加专注于业务发展,专注于数据价值。

企业数据需求不断变化,近年来变化趋势日益明显,从数据的3V特性看:体积,速度和变化;Big Data强调数据量,PB级以上,是静态数据。而Fast Data在数据量的基础上,意味着速度和和变化,意味着客户可以更加实时化、更加快速地进行数据处理。

在Forrester最近的一项研究中,超过75%的受访公司已经使用Fast Data解决方案。 在接受调查的人中,88%表示他们需要近乎实时地对数据执行分析。

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

AnalyticDB承接着阿里巴巴广告营销、商家数据服务、菜鸟物流、盒马新零售等众多核心业务的高并发分析处理, 每年双十一上述众多实时分析业务高峰驱动着AnalyticDB不断的架构演进和技术创新。

AnalyticDB for MySQL 3.0针对Fast Data毫秒处理的需求,重新设计了架构,提供及时且经济高效的数据处理的系统和方法,各个事件在到达时进行处理,处理延时到秒、毫秒,真正同时满足数据体积,速度和变化的3V属性,助力企业打造一个实时的数据世界。

根据2019年The Forrester Wave™: Database-As-A-Service,Q2 2019的最新报告,阿里云数据已经进入全球第二梯队(Strong Performers) ,同时也连续多年进入 Gartner发布的分析型数据管理平台报告 (Magic Quadrant for Data Management Solutions for Analytics),进入全球分析市场。

AnalyticDB for MySQL 3.0当前整体架构如下图。

image

其中几个主要的组件为:

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

  • MySQL协议层接入,SQL解析
  • 认证和鉴权,提供了更完善和细化的权限体系模型,白名单和集群级别RAM控制,并审计与合规记录所有SQL操作。
  • 集群管理:成员管理、元数据、数据一致性、路由同步、备份与恢复(数据与log管理)
  • 后台异步任务管理
  • 事务管理
  • 优化器,执行计划生成
  • 计算调度,负责执行任务调度

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

  • 计算模块

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

  • 存储模块

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

AnalyticDB for MySQL 3.0是运行在云盘 + OSS系统上而不是本地盘上。随着RDMA、ESSD盘的应用技术更稳定,后端节点直接利用云盘分布式存储构建大容量高可用的数据库存储集群会更有优势。

通过云盘的能力,AnalyticDB for MySQL 3.0做到了磁盘灵活扩缩,进一步降低了用户成本。用户根据实际使用量购买相应磁盘空间,无需为固定的多余空间买单;当用户磁盘达到瓶颈时可以按需扩容。对于访问的比较少,且访问频次会随着时间的流逝而减少冷数据,通过更低成本的OSS做分层存储机制,在保持9个9的数据可靠性同时,进一步降低用户成本。

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

  • Worker Group

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

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

  • 写入链路,数据通过Coordinator写入后,会根据表上的分区键写入到不同的表分区(Shard)所属的Worker Group中,每个Worker Group中的Worker三副本通过Raft协议保证了数据的强一致性、高可靠、高可用、实时可见(线性一致性);为了保证高效,AnalyticDB 进行了GroupCommit、压缩、异步化、零拷贝等众多优化技术,大幅优化了写入性能, TPC-H表单节点TPS 到达15w 以上,并且可以线性扩展;
  • 查询链路,用户的SQL语句通过MySQL协议发送到Coordinator后,SQL会被Parser进行解析生成逻辑计划,然后被Optimizer进行优化后生成物理执行计划,再发送给计算调度模块将该SQL的物理执行Task分发到不同的Worker节点执行,每个执行Task都会被关联到Worker上的存储,从存储拉取数据进行分布式计算。为了提升计算性能,AnalyticDB 进行了计算下推存储、高效智能索引筛选、向量化+Pipeline流式执行等一系列优化,目前AnalyticDB的TPC-DS性能做到了全球最快。

在此之上,通过服务秒级恢复,AZ内/跨AZ部署,自动故障检测、摘除和副本重搭,配合上述的三副本存储、全量和增量备份,提供金融级别的数据可靠性保证。在周边生态上,提供数据迁移、数据同步、数据管理、数据集成、数据安全等配套工具,方便用户使用,使用户能更加专注于业务发展。

综上,AnalyticDB for MySQL 3.0版本融合了分布式、弹性计算与云计算的优势,对规模性、易用性、可靠性和安全性等方面进行了大规模的改进,充分满足不同场景Fast Data实时数据仓库的需求。支持更大规模的并发访问、更快读写能力以及更智能的混合查询负载管理等,实现更精细化的资源利用和更低成本的投入,让用户能更加专注于业务发展,专注于数据价值。

目录
相关文章
|
4天前
|
运维 负载均衡 安全
深度解析:Python Web前后端分离架构中WebSocket的选型与实现策略
深度解析:Python Web前后端分离架构中WebSocket的选型与实现策略
21 0
|
1天前
|
前端开发 Java 应用服务中间件
21张图解析Tomcat运行原理与架构全貌
【10月更文挑战第2天】本文通过21张图详细解析了Tomcat的运行原理与架构。Tomcat作为Java Web开发中最流行的Web服务器之一,其架构设计精妙。文章首先介绍了Tomcat的基本组件:Connector(连接器)负责网络通信,Container(容器)处理业务逻辑。连接器内部包括EndPoint、Processor和Adapter等组件,分别处理通信、协议解析和请求封装。容器采用多级结构(Engine、Host、Context、Wrapper),并通过Mapper组件进行请求路由。文章还探讨了Tomcat的生命周期管理、启动与停止机制,并通过源码分析展示了请求处理流程。
|
5天前
|
安全 Android开发 iOS开发
深入解析:安卓与iOS的系统架构及其对应用开发的影响
本文旨在探讨安卓与iOS两大主流操作系统的架构差异,并分析这些差异如何影响应用开发的策略和实践。通过对比两者的设计哲学、安全机制、开发环境及性能优化等方面,本文揭示了各自的特点和优势,为开发者在选择平台和制定开发计划时提供参考依据。
|
7天前
|
测试技术 数据库 Android开发
深入解析Android架构组件——Jetpack的使用与实践
本文旨在探讨谷歌推出的Android架构组件——Jetpack,在现代Android开发中的应用。Jetpack作为一系列库和工具的集合,旨在帮助开发者更轻松地编写出健壮、可维护且性能优异的应用。通过详细解析各个组件如Lifecycle、ViewModel、LiveData等,我们将了解其原理和使用场景,并结合实例展示如何在实际项目中应用这些组件,提升开发效率和应用质量。
|
13天前
|
消息中间件 canal 关系型数据库
Maxwell:binlog 解析器,轻松同步 MySQL 数据
Maxwell:binlog 解析器,轻松同步 MySQL 数据
93 11
|
2天前
|
机器学习/深度学习 人工智能
【AI大模型】深入Transformer架构:编码器部分的实现与解析(下)
【AI大模型】深入Transformer架构:编码器部分的实现与解析(下)
|
3天前
|
关系型数据库 MySQL 数据库
MySQL技术深度解析:每次最大插入条数探秘
MySQL技术深度解析:每次最大插入条数探秘
11 0
|
3天前
|
存储 缓存 关系型数据库
详细解析MySQL中的innodb和myisam
总之,InnoDB和MyISAM各有千秋,选择合适的存储引擎应基于对应用程序特性的深入理解,以及对性能、数据完整性和可扩展性的综合考量。随着技术发展,InnoDB因其全面的功能和日益优化的性能,逐渐成为更广泛场景下的首选。然而,在特定条件下,MyISAM依然保留其独特的价值。
13 0
|
4天前
|
消息中间件 监控 关系型数据库
MySQL数据实时同步到Elasticsearch:技术深度解析与实践分享
在当今的数据驱动时代,实时数据同步成为许多应用系统的核心需求之一。MySQL作为关系型数据库的代表,以其强大的事务处理能力和数据完整性保障,广泛应用于各种业务场景中。然而,随着数据量的增长和查询复杂度的提升,单一依赖MySQL进行高效的数据检索和分析变得日益困难。这时,Elasticsearch(简称ES)以其卓越的搜索性能、灵活的数据模式以及强大的可扩展性,成为处理复杂查询需求的理想选择。本文将深入探讨MySQL数据实时同步到Elasticsearch的技术实现与最佳实践。
25 0
|
2天前
|
人工智能 自然语言处理 关系型数据库
阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成
近日,阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成。

热门文章

最新文章

相关产品

  • 云原生数据仓库AnalyticDB MySQL版
  • 推荐镜像

    更多