数仓架构的持续演进与发展 — 云原生、湖仓一体、离线实时一体、SaaS模式

本文涉及的产品
云原生大数据计算服务 MaxCompute,5000CU*H 100GB 3个月
云原生大数据计算服务MaxCompute,500CU*H 100GB 3个月
简介: 数据仓库概念从1990年提出,经过了四个主要阶段。从最初的数据库演进到数据仓库,到MPP架构,到大数据时代的数据仓库,再到今天的云原生的数据仓库。在不断的演进过程中,数据仓库面临着不同的挑战。

作者 张良模 阿里云智能资深产品专家

image.png

谈到数据仓库,我们往往容易忽略“数据”两个字,阿里云有着很多业务场景和业务体系,在这些数据应用之下我们如何管理数据的呢?数据仓库是如何帮到我们以及它自身是如何演进的?


数据仓库概念从1990年提出,经过了四个主要阶段。从最初的数据库演进到数据仓库,到MPP架构,到大数据时代的数据仓库,再到今天的云原生的数据仓库。在不断的演进过程中,数据仓库面临着不同的挑战。

image.png

第一 启动成本高、建设周期长,价值难以快速验证

对于数仓的建设人员,面临的挑战是业务人员希望数仓建设周期能更短。而传统数据仓库往往要面临从采购服务器,建立物理仓库到逻辑仓库等一个较长的周期,所以数据仓库面临的第一个挑战就是怎样去降低建设周期。

 

第二 如何处理多样数据,拥抱新技术,充分挖掘数据价值

随着大数据的到来,传统数据仓库管理的大多是结构化数据。如何对半结构化的数据进行统一全面的管理就成为传统数据仓库面临的第二个挑战。

 

第三 难以共享企业数据资产、数据创新成本高

数据仓库更加强调管理和安全,在强调安全的情况下如何在组织里以及整个生态上下游中更好的共享和交换数据,成为了新的挑战。例如在企业的部门间或业务间依然存在为数不少的数据孤岛,数据共享成本高,缺乏企业级别的统一的数据获取出口,由此导致数据消费方获取数据困难,难于自助分析,严重依赖IT部门支持来满足企业更广泛的数据需求。

 

第四 平台架构复杂、运营成本高

随着数据处理种类的多样化和数据量的不断变大,不同的技术被叠加在一起从而使得数据仓库架构变得越发复杂。同一企业里往往会同时存在各种技术类型的数据仓库。所以如何简化数据仓库的架构也是面临的一个重要挑战。一般需要投入专业团队负责管理复杂的数据平台,同时对资源利用率不高的情况进行管理和治理。

 

第五 满足业务需要的扩展性、弹性、灵活性

业务快速发展的企业,经常会有大促活动,补数据,处理非常规事件的需求,如何快速扩展数仓性能,提高业务峰谷的响应时效,也带来很多挑战。


对于传统数据仓库面临的这些挑战,在技术和业务的驱动下新型数据仓库如何应对呢?这里可以看到六个主要的驱动力。

image.png


   第一 我们希望有一个统一的数据平台,能去连接,去存储和处理多种数据。

   第二 实时化,企业基于数据驱动能实时对业务作出支撑和决策的信息,这里有更高时效性的要求。

   第三 数据量变得非常庞大,在海量数据中如何找到想要的数据,就需要有一张地图,要对数据进行管理和治理。

   第四 传统数据仓库中,数据的存储采用集中的方式,一定要把数据集中在同一个存储中。而在新的业务驱动下,需要去连接数据而不是统一存储在一起。

  第五 数据仓库之上如何支持更多智能化的应用,信息化的业务以及业务的信息化等关系。这就是数仓智能化和智能化数仓的需求驱动力。

  第六  数据领域的不同角色对数据平台有着不同需求。例如数据工程师,数据分析人员,数据科学家等,他们对数据平台的响应时间,处理速度,数据量,开发语言等有着不同的需求。所以更多的做好分析服务,成为数据管理平台第六个驱动力。


