AnalyticDB MySQL升级为湖仓一体架构:从湖到仓,打造云原生一站式数据分析平台

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: AnalyticDB MySQL湖仓版同时支持低成本离线处理和高性能在线分析,适合ETL/BI报表/交互式查询/APP应用等多场景,并可无缝替换CDH/TDH/Databricks/Presto/Spark/Hive等

【先打一波小广告】

阿里云AnalyticDB MySQL升级为湖仓一体架构,支持高吞吐离线处理和高性能在线分析,可无缝替换CDH/TDH/Databricks/Presto/Spark/Hive等。试用活动(5000ACU时+100GB存储)正在火热申请中,申请链接:https://free.aliyun.com/?searchKey=AnalyticDB%20MySQL,群号:33600023146



前言

云原生数据仓库产品AnalyticDB MySQL数仓版,是阿里云基于集团电商双11业务百亿次在线分析的最佳实践,推出的业界首款兼容MySQL协议,且性能全球第一(TPC-DS 10TB)的云数据仓库产品。企业只需要招一些具备SQL技能的数据分析师,搭配上一个QuickBI/DataV/自研可视化报表,就可以快速将企业的关键指标实时可视化展示,帮助企业转型成数据驱动决策的公司。


业务挑战:数据一致性和时效性较差

跟客户一起进行业务创新的过程中,我们发现随着业务客户数增长、业务复杂度变高、存量数据积累等原因,数据规模从GB级增长到接近PB级,数据格式也从TP数据源为主的结构化数据,增加了很多半结构化(JSON等)、非结构化数据。客户通常会先在数据湖中做一次离线处理,对数据进行清洗、过滤、规整等预处理,再通过数据同步工具,将数据同步到数据仓库AnalyticDB中做在线分析。

数据一旦在多个系统间进行同步,就难免会因为数据同步工具的稳定性,带来数据一致性、时效性、数据冗余等问题。比如「数据工程师」在数据湖中看到的ads表,和「数据分析师」在数据仓库中看到的ads表的数据可能是不一样的。数据的正确性,是数据分析基础中的基础。只有避免数据同步,用「一份数据」同时支撑低成本离线处理和高性能在线分析,才能真正意义上解决数据正确性问题。

今年的云栖大会上(11月4日数据库分论坛),我们重磅推出了经过1年多时间沉淀和打磨的「湖仓版」,来一起看看AnalyticDB产品对于「湖仓一体」的思考和实践。


湖仓版介绍

这是湖仓版的产品大图,橙色部分是「湖仓版」相对于「数仓版」新增的功能,灰色部分是「湖仓版」相对于「数仓版」迭代升级的功能。

左框是我们的自研引擎,包括「羲和计算引擎」和「玄武存储引擎」。右框是我们集成的开源引擎,包括「Spark计算引擎」和「Hudi存储格式」,希望借助开源的能力提供更丰富的数据分析场景。同时打通自研和开源之间的互相访问,提供更一体化的体验。我们先来聊一聊自研引擎如何真正实现基于「一份数据」和「融合引擎」的「湖仓一体」能力

自研引擎:做强核心

存储层:只需一份全量数据,满足离线在线场景

「一份数据」是指一份全量数据。这里的难点是解决既要(高性能在线分析)又要(低成本离线处理)的问题,因为本身这两种场景对于存储的诉求是比较不一致的。在线分析场景希望数据尽量在高性能存储介质上提高性能,离线处理希望数据尽量在低成本存储介质上降低存储成本。

我们给出的解决方案是,首先将一份全量数据存在低成本高吞吐存储介质上,低成本离线处理场景直接读写低成本存储介质,降低数据存储和数据IO成本,保证高吞吐。其次将实时数据存在单独的存储IO节点(EIU)上,保证「行级」的数据实时性,同时对全量数据构建索引,并通过Cache能力对数据进行加速,满足百ms级高性能在线分析场景。

   「湖仓版存储架构图」

湖仓版的「一份数据」方案,很好地解决了因为数据同步,带来的数据一致性和数据时效性问题。


计算层:羲和融合计算引擎,智能选择计算模式

支撑高性能在线分析的背后,计算部分主要是自研的「羲和计算引擎」MPP模式,但这种流式计算模式并不适合离线处理低成本和高吞吐的特点。所以,湖仓版我们在「羲和分析计算引擎」中新增加了BSP模式,通过DAG进行任务切分,分批调度,满足有限资源下大数据量计算,支持计算数据落盘。

但我们觉得MPP模式和BSP模式对于普通用户来说,理解和学习成本太高了,所以我们把「羲和计算引擎」升级成「羲和融合计算引擎」,同时提供MPP模式和BSP模式,并提供自动切换能力。自动切换能力是指当查询使用MPP模式无法在一定耗时内完成时,系统会自动切换为BSP模式进行执行。

