---
url: /share/datawarehouse.md
description: 本文涉及到大数据领域的通识知识，建议每一位对大数据感兴趣的同学认真阅读、认真阅读、认真阅读。
---

# 你真的了解数据仓库、数据湖、数据湖仓吗？五分钟带你了解数据湖仓的演变

本文涉及到大数据领域的通识知识，建议每一位对大数据感兴趣的同学认真阅读、认真阅读、认真阅读。

## 前言

数据分析是现代企业和组织决策过程中不可或缺的一部分，数据分析技术经过数十年的发展，需求场景从 BI 报表到数据探寻、实时预测、用户画像等不断丰富，技术架构经历从**数据仓库**、**数据湖**、到**数据湖仓**的演进，并走向**数据湖仓一体**架构，通过一套架构服务多样化的分析场景。

## 数据仓库

![](/img/4592f72f-889b-4e33-955c-4b1ac822ef6a.png)

数据仓库的发展可以追溯到 1980 年，关系型数据库、日志文件等数据源的数据经过 ETL 处理，统一存储到数据仓库，用于服务 BI 报表、数据挖掘等分析场景。数据仓库在数据质量、事务处理、查询性能、数据治理等方面有明显的优势，但随着数据分析的需求越来越大，数据仓库的方案也面临一些挑战。

* 数据多样化

除了结构化的数据，半结构化、非结构化的数据越来越多。

* 数据孤岛问题

数据仓库面向主题管理，导致数据分散形成孤岛，难以形成全局统一的数据分析。

* 成本与扩展性

大数据量增长带来数据存储成本与横向扩展的问题。

* 高级数据分析支持

数据仓库能很好的支持 BI 相关应用，但随着 AI 的发展，AI 应用与数据仓库的数据交互效率不高，制约了 AI 应用的发展。

## 数据湖

![](/img/ff4e47bb-5a7e-46eb-9a6d-2bfa11fcd4d4.png)

数据湖的概念在 2010 年首次提出，如果把数据仓库/集市类比为瓶装水，数据湖则是以更加原生态方式存储数据的大池子。数据湖的核心优势是统一与开放，数据基于对象存储、HDFS 等系统实现低成本、可扩展的数据存储，并作为企业数据的 Single Source of Truth；同时数据的数据格式是开放的，便于不同的应用灵活访问。

数据湖解决了数据成本与扩展性、数据多样性、数据孤岛等问题，并同时满足 BI 与 AI 应用对数据分析的诉求；但数据湖在数据分析性能、数据管理与治理方面仍然存在较大的挑战。

## 湖仓分层架构

![](/img/ec73ee9c-44f0-4d40-829a-cffb51660bf0.png)

数据仓库与数据湖各有长处，业界持续在探索两者如何更好地融合，在过去几年湖仓分层的架构得到广泛的应用。企业数据统一写到数据湖，作为统一存储，湖上开放的数据可以服务 AI、ML 等应用场景；数据湖上部分数据经过 ETL 处理导入到数据仓库服务 BI 等 OLAP 分析场景。

湖仓分层架构融合了数据湖与数据仓库的优势，但面临一些问题与挑战。部分数据从数据湖导入到数据仓库，数据链路的增长影响数据分析的时效性，两份数据也会带来冗余存储、数据口径不一致的问题；另外，对于数据仓库里加工产生的数据，仍然很难高效的服务 AI 场景。

## 数据湖仓

![](/img/cd19ecf8-ec5d-41af-a34e-2b5a676fcd28.png)

湖仓分层架构在过去几年被广泛应用，并且不断地加深融合。新兴的数据仓库如 Snowflake、Redshift、BigQuery 均采用云原生存算分离架构演进，并且支持直接查询开放数据湖的能力。数据湖在事务支持、查询性能等方面的能力不如数据仓库，近年来随着新兴数据湖格式如 Iceberg、Hudi、Delta Lake 等的发展，事务支持能力得到提升；另外，在查询性能上，通过不断优化数据湖上的数据分布以及增加缓存机制等技术的演进，数据湖上的数据分析性能已经大幅提升，达到接近数据仓库的水平。

![](/img/06ec29ce-07b6-4c49-aa8f-90f2d4f11c9d.png)

从数据湖和数据仓库的演进来看，两者在不断的融合，并逐步往数据湖仓的方向演进，兼具数据湖与数据仓库的优势。数据湖仓作为一种新的数据分析架构，用户采用湖仓就能方便将数据源和数据应用连接在一起。数据湖仓兼具数据仓库与数据湖的优势，湖仓具备开放统一的数据存储能力，并基于统一存储直接服务批处理、流处理、交互式分析等多种分析场景，实现湖仓 One data，all analytics 的业务价值。

## 如何快速构建Lakehouse

现如今，主流的数仓类产品都在向Lakehouse架构发展。本文将以StarRocks为例，介绍基于StarRocks构建Lakehouse架构。

基于 StarRocks，用户可以高效的构建 Lakehouse 数据分析架构，用户可以选择 StarRocks 内表或开放数据湖 Apache Iceberg、Apache Hudi、Apache Paimon 作为统一的数据存储，基于 StarRocks 服务 BI 报表、Ad-hoc 等多样化的分析场景，对于业务性能要求高的查询，通过物化视图技术实现按需透明加速。

![](/img/ba6dd008-089a-440f-b728-ed4cd62f9282.png)

## 湖仓实践案例

![](/img/17d424ae-8258-49b0-b38e-f04903dd107b.png)

**腾讯微信**

数据写入到 Iceberg，基于 StarRocks 实现准实时分析，数据新鲜度从小时/天到分钟即，查询性能提升 3-6 倍。

**携程旅行**

数据统一存储在 Hive，通过 StarRocks 直接服务 BI 报表，交互式分析。重点业务场景按需创建物化视图查询加速，查询性能提升 10+ 倍

## 总结

Lakehouse 兼具数据仓库与数据湖的优势，是下一代数据分析架构的演进趋势；StarRocks 是构建 Lakehouse 的最佳选择，已在微信、小红书、携程、平安银行等数十个大型企业落地实践，帮助企业实现 One data、all analytics 的业务价值。

想要了解更多有关StarRocks的具体内容，你可以关注：遇码，回复**starrocks**，获取StarRocks官方文档。
