湖仓一体架构的理解

本文涉及的产品
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 近日因公司业务问题,突发兴致,想了解一下数仓及相关架构,恰逢阿里云有湖仓一体架构的直播,遂听之,但是直播内容讲的比较浅,于是深入了解之,并记录如下个人所得笔记,如有偏驳,后续改之.

近日因公司业务问题,突发兴致,想了解一下数仓及相关架构,恰逢阿里云有湖仓一体架构的直播,遂听之,但是直播内容讲的比较浅,于是深入了解之,并记录如下个人所得笔记,如有偏驳,后续改之.

概述

湖仓一体架构是针对数据存储的一种架构,主要还是针对企业级系统大数据存储及治理的一种机构.

发展

湖仓一体的架构是第三代演变的架构

  1. 第一代: 纯粹的数据仓库
  2. 第二代: 两层的湖仓一体,数据湖还是数据湖,数据仓还是数据仓,只是简单的融合在一起,运营系统的数据进入数据湖,数仓从湖中提取数据ETL后,再次存入数据湖,供给业务系统使用.
  3. 第三代: 湖仓一体,湖中建仓,在当前的架构中其实是将数仓的功能融合到了数据湖中,让数据湖拥有数仓的功能

理解

湖仓一体(LakeHouse)出现的原因

我们先来了解一下数据仓库和数据湖的概念

数据仓库

如果做过几年业务系统开发的开发童鞋一定深有体会,随着业务系统访问量和运行时间的增加,数据量级也随之增长,此时如果我们开发一个新的系统需要用到多个业务系统的数据,该如何操作?

如果多个业务系统分属不同数据库,甚至不同平台的数据库,比如Mysql/Oracle/MongoDB/PG,怎么才能关联到一起?

这时候就出现了第一代的数据仓库,概念也是很顺理成章,将各个数据库的数据抽取/转化/加载到一个大的数据库不就行了.

这里的一个大的数据库就是数据仓库(Data Warehouse),简称DW

数据抽取/转化/加载的过程就称为ETL

数据湖

数据仓库已经解决了大部分的数据问题,为什么还要数据湖?

数据仓库只能存储结构化的数据,可以理解为数据仓库就是一个大号的关系型数据库,那么数仓只能存储结构化数据.

而我们业务系统中其实还有很多非结构化的数据,比如日志,图片/语音/视频等文件等等,这种数据没办法按一个结构去存储,可是某些情况下我们还是需要对这些数据进行分析的,比如推荐算法需要通过对用户浏览/点击的日志分析对应用户的需求,进而给用户推送推荐商品,这个时候数仓就不能满足我们的需求了.

这也从侧面说明了一个问题: 在当前时代,数据是有价值的.

我们需要将业务系统的所有数据都存储到一个地方,这个地方既能存储结构化的数据,也能存储非结构的数据,这样我们就能随时从这个地方获取我们想要的数据进行一些操作.

这个地方就是数据湖(Data Lake)

个人理解: 数据湖就是我们不管是什么样的数据,不管当前对我们有用没用,先存储进去,万一后面有用呢.

数据湖的特点: 能存储任意数据,解决数据孤岛问题,容易出现数据沼泽问题.

ps:

  1. 数据孤岛: 各个业务系统数据并不相通,每个业务系统都自己搞自己的业务数据,即使他们的数据可能存在互通之处,不进行也无法进行交流沟通.
  1. 举例: 某公司有三个业务系统,每个业务系统都存储了一份自己的单位/员工信息,即使这份信息其实是一样,当某一个系统的单位/员工信息修改后,其他系统并不会随之修改,互不影响,就像孤岛一样
  1. 数据沼泽: 数据湖由于可以存储任意数据,因此所有业务系统都往里面扔数据,但不进行数据治理,导致数据湖的数据越来越多,越来越杂乱,最终形成一个杂乱不堪的数据集,无法从中获取有效数据.

数据湖使用的正确姿势:

可以联想一下我们现实生活中的湖泊,上游有水进入湖泊,湖泊有下游流出,并进入到各个河流

数据湖也是一样的,上游业务系统存储进入数据,数据在数据湖中经过治理处理后,进入到下游的各个业务系统中,然后各个业务系统再形成新的数据存储入数据湖,周而复始,形成良性循环,让数据产生更多的价值

原因

简单了解了数据湖和数仓的概念后,我们再来了解湖仓一体

湖仓一体出现的原因个人理解很简单: 数仓具有数据湖没有的功能,他俩需要形成互补,互补的结果就是湖仓一体.

数仓的存储成本较高,在一类业务上的数据分析处理更加优秀

数据湖的存储成本较低,主要针对异构的数据挖掘

这么一结合不就搞定了很多问题,举例: 湖仓一体支持数据在数仓和数据湖之间流动,可以将最近要分析的某类数据从数据湖中提取到数仓中进行更好的分析,也可以将数仓中暂时用不到的数据转入数据湖进行低成本存储,降低成本.

并且湖仓一体提供了统一的元数据,减少了第二代双层湖仓一体的ETL工作,也相当于减少系统的复杂度,将系统的稳定性下沉.

思考

湖仓一体架构应该是一种针对数据存储/分析/处理的一整套服务方案的集合,越做开发其实越能体会到数据量的增长,多个系统间数据的交互其实才是面临的最大问题,普通的增删改查其实没有任何难度可言,只有这种系统层面的问题才是真正难以解决的.

即使有了湖仓一体的思想和理念,但是如何实现也存在很多问题,目前暂时没有太多头绪,希望后续能在大厂的相关实践中找到答案!

