ADB(AnalyticDB)MySQL数据库的底层技术采用了计算存储分离的架构,建立在云原生基础设施之上。其存储层具备以下特点:
Serverless存储能力:支持存储资源的独立弹性伸缩,包括横向扩展存储节点数和纵向升级存储节点的CPU与内存,采用按使用量付费模式。
分层存储与高性能:实时数据存储于SSD热存储上,确保低延时的写入与查询;全量数据通过微分区(Micro Partitions)存储,优化了传统数仓的IO放大和写放大问题,同时利用OSS和PANGU实现廉价且无限扩展的存储能力。支持列投影、谓词下推、分区裁剪等优化,并具备针对不同查询需求的自适应访问模式。
统一多级缓存层:整合本地内存、SSD及远程分布式缓存,加速湖仓数据访问,满足从高速在线分析到大规模ETL场景的需求。
弹性扩缩容:提供分钟级别扩缩容能力,扩缩容时无需数据搬迁,仅通过元数据操作完成,且支持计算与存储的独立弹性。
资源隔离与多场景支持:独立的Build Service负责离线操作,与在线负载隔离,确保服务稳定性。同时,支持实时更新、交互式查询、离线ETL及明细点查等多种场景,实现数据湖与数据仓库的一体化。
存储层高可用:基于Raft协议构建的分布式存储系统,实现数据分片的多副本管理和强一致性,确保读写服务在部分节点故障时仍能继续提供。
此回答整理自钉群“云数据仓库ADB-开发者群”
技术架构
AnalyticDB for MySQL采用云原生架构,计算存储分离、冷热数据分离,支持高吞吐实时写入和数据强一致,兼顾高并发查询和大吞吐批处理的混合负载。
AnalyticDB for MySQL数仓版主要用来处理高性能在线分析场景的数据。随着数据规模的暴增和数据格式的多样化,通常需要离线处理ETL前,先对数据进行加工规整。AnalyticDB for MySQL新推出的湖仓版新增了高吞吐离线处理能力,通过一体化的方式解决离线处理和在线分析两种场景的需求,恰好可以解决该问题。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
阿里云自主研发的云原生数据仓库,具有高并发读写、低峰谷读写、弹性扩展、安全可靠等特性,可支持PB级别数据存储,可广泛应用于BI、机器学习、实时分析、数据挖掘等场景。包含AnalyticDB MySQL版、AnalyticDB PostgreSQL 版。