极致弹性:千核秒级弹性能力,完美贴合业务负载

云原生的最大优势就是弹性,湖仓版通过全新基于神龙 + ECS/ECI构建的两层管控底座,提供更充足的库存保证,保证弹得起;满足了弹得起,接下去就是要弹得快。如果启动一个离线Query的资源需要10分钟,这样的效率使用体验不好,且会有较大的额外成本。湖仓版除了适合在线分析场景的「分时弹性」模式,新推出了适合离线处理场景的「按需弹性」模式,弹性速度上可以做到1200ACU(1ACU约为1Core4GB)规模的Query,弹性时间在10s左右;最后,借助WorkLoad Manager(WLM)和自感知业务负载技术,保证弹得准,贴合业务负载,降低资源成本。


开源集成:做精场景

自研是打造技术深度的基础,但同时我们积极拥抱开源,满足已经生长在开源生态上的客户可以更平滑地使用湖仓版。外表类型,在Parquet/ORC/JSON/CSV等append类型数据格式的基础上,新增支持批量更新的Hudi数据格式,帮助用户更好地低成本接入如CDC等数据。计算引擎,在做深「羲和融合计算引擎」的基础上,新增开源活跃度较高的Spark引擎,满足用户对于复杂离线处理和ML机器学习等需求。        

优势总结

为了让大家更好地记住湖仓版的优势,我们用程序员最熟悉的数字「1024」进行优势总结。

1:是指一份数据,避免数据同步带来的数据一致性、时效性、冗余等问题;

0:是指灵活弹性,用Serverless的方式贴合业务负载,保证查询性能,降低资源成本;

2:是指湖仓版同时满足低成本离线处理和高性能在线分析;

4:是指4个统一,统一计费单位、统一数据管道、统一数据管理、统一数据访问。这一部分,因为篇幅原因,我们将在下一篇文章中展开介绍。未来展望

今天,我们推出了AnalyticDB MySQL湖仓版,完成了从仓到湖,打造人人可用的云原生一站式数据分析平台的第一步。未来,我们还将在以下几个方面继续打磨和增强:

  • 云原生弹性:
  • 存储提供Serverless单副本模式,降低存储成本,提供更好的弹性能力。
  • 在线分析提供Mutil-Clusters弹性模式,更好地支撑高QPS场景。
  • 自研融合计算引擎:
  • 自适应执行框架:根据运行时信息,更精准地动态调整Plan,提升查询性能。
  • 统一执行模型:在自适应执行框架的基础上,引入Bubble Execution Model来统一执行模型(MPP/BSP),同时Bubble的切分和调度考虑运行时的集群资源和负载特征。降低用户选择执行模型成本,提升查询性能。
  • Spark引擎:
  • 提供交互式开发调试Notebook能力
  • 提供更多的内置Connector连接更多的数据源


免费试用说明

AnalyticDB MySQL湖仓版从2023年1月份开始正式商用,截至目前已有不少商用付费客户。哔哩哔哩,来自B站的陈浩也在云栖大会上分享了猫耳业务使用AnalyticDB湖仓版的价值和过程。“B站猫耳FM业务通过引入阿里云AnalyticDB MySQL湖仓版,替换原有开源离在线数据仓库,大幅降低数据仓库运维成本,并且基于AnalyticDB MySQL的分时弹性能力实现资源按需伸缩,实现资源高效利用。目前,猫耳FM业务实现数据离在线处理效率从原来的在 T+1 或 H+1大幅提升至毫秒级,支撑打赏榜排名实时刷新,提升用户参与积极性,通过提高广播剧的评论/弹幕活跃度,促进用户停留时长与付费转化。”(新华网报道)


🔥目前ADB湖仓版免费试用正在火热进行中!欢迎积极申请试用

  https://free.aliyun.com/?searchKey=AnalyticDB%20MySQL



279


 



 