据仓库在不断地演进过程中,从30年前的概念来看已经注入了更多新的内涵。对于新的内涵,我们可以从数据仓库的基础架构,数据架构,数据分析以及服务模型四个角度来明显看到云原生,湖仓一体,离线实时一体化、服务模型的SAAS化的演进趋势。


云原生 — 数仓基础架构的演进方向


云原生是数仓基础架构的一个基本的演进方向。传统数据仓库是基于物理服务器或云上托管服务器的模式。而云原生的情况下可以更多去应用云的基础服务,包括存储服务,网络服务以及更多的监控服务。这就意味着在云上用原生服务可以获得云的自服务、弹性等能力,云数仓就可以更好的去集成更多的云上服务,包括如何把日志数据从各种数据源抽取到数据仓库中,也包括如何进行全链路的数据管理和机器学习等。所以云原生往往包含了如何构建和如何与云上服务原生的集成。

image.png


如图,云原生的情况下在底层充分利用了云的弹性计算,存储以及安全能力。在此之上可以看到我们把所有云的复杂性都屏蔽掉,作为数据平台的用户,只需开通服务,通过web方式创建项目空间,五分钟开通一个数据仓库进行数据仓库后面模型的开发。大大简化了服务交付的周期以及数据仓库整个底层架构,技术架构构建过程。另一方面是云原生数仓的扩展性,不管你提交了一个只需要1CU的作业还是提交一个可能需要10000CU的作业,平台都会按你的需要调度资源来进行数据处理。所以云原生又给我们带来近乎无限的扩展性。


湖仓一体 — 数仓数据架构的演进方向


讲到湖仓一体,先来看湖仓一体背后的原因。不得不说到今天为止数据仓库仍然是企业管理数据最优的解决方案。各个企业大都有自己的数据仓库,只不过可能是基于不同的技术形态构建的数据仓库。在处理策略,对语义的支持上,对场景的优化上以及工程经验上,数据仓库是目前沉淀下来的一个最优的方案。在此之上,企业数据量越来越大,需要更灵活更敏捷的数据探索能力。同时,对未知数据存在先存储下来再进一步探索的诉求。由此,企业在架构上需要融合数据分析的最优化和可探索两个方面的优势,从处理策略到语义支持,以及使用案例上,数据仓库和数据湖分别带给企业不同的优势。数据仓库在易管理,数据质量高,而数据湖在可探索,灵活性强方面为我们带来优势。我们要思考和讨论如何将两种方式结合起来共用,这就是提出“湖仓一体”的背景。

image.png

MaxCompute以数据仓库为主的场景下,将数据仓库对数据管理的最优工程经验,管理经验和数据湖对数据管理的灵活性,数据处理的灵活性更好的结合在一起, 2019年我们在全球率先提出了“湖仓一体”的全新数据管理架构。基于MaxCompute数据仓库来提供安全可靠的,结构化的数据管理方式,以及在此之上由DataWorks提供数据血缘,数据地图和数据治理等能力。这些能力如何延伸到数据湖中?今天我们可见的数据湖包括基于云上的对象存储OSS,也包含企业中基于Hadoop HDFS的数据湖,对于这两类数据湖如何基于已有的灵活性能够获得更容易探索能力,能提升它们得数据处理性能,管理能力和安全性?

 

我们所做的就是把数据仓库和数据湖两者打通,通过数据湖构建DLF,发现数据湖的元数据,进行结构化的统一管理,融合湖的灵活和便捷优势。这就是以仓为中心的湖仓一体新型数据管理的架构,数据仓库在企业数据的管理方式上往前又推进了一步。

image.png


离线实时一体 — 数仓数据分析的演进方向


