阿里云数字新基建系列:云数据库架构
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

2.2.1 AnalyticDB for MySQL

随着企业IT和互联网系统的发展,产生了越来越多的数据。数据量的积累带来了质的飞跃,使得数据应用从业务系统的一部分演变得愈发独立。物流、交通、新零售等越来越多的行业需要通过OLAP做到精细化运营,从而调控生产规则、运营效率、企业决策等。

1. 运营优化

在业务系统中,我们通常使用的是OLTP(On-Line Transaction Processing)数据存储,如MySQL和PostgreSQL等。这些关系型数据库系统擅长事务处理,能够很好地支持频繁的数据插入和修改。但是,一旦需要计算的数据量过大,例如有数千万甚至数十亿条数据,或者需要进行非常复杂的计算,此时OLTP数据库系统便力不从心了。这个时候,我们便需要使用OLAP系统来进行处理。

云原生数据仓库MySQL版(简称ADB MySQL版,原AnalyticDB for MySQL)是云端托管的PB级高并发实时数据仓库,是专注于服务OLAP领域的数据仓库。在数据存储模型上,采用关系模型进行数据存储,可以使用SQL进行自由灵活的分析计算,无须预先建模。利用云端的无缝伸缩能力,ADB MySQL版在处理百亿条甚至更大量级的数据时能够真正实现毫秒级计算。

ADB MySQL版支持通过SQL来构建关系型数据仓库,具有管理简单、节点数量伸缩方便、灵活升降配实例规格等特点,而且支持丰富的可视化工具以及ETL软件,极大地降低了企业建设数据化的门槛。

ADB MySQL版为精细化运营而生,实时洞见数据价值,持续推进企业数据化变革转型。

2. 为什么选择ADB MySQL版

ADB MySQL版是云端托管的大规模并行处理(MPP)的PB级数据仓库。相对于业内其他数据仓库或者OLAP引擎解决方案,ADB MySQL版作为一款SQL数据仓库,具有如下优势。

(1)快

ADB MySQL版运用新一代超大规模的MPP+DAG融合引擎,采用行列混存技术、自动索引、智能优化器,瞬间即可对千亿级别的数据进行即时的多维度分析透视,快速发现数据价值。ADB MySQL版对复杂SQL查询的速度相比传统的关系型数据库快10倍。此外,ADB MySQL版还可以快速扩容至数千个节点的超大规模,进一步提升查询响应速度。

(2)灵活

ADB MySQL版采用极度灵活的存储和计算分离架构,用户可以随时调整节点数量和动态升降配实例规格。ADB MySQL版同时支持在大存储SATA节点和高性能的SSD节点之间进行灵活切换。例如,可以从8个C4规格升到12个C8规格,或者从12个C8规格降到8个C4规格,使企业真正做到灵活控制成本。

(3)易用

ADB MySQL版作为云端托管的PB级SQL数据仓库,全面兼容MySQL协议和SQL:2003,通过标准SQL、常用BI工具以及ETL工具平台,即可轻松使用ADB MySQL版。ADB MySQL版旨在帮助企业降低实时数据化运营的建设门槛。

(4)超大规模

ADB MySQL版是全分布式结构,无任何单点设计,使得数据库实例支持ECU节点动态线性扩容至数千个节点。用户可以通过横向扩容来大幅度提升SQL查询响应速度,以及增加SQL处理并发的能力。

(5)高并发写入

ADB MySQL版支持用户实时极速地进行数据写入、更新和高并发查询、交互式分析、ETL一体化。它采用Raft协议,支持超大规模数据写入实时、强一致;对于高并发或大吞吐量场景,可按需独立弹性扩展,存储可从GB级扩展到百PB级,TPS可横向扩展至千万级。

(6)数据高压缩

ADB MySQL版采用行列混存技术,不同列的数据具有不同的数据类型,可以采用不同的压缩算法。针对不同列,甚至同一列中的不同Block,用户可以选择最合适的压缩算法。压缩算法采用编码算法+通用压缩,编码算法和压缩算法超过10种,平均数据压缩率提升3~10倍。

如图2-9所示为阿里云ADB行列混合结构示意图,可以看到,ADB使用了多层次分片,底层使用列存方式保存数据,同时兼容行列混合方式。

图2-9 阿里云ADB行列混合结构示意图