相关实践学习
AnalyticDB MySQL海量数据秒级分析体验
快速上手AnalyticDB MySQL,玩转SQL开发等功能!本教程介绍如何在AnalyticDB MySQL中,一键加载内置数据集,并基于自动生成的查询脚本,运行复杂查询语句,秒级生成查询结果。
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
相关文章
|
2月前
|
存储 SQL 缓存
快手:从 Clickhouse 到 Apache Doris,实现湖仓分离向湖仓一体架构升级
快手 OLAP 系统为内外多个场景提供数据服务,每天承载近 10 亿的查询请求。原有湖仓分离架构,由离线数据湖和实时数仓组成,面临存储冗余、资源抢占、治理复杂、查询调优难等问题。通过引入 Apache Doris 湖仓一体能力,替换了 Clickhouse ,升级为湖仓一体架构,并结合 Doris 的物化视图改写能力和自动物化服务,实现高性能的数据查询以及灵活的数据治理。
快手:从 Clickhouse 到 Apache Doris,实现湖仓分离向湖仓一体架构升级
|
18天前
|
存储 SQL 缓存
AnalyticDB 实时数仓架构解析
AnalyticDB 是阿里云自研的 OLAP 数据库,广泛应用于行为分析、数据报表、金融风控等应用场景,可支持 100 trillion 行记录、10PB 量级的数据规模,亚秒级完成交互式分析查询。本文是对 《 AnalyticDB: Real-time OLAP Database System at Alibaba Cloud 》的学习总结。
37 1
|
22天前
|
SQL 存储 数据挖掘
快速入门:利用AnalyticDB构建实时数据分析平台
【10月更文挑战第22天】在大数据时代,实时数据分析成为了企业和开发者们关注的焦点。传统的数据仓库和分析工具往往无法满足实时性要求,而AnalyticDB(ADB)作为阿里巴巴推出的一款实时数据仓库服务,凭借其强大的实时处理能力和易用性,成为了众多企业的首选。作为一名数据分析师,我将在本文中分享如何快速入门AnalyticDB,帮助初学者在短时间内掌握使用AnalyticDB进行简单数据分析的能力。
32 2
|
1月前
|
分布式计算 大数据 Serverless
云栖实录 | 开源大数据全面升级:Native 核心引擎、Serverless 化、湖仓架构引领云上大数据发展
在2024云栖大会开源大数据专场上,阿里云宣布推出实时计算Flink产品的新一代向量化流计算引擎Flash,该引擎100%兼容Apache Flink标准,性能提升5-10倍,助力企业降本增效。此外,EMR Serverless Spark产品启动商业化,提供全托管Serverless服务,性能提升300%,并支持弹性伸缩与按量付费。七猫免费小说也分享了其在云上数据仓库治理的成功实践。其次 Flink Forward Asia 2024 将于11月在上海举行,欢迎报名参加。
179 1
云栖实录 | 开源大数据全面升级:Native 核心引擎、Serverless 化、湖仓架构引领云上大数据发展
|
1月前
|
人工智能 自然语言处理 关系型数据库
阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成
近日,阿里云云原生数据仓库 AnalyticDB PostgreSQL 版已完成和开源LLMOps平台Dify官方集成。
|
1月前
|
存储 SQL 缓存
Apache Doris 3.0 里程碑版本|存算分离架构升级、湖仓一体再进化
从 3.0 系列版本开始,Apache Doris 开始支持存算分离模式,用户可以在集群部署时选择采用存算一体模式或存算分离模式。基于云原生存算分离的架构,用户可以通过多计算集群实现查询负载间的物理隔离以及读写负载隔离,并借助对象存储或 HDFS 等低成本的共享存储系统来大幅降低存储成本。
Apache Doris 3.0 里程碑版本|存算分离架构升级、湖仓一体再进化
|
1月前
|
存储 SQL 人工智能
【云栖实录】Hologres3.0全新升级:一体化实时湖仓平台
2024年云栖大会,Hologres 3.0全新升级为一体化实时湖仓平台,通过统一数据平台实现湖仓存储一体、多模式计算一体、分析服务一体、Data+AI 一体,发布 Dynamic Table、External Database、分时弹性、Query Queue、NL2SQL 等众多新的产品能力,实现一份数据、一份计算、一份服务,极大提高数据开发及应用效率。同时,Hologres 的预付费实例年付折扣再降15%,仅需7折,不断帮助企业降低数据管理成本,赋能业务增长。
|
2月前
|
Kubernetes 监控 Cloud Native
Cluster Optimizer:一款云原生集群优化平台
**Cluster Optimizer** 是一款云原生集群优化平台,旨在通过自动化和智能化工具帮助企业降低云成本,解决云原生架构中的成本管理难题。面对资源闲置、配置不当和缺乏自动化优化机制等挑战,Cluster Optimizer能够深入分析云资源、应用和用户行为,精准识别优化机会,并给出具体建议,涵盖节点组、节点、GPU 节点、磁盘、持久卷和应用等多个维度。通过优化实例类型、自动扩缩容和资源分配,帮助企业降低成本、提升性能和效率。[点击此处](https://www.wiseinf.com.cn/docs/setup/) 免费安装和试用 **Cluster Optimizer 社区版**。
96 9
|
8天前
|
SQL 关系型数据库 MySQL
12 PHP配置数据库MySQL
路老师分享了PHP操作MySQL数据库的方法,包括安装并连接MySQL服务器、选择数据库、执行SQL语句(如插入、更新、删除和查询),以及将结果集返回到数组。通过具体示例代码,详细介绍了每一步的操作流程,帮助读者快速入门PHP与MySQL的交互。
23 1
|
10天前
|
SQL 关系型数据库 MySQL
go语言数据库中mysql驱动安装
【11月更文挑战第2天】
25 4

热门文章

最新文章

相关产品

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

    更多