在企业的数据仓库中,通过SLSKafka等订阅的方式进行数据采集,通常有三种路径。第一种可能是将一部分数据归档在数据仓库中,然后进行全量的分析。第二种是进行实时的查询分析,比如风控场景下查一个电话号码过去三年的通话记录,要马上查出来,就需要进行实时的连接分析。第三种是进行一些关联的多维度查询,对这些实时数据等进行关联的基础上,后面再来进行批量的处理,实时处理以及点查。实时数据的获取,计算以及应用这三方面,构成了整个数仓由离线向实时发展的三个核心含义。这里最核心的就是计算。计算的本质无外乎两个,一个是主动计算,另一个是被动计算。离线计算往往是被动计算,需要数仓工程师通过定义任务来调度作业,才能计算出新的结果。在实时离线一体化中,除了被动计算,还要有主动计算能力。当数据流入后,不做人工干预,任何作业的插入和重启都能自动算出新的结果或中间结果。参与实时计算就最大程度的增加了主动计算的过程,而主动的结果带给我们的好处就是无需重新调度任何作业就能拿到想要的结果数据。

image.png


在离线和实时一体的情况下虽然可以解决业务上的一些问题,但架构会非常复杂。所以阿里云提出离线实时一体化的数仓架构。简化是说我们只需要核心的几个产品,就可以实现离线和实时一体化的架构。数据源包括了交易数据以及各个服务器生成的人的行为数据和物的行为数据,通过日志服务,定期归档到Hologres,之后,实时数仓加上流计算来进行实时计算,然后在下面是全量的数仓,整个完成了主动计算、被动计算和数据的实时获取。结果数据可以不用做任何搬迁,直接通过Hologres来做实时分析。将实时的数据获取,实时的数据计算和实时的数据分析服务三者打通为一体,架构上做了最大程度的简化,这就是今天所说的离线实时一体化的云数据仓库。


SaaS模式 — 数仓服务模式的演进方向


基于数仓基础架构、数据管理架构、数据分析架构的演进,这些产品的服务是如何被交付的呢?那就是通过SaaS化的方式向客户来交付数据仓库,可以最简化的去使用数据仓库的服务。

image.png


数据仓库的构成有几种方式,第一种是说基于物理服务器自建数据仓库,这是大家最为熟悉的方式。第二种是在云上基于Hadoop,也可以基于各种MPP的数据库去构建和搭建半托管的云上数据仓库。第三种和第四种就属于比较深的云原生的形式,第三种是典型Snowflake的方式,这种方式下云基础服务其实并不会暴露给数据仓库的管理者,所以我们把它叫做嵌入式的,将IaaS这一层嵌入到PaaS层中,但最终数据仓库是通过SaaS的完全web的方式暴露出来的。2021年全球Forrester评测中有13家厂商参与了评估,其中以SaaS模式交付数据仓库服务的只有三家,分别是谷歌的BigQuerySnowflake和阿里云MaxCompute

image.png

可以看到通过云计算的数据仓库服务,从自建到云原生,帮我们最大化的降低了数据仓库的管理复杂度,整个架构少了很多层,无需管理集群和软件,通过服务化的方式达到免运维,将底层的所有这些需管理的内容去掉,后台升级是由云厂商来提供服务的,只需要管理自己的数据和数据模型,通过web方式来使用数据仓库服务。在数据仓库里存储的数据与云存储一样,按存储量付费。计算也是一样的,不计算不花钱。充分体现了SaaS化的优势。同时,在匹配业务需求上具备非常强的弹性能力,我们有很多客户日常只需要一万核的算力,在双十一当天需要三万核的算力。在这种SaaS模式的服务下,用户在完全无感知的情况下我们就可以保证充沛的弹性能力去满足数据仓库的各种工作需求了。

image.png

综上,数据仓库从1990年的数据库演进到数据仓库,到MPP架构,到大数据时代的数据仓库,再到今天的云原生的数据仓库的一路演进,基础架构的云原生,数据架构的湖仓一体,数据分析的离线实时一体化以及数仓服务模式的SaaS化,是最为主要的四个演进的方向和特征。 阿里云正在通过全新数据仓库架构给企业带来具备更优体验的数据管理的方式。


MaxCompute 产品官网 >>


更多关于大数据计算、云数仓技术交流,可扫码加入 “MaxCompute开发者社区” 钉钉群

4444.png






