数据库,数据仓库,数据湖,湖仓一体到底是什么区别

昨天结束的一场面试,面试官问了下我对数据仓库和数据湖的理解,根据之前的理解我说了下数据湖是数据仓库某些时候的缓存,然后面试官反问说我确定这个用词对吗?没理解到位,所以去了解之后再整体输出下我自己的理解。

先说下上面的答案,数据仓库和数据湖可以是互相独立存在的,不存在谁是谁的缓存一说,但是如果涉及到湖仓一体的时候,数仓是结构化的数据访问入口,而底层的数据湖是可以作为数仓的底层的存储支持。

要了解各个概念,我们从对应的背景出发,然后我们自己再给出比较严谨的定义。

数据库顾名思义就是我们存储结构化数据的存储系统,面向事务分析的存储系统,我们常见的库存,金钱的存储都是用数据库来实现的,少了一笔钱,多了10件库存啥的;但是,如果你要让数据库去分析为什么最近一个月的库存少了,订单数少了,那他就显得无能为力了。这个时候就需要我们的数据仓库出手了。

数据仓库是面向分析的存储结构化数据的一个存储系统,本质上还是为分析服务的,把客户对应的日志数据和业务数据先存储起来,然后经过各种加工到ads层,供最终的决策分析使用,支持复杂的大规模的数据分析。

那么数据湖又是什么呢?刚刚我们说到的数仓只能存储大量的结构化数据,但是企业发展的时间越来越长,数据量越来越多的情况下,不只是有结构化的数据,对于半结构化和非结构化的数据又该如何存储呢?这个时候就该我们的数据湖隆重登场了,他就是为存储历史的所有结构化,半结构化以及非结构化数据,历史所有的离线的,实时的,外部的,内部的数据而生的,而且是以成本比较低的对象存储为底座去进行数据存储的,支持近乎无限的扩展;

所以从上述两个概念来说,数据湖存储的数据量级和种类比数据仓库更广泛和多样,这样来说,是不是在企业里面我们可以就是用数据湖,不需要数据仓库都可以了;这个是不太行的,因为数据湖存储的是企业的数据的原始形态,不支持即席的数据查询,如果要查询某些指标数据,必须依赖于数据仓库提供的已经计算好的结构化的数据

但是兄弟们可能又会说了,这个是不是数据仓库的最底层可以依赖于数据湖的存储,数据仓库和数据湖用统一的存储底座,让数据仓库专注于处理批数据,而数据湖更多地处理事实的数据,而且数据仓库和数据湖之间的数据可以来回流动,如下所示:
在这里插入图片描述
这个就是最简单的湖仓一体的模型,其实湖仓一体说白了就是一种新型的数据架构,它结合了数据湖(Data Lake)和数据仓库(Data Warehouse)的优势。传统上,数据湖和数据仓库是分离的系统,数据湖用于存储结构化、半结构化和非结构化数据以及一些实时的数据,数据仓库主要用于存储和分析高度结构化的数据

数据库数据仓库湖仓一体是数据存储和管理的不同架构和概念。 数据库(Database)通常指的是关系型数据库管理系统(RDBMS),它主要用于事务性数据的存储和管理。关系型数据库强调数据的结构化存储,数据以行和列的形式存储在表中,并通过严格的模式(schema)定义。数据库主要用于执行日常的业务操作,如增加、查询、更新和删除数据(CRUD操作),并且要求数据的一致性和完整性。 数据仓库(Data Warehouse)是一种用于数据分析的系统,它将来自不同源的大量数据存储在一起,以支持决策制定过程。数据仓库通常包含历史数据,并且以数据集市(Data Mart)的形式存在,针对特定的业务线或部门。数据仓库的数据按照主题进行组织,允许复杂的查询和报告,以及跨部门的综合分析。 湖仓一体(Lakehouse)是近年来提出的一个新概念,它结合了数据湖(Data Lake)和数据仓库的特点。数据湖是一种存储架构,允许以原始格式存储大量的结构化、半结构化和非结构化数据,而无需事先定义数据的结构。湖仓一体架构则是在数据湖的基础上,通过数据管理和优化技术,提供了类似于数据仓库的数据分析和处理能力,使得可以在同一个平台上处理多种数据类型和分析需求,既支持大数据的存储和处理,也支持结构化数据的查询和分析。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值