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实时数据仓库的需求。支持更大规模的并发访问、更快读写能力以及更智能的混合查询负载管理等,实现更精细化的资源利用和更低成本的投入,让用户能更加专注于业务发展,专注于数据价值。

目录
相关文章
|
3月前
|
存储 SQL 缓存
快手:从 Clickhouse 到 Apache Doris,实现湖仓分离向湖仓一体架构升级
快手 OLAP 系统为内外多个场景提供数据服务,每天承载近 10 亿的查询请求。原有湖仓分离架构,由离线数据湖和实时数仓组成,面临存储冗余、资源抢占、治理复杂、查询调优难等问题。通过引入 Apache Doris 湖仓一体能力,替换了 Clickhouse ,升级为湖仓一体架构,并结合 Doris 的物化视图改写能力和自动物化服务,实现高性能的数据查询以及灵活的数据治理。
快手:从 Clickhouse 到 Apache Doris,实现湖仓分离向湖仓一体架构升级
|
4月前
|
存储 边缘计算 运维
实时数仓Hologres发展问题之实时数仓对Lambda架构的问题如何解决
实时数仓Hologres发展问题之实时数仓对Lambda架构的问题如何解决
68 2
|
22天前
|
消息中间件 Java Kafka
实时数仓Kappa架构:从入门到实战
【11月更文挑战第24天】随着大数据技术的不断发展,企业对实时数据处理和分析的需求日益增长。实时数仓(Real-Time Data Warehouse, RTDW)应运而生,其中Kappa架构作为一种简化的数据处理架构,通过统一的流处理框架,解决了传统Lambda架构中批处理和实时处理的复杂性。本文将深入探讨Kappa架构的历史背景、业务场景、功能点、优缺点、解决的问题以及底层原理,并详细介绍如何使用Java语言快速搭建一套实时数仓。
108 4
|
2月前
|
分布式计算 大数据 Serverless
云栖实录 | 开源大数据全面升级:Native 核心引擎、Serverless 化、湖仓架构引领云上大数据发展
在2024云栖大会开源大数据专场上,阿里云宣布推出实时计算Flink产品的新一代向量化流计算引擎Flash,该引擎100%兼容Apache Flink标准,性能提升5-10倍,助力企业降本增效。此外,EMR Serverless Spark产品启动商业化,提供全托管Serverless服务,性能提升300%,并支持弹性伸缩与按量付费。七猫免费小说也分享了其在云上数据仓库治理的成功实践。其次 Flink Forward Asia 2024 将于11月在上海举行,欢迎报名参加。
228 6
云栖实录 | 开源大数据全面升级:Native 核心引擎、Serverless 化、湖仓架构引领云上大数据发展
|
1月前
|
监控 数据挖掘 OLAP
深入解析:AnalyticDB中的高级查询优化与性能调优
【10月更文挑战第22天】 AnalyticDB(ADB)是阿里云推出的一款实时OLAP数据库服务,它能够处理大规模的数据分析任务,提供亚秒级的查询响应时间。对于已经熟悉AnalyticDB基本操作的用户来说,如何通过查询优化和性能调优来提高数据处理效率,是进一步提升系统性能的关键。本文将从个人的角度出发,结合实际经验,深入探讨AnalyticDB中的高级查询优化与性能调优技巧。
98 4
|
1月前
|
存储 SQL 缓存
AnalyticDB 实时数仓架构解析
AnalyticDB 是阿里云自研的 OLAP 数据库,广泛应用于行为分析、数据报表、金融风控等应用场景,可支持 100 trillion 行记录、10PB 量级的数据规模,亚秒级完成交互式分析查询。本文是对 《 AnalyticDB: Real-time OLAP Database System at Alibaba Cloud 》的学习总结。
53 1
|
2月前
|
存储 SQL 分布式计算
湖仓一体架构深度解析:构建企业级数据管理与分析的新基石
【10月更文挑战第7天】湖仓一体架构深度解析:构建企业级数据管理与分析的新基石
135 1
|
2月前
|
存储 SQL 缓存
Apache Doris 3.0 里程碑版本|存算分离架构升级、湖仓一体再进化
从 3.0 系列版本开始,Apache Doris 开始支持存算分离模式,用户可以在集群部署时选择采用存算一体模式或存算分离模式。基于云原生存算分离的架构,用户可以通过多计算集群实现查询负载间的物理隔离以及读写负载隔离,并借助对象存储或 HDFS 等低成本的共享存储系统来大幅降低存储成本。
Apache Doris 3.0 里程碑版本|存算分离架构升级、湖仓一体再进化
|
4月前
|
SQL 关系型数据库 MySQL
实时数仓 Hologres操作报错合集之Flink CTAS Source(Mysql) 表字段从可空改为非空的原因是什么
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
|
28天前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
65 2

相关产品

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

    更多