相关实践学习
阿里云云原生数据仓库AnalyticDB MySQL版 使用教程
云原生数据仓库AnalyticDB MySQL版是一种支持高并发低延时查询的新一代云原生数据仓库,高度兼容MySQL协议以及SQL:92、SQL:99、SQL:2003标准,可以对海量数据进行即时的多维分析透视和业务探索,快速构建企业云上数据仓库。 了解产品 https://www.aliyun.com/product/ApsaraDB/ads
目录
相关文章
|
4月前
|
存储 SQL 监控
数据中台架构解析:湖仓一体的实战设计
在数据量激增的数字化时代,企业面临数据分散、使用效率低等问题。数据中台作为统一管理与应用数据的核心平台,结合湖仓一体架构,打通数据壁垒,实现高效流转与分析。本文详解湖仓一体的设计与落地实践,助力企业构建统一、灵活的数据底座,驱动业务决策与创新。
|
6月前
|
负载均衡 算法 关系型数据库
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
本文聚焦 MySQL 集群架构中的负载均衡算法,阐述其重要性。详细介绍轮询、加权轮询、最少连接、加权最少连接、随机、源地址哈希等常用算法,分析各自优缺点及适用场景。并提供 Java 语言代码实现示例,助力直观理解。文章结构清晰,语言通俗易懂,对理解和应用负载均衡算法具有实用价值和参考价值。
大数据大厂之MySQL数据库课程设计:揭秘MySQL集群架构负载均衡核心算法:从理论到Java代码实战,让你的数据库性能飙升!
|
5月前
|
存储 SQL 分布式计算
19章构建企业级大数据平台:从架构设计到数据治理的完整链路
开源社区: 贡献者路径:从提交Issue到成为Committer 会议演讲:通过DataWorks Summit提升影响力 标准制定: 白皮书撰写:通过DAMA数据治理框架认证 专利布局:通过架构设计专利构建技术壁垒
|
8月前
|
SQL 缓存 分布式计算
vivo 湖仓架构的性能提升之旅
聚焦 vivo 大数据多维分析面临的挑战、StarRocks 落地方案及应用收益。 在 **即席分析** 场景,StarRocks 使用占比达 70%,查询速度提升 3 倍,P50 耗时从 63.77 秒缩短至 22.30 秒,查询成功率接近 98%。 在 **敏捷 BI** 领域,StarRocks 已完成 25% 切换,月均查询成功数超 25 万,P90 查询时长缩短至 5 秒,相比 Presto 提升 75%。 在 **研发工具平台** 方面,StarRocks 支持准实时数据查询,数据可见性缩短至 3 分钟,查询加速使 P95 延迟降至 400 毫秒,开发效率提升 30%。
vivo 湖仓架构的性能提升之旅
|
2月前
|
存储 分布式计算 资源调度
【赵渝强老师】阿里云大数据MaxCompute的体系架构
阿里云MaxCompute是快速、全托管的EB级数据仓库解决方案,适用于离线计算场景。它由计算与存储层、逻辑层、接入层和客户端四部分组成,支持多种计算任务的统一调度与管理。
274 1
|
2月前
|
存储 人工智能 关系型数据库
阿里云AnalyticDB for PostgreSQL 入选VLDB 2025:统一架构破局HTAP,Beam+Laser引擎赋能Data+AI融合新范式
在数据驱动与人工智能深度融合的时代,企业对数据仓库的需求早已超越“查得快”这一基础能力。面对传统数仓挑战,阿里云瑶池数据库AnalyticDB for PostgreSQL(简称ADB-PG)创新性地构建了统一架构下的Shared-Nothing与Shared-Storage双模融合体系,并自主研发Beam混合存储引擎与Laser向量化执行引擎,全面解决HTAP场景下性能、弹性、成本与实时性的矛盾。 近日,相关研究成果发表于在英国伦敦召开的数据库领域顶级会议 VLDB 2025,标志着中国自研云数仓技术再次登上国际舞台。
328 0
|
3月前
|
SQL 存储 监控
流处理 or 批处理?大数据架构还需要流批一体吗?
简介:流处理与批处理曾是实时监控与深度分析的两大支柱,但二者在数据、代码与资源上的割裂,导致维护成本高、效率低。随着业务对数据实时性与深度分析的双重需求提升,传统架构难以为继,流批一体应运而生。它旨在通过逻辑、存储与资源的统一,实现一套系统、一套代码同时支持实时与离线处理,提升效率与一致性,成为未来大数据架构的发展方向。
|
4月前
|
消息中间件 分布式计算 大数据
“一上来就搞大数据架构?等等,你真想清楚了吗?”
“一上来就搞大数据架构?等等,你真想清楚了吗?”
97 1
|
5月前
|
架构师 Oracle 大数据
从大数据时代变迁到数据架构师的精通之路
无论从事何种职业,自学能力都显得尤为重要。为了不断提升自己,我们可以尝试建立一套个性化的知识目录或索引,通过它来发现自身的不足,并有针对性地进行学习。对于数据架构师而言,他们需要掌握的知识领域广泛而深入,不仅包括硬件、网络、安全等基础技术,还要了解应用层面,并熟练掌握至少一门编程语言。同时,深入理解数据库技术、具备大数据实操经验以及精通数据仓库建模和ELT技术也是必不可少的。只有这样,数据架构师才能具备足够的深度和广度,应对复杂的业务和技术挑战。 构建个人知识体系是数据架构师在学习和工作中的一项重要任务。通过系统化、不断深化的知识积累,数据架构师能够有效应对快速变化的商业环境和技术革新,进一
|
7月前
|
SQL 分布式数据库 Apache
网易游戏 x Apache Doris:湖仓一体架构演进之路
网易游戏 Apache Doris 集群超 20 个 ,总节点数百个,已对接内部 200+ 项目,日均查询量超过 1500 万,总存储数据量 PB 级别。
627 3
网易游戏 x Apache Doris:湖仓一体架构演进之路