相关实践学习
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,实现湖仓分离向湖仓一体架构升级
|
3月前
|
Cloud Native 安全 大数据
云原生与大数据
【8月更文挑战第27天】云原生与大数据
60 5
|
1月前
|
分布式计算 大数据 Serverless
云栖实录 | 开源大数据全面升级:Native 核心引擎、Serverless 化、湖仓架构引领云上大数据发展
在2024云栖大会开源大数据专场上,阿里云宣布推出实时计算Flink产品的新一代向量化流计算引擎Flash,该引擎100%兼容Apache Flink标准,性能提升5-10倍,助力企业降本增效。此外,EMR Serverless Spark产品启动商业化,提供全托管Serverless服务,性能提升300%,并支持弹性伸缩与按量付费。七猫免费小说也分享了其在云上数据仓库治理的成功实践。其次 Flink Forward Asia 2024 将于11月在上海举行,欢迎报名参加。
176 1
云栖实录 | 开源大数据全面升级:Native 核心引擎、Serverless 化、湖仓架构引领云上大数据发展
|
1月前
|
存储 SQL 分布式计算
湖仓一体架构深度解析:构建企业级数据管理与分析的新基石
【10月更文挑战第7天】湖仓一体架构深度解析:构建企业级数据管理与分析的新基石
63 1
|
1月前
|
存储 SQL 缓存
Apache Doris 3.0 里程碑版本|存算分离架构升级、湖仓一体再进化
从 3.0 系列版本开始,Apache Doris 开始支持存算分离模式,用户可以在集群部署时选择采用存算一体模式或存算分离模式。基于云原生存算分离的架构,用户可以通过多计算集群实现查询负载间的物理隔离以及读写负载隔离,并借助对象存储或 HDFS 等低成本的共享存储系统来大幅降低存储成本。
Apache Doris 3.0 里程碑版本|存算分离架构升级、湖仓一体再进化
|
4月前
|
数据采集 运维 Cloud Native
Flink+Paimon在阿里云大数据云原生运维数仓的实践
构建实时云原生运维数仓以提升大数据集群的运维能力,采用 Flink+Paimon 方案,解决资源审计、拓扑及趋势分析需求。
18507 54
Flink+Paimon在阿里云大数据云原生运维数仓的实践
|
3月前
|
SQL 分布式计算 关系型数据库
实时数仓 Hologres操作报错合集之指定主键更新模式报错主键数据重复,该如何处理
实时数仓Hologres是阿里云推出的一款高性能、实时分析的数据库服务,专为大数据分析和复杂查询场景设计。使用Hologres,企业能够打破传统数据仓库的延迟瓶颈,实现数据到决策的无缝衔接,加速业务创新和响应速度。以下是Hologres产品的一些典型使用场景合集。
|
3月前
|
存储 运维 Cloud Native
"Flink+Paimon:阿里云大数据云原生运维数仓的创新实践,引领实时数据处理新纪元"
【8月更文挑战第2天】Flink+Paimon在阿里云大数据云原生运维数仓的实践
277 3
|
5月前
|
存储 数据采集 数据挖掘
“湖仓一体架构及其应用”写作框架,系统架构设计师
随着5G、大数据、人工智能、物联网等技术的不断成熟,各行各业的业务场景日益复杂,企业数据呈现出大规模、多样性的特点,特别是非结构化数据呈现出爆发式增长趋势。在这一背景下,企业数据管理不再局限于传统的结构化OLTP(On-Line Transaction Processing)数据交易过程,而是提出了多样化、异质性数据的实时处理要求。传统的数据湖(Data Lake)在事务一致性及实时处理方面有所欠缺,而数据仓库(Data Warehouse)也无法应对高并发、多数据类型的处理。因此,支持事务一致性、提供高并发实时处理及分析能力的湖仓一体(Lake House)架构应运而生。湖仓一体架构在成本、
124 2
|
5月前
|
Cloud Native 数据管理 OLAP
云原生数据仓库AnalyticDB产品使用合集之是否可以创建表而不使用分区
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
405 2
云原生数据仓库AnalyticDB产品使用合集之是否可以创建表而不使用分区

相关产品

  • 云原生大数据计算服务 MaxCompute