前言
阿里云云原生数据仓库AnalyticDB MySQL版是基于湖仓一体架构打造的实时数仓,高度兼容MySQL、支持毫秒级更新、亚秒级查询。是业界性能全球第一(TPC- DS 10TB)的云数据仓库产品。
无论是数据湖中的非结构化或半结构化数据,还是数据库中的结构化数据,企业都可使用AnalyticDB MySQL版构建数据分析平台,完成高吞吐离线处理和高性能在线分析,快速将企业的关键指标实时可视化展示,完成高吞吐离线处理和高性能在线分析的同时,实现降本增效。
AnalyticDB MySQL湖仓版可无缝替换,CDH/TDH/Databricks/Presto/Spark/Hive等。
🎉 🎉 🎉2023年10月份以来湖仓版ACU(1C4G)单价全面下调23%160元/月下降到 140元/月0.37元/小时下降到 0.3元/小时
具体福利详见文末!
产品介绍
随着业务客户数增长、业务复杂度变高、存量数据积累等原因,数据规模从GB级增长到接近PB级,数据格式也从TP数据源为主的结构化数据,增加了很多半结构化(JSON等)、非结构化数据。客户通常会先在数据湖中做离线处理,对数据进行清洗、过滤、规整等预处理,再通过数据同步工具,将数据同步到数据仓库AnalyticDB中做在线分析。
数据一旦在多个系统间进行同步,就难免会因为数据同步工具的稳定性,带来数据一致性、时效性、数据冗余等问题。比如「数据工程师」在数据湖中看到的ADS表,和「数据分析师」在数据仓库中看到的ADS表的数据可能是不一样的。
阿里云数据仓库AnalyticDB MySQL版针对目前数据仓库和数据湖割裂的体系导致体验、系统复杂度、数据一致性和成本等各方面的挑战,在AnalyticDB MySQL作为数据仓库的基础上推出了AnalyticDB MySQL湖仓版,帮助客户可以同时使用数据仓库和数据湖中的数据自由平衡性价比,并且保持全过程同一体验和数据一致性。
阿里云数据仓库AnalyticDB版湖仓版在数仓版的能力基础上,从数据的采集、存储、计算和应用等方面做了全面的升级。湖仓版是基于计算存储分离架构打造的,同时具备低成本离线处理和高性能在线分析能力的湖仓一体版本,提供将源端数据实时同步到湖(Hudi on OSS)或仓(C-Store)的可视化配置能力。通过底层存储的一份全量数据,来支持离线和在线两种场景,避免因数据同步产生的数据一致性和时效性等问题。计算层支持标准接口的多语言可编程计算引擎Spark。同时湖仓版提供离线业务与在线业务的计算资源物理隔离的能力,能实现计算资源和存储资源按需弹性扩容。
下图是AnalyticDB MySQL湖仓版的技术架构图:
湖仓版支持从RDS/SLS/Kakfa等不同的数据源采集数据,让数据方便地进入湖仓存储。在存储和计算层,湖仓版同时支持自研引擎(「羲和计算引擎」和「玄武存储引擎」)和开源引擎(「Spark计算引擎」和「Hudi存储格式」),一方面借助开源的能力提供更丰富的数据分析场景,另一方面打通了自研和开源之间的互相访问,提供更一体化的体验。做深自研:融合引擎满足多种场景
存储层:只需一份全量数据,满足离线在线场景
离线场景和在线场景对数据存储的诉求不一致,如何让一份全量数据同时实现高性能在线分析和低成本离线处理,是一大挑战。在线分析场景希望数据尽量在高性能存储介质上提高性能,离线处理希望数据尽量在低成本存储介质上降低存储成本。
为此,湖仓版首先将一份全量数据存在低成本高吞吐存储介质上,低成本离线处理场景直接读写低成本存储介质,降低数据存储和数据IO成本,保证高吞吐;其次将实时数据存在单独的存储IO节点(EIU)上,保证「行级」的数据实时性,同时对全量数据构建索引,并通过Cache能力对数据进行加速,满足百ms级高性能在线分析场景。
湖仓版的「一份数据」方案,很好地解决了因为数据同步带来的数据一致性和数据时效性问题。
计算层:融合计算引擎
在计算层,自研的「羲和计算引擎」MPP模式用来支撑数据的高性能在线分析。但这种流式计算模式并不适合离线处理低成本和高吞吐的特点。因此,湖仓版在「羲和分析计算引擎」中新增加了BSP模式,通过DAG进行任务切分,分批调度,满足有限资源下大数据量计算,支持计算数据落盘。进一步,由于考虑到MPP模式和BSP模式对普通用户存在较高的理解和学习成本,「羲和计算引擎」被升级成「羲和融合计算引擎」,同时提供MPP模式和BSP模式,并计划提供自动切换能力。
极致弹性:千核秒级弹性能力,完美贴合业务负载
云原生的最大优势就是弹性,湖仓版具备弹得起、弹得快和弹得好三个特点,贴合业务负载,保证查询性能。弹得起是指通过神龙+ECS/ECI构建的两层管控底座,提供更充足的库存保证,资源交付率超过95%;弹得快是通过资源池化、缓存加速等技术,弹性启动效率在10s内;弹得好是提供不同的弹性模型,满足客户的分时弹性和按需灵活弹性的业务场景。湖仓版在9月份推出了新的计算弹性模型Multi-Cluster,该弹性模型作用在AnalyticDB MySQL在线资源组内部,一个在线资源组由一个或者多个Cluster组成,相比普通在线资源组,在易用性、性能和成本上均有了较大提升,可有效应对查询的高并发实时分析场景。拥抱开源:相比开源性能提升2.7倍
阿里云数据库仓库AnalyticDB MySQL湖仓版积极拥抱开源,满足已经生长在开源生态上的客户可以更平滑地使用湖仓版。外表类型,在Parquet/ORC/JSON/CSV等Append类型数据格式的基础上,新增支持批量更新的Hudi数据格式,帮助用户更好地低成本接入如CDC等数据。计算引擎,在做深「羲和融合计算引擎」的基础上,新增开源活跃度较高的Spark引擎,满足用户对于复杂离线处理和ML机器学习等需求。 AnalyticDB MySQL湖仓版提供了全托管的Spark能力,同开源Spark相比,具备如下优势:
● 平滑迁移:采用开源Spark内核,接口和功能100%兼容;
● 性能:通过数据缓存、向量化执行、下推优化等,相比开源同版本,10TB TPC-H测试场景下性能提升2.7倍;
● 成本:提交Spark Job才会触发资源的申请,满足业务波峰波谷对资源弹性的需求,降低资源成本;
● 高效入仓:使用Storage API替代传统JDBC方式,入仓速度提升5倍;
● 生态增强:提供开箱即用的Notebook能力,当前支持SQL/Python/Scala语言来满足不同工程师的开发需求。拥抱开源不仅仅是简单集成Spark/Hudi/Delta等开源引擎,还包括湖仓库表元数据管理,以便多引擎共享,为此AnalyticDB还提供了统一元数据服务管理湖仓库表元数据,湖仓中的元数据/权限可互通,不同引擎可自由访问湖仓数据而无需重复创建元数据。对于湖仓数据,为屏蔽底层数据存储格式的差异,便于第三方引擎集成,AnalyticDB提供了面向内存列存格式Arrow的Lakehouse API服务,提供统一的读写能力,满足业务对仓存储有大吞吐的诉求,对于仓存储已经通过Arrow格式完成Spark引擎对接。
优势总结
阿里云数据库仓库AnalyticDB MySQL湖仓版的优势可以用程序员最熟悉的数字「1024」进行总结。
1: 是指一份数据,避免数据同步带来的数据一致性、时效性、冗余等问题;
0: 是指灵活弹性,用Serverless的方式贴合业务负载,保证查询性能,降低资源成本;
2: 是指湖仓版同时满足低成本离线处理和高性能在线分析;
4: 是指4个统一,统一计费单位、统一数据管道、统一数据管理、统一数据访问。
近期大降价福利
云原生数据仓库AnalyticDB MySQL版(湖仓版),2023年10月开始,ACU(1C4G)单价全面下调23%:➠ 包年包月ACU单价 从160元/月下降至140元/月➠ 按量付费ACU单价 从0.37元/小时下降至0.3元/小时新版定价请点击文末「阅读原文」查看湖仓版3.0定价文档,如有疑问,欢迎入群咨询,钉钉搜索群号:33600023146
了解更多
👇👇👇
推荐阅读
点击 阅读原文 即可查看 湖仓版3.0定价文档