【Azure 架构师学习笔记】- Azure Databricks (19) --Lakehouse

发布于:2025-03-12 ⋅ 阅读:(10) ⋅ 点赞:(0)

本文属于【Azure 架构师学习笔记】系列
本文属于【Azure Databricks】系列。
接上文 【Azure 架构师学习笔记】- Azure Databricks (18) --Delta Live Table 架构

前言

在现代数据应用环境下,数据仓库(保存结构化数据)和数据湖(保存非结构化数据)被广泛地使用着,这个时候可以尝试Databricks提供的新特性——Lakehouse。 它并不是一个可以从Databricks管理界面直接找到的选项。

在最早期,数据存储以磁盘文件为主,然后出现数据库,然后出现数据仓库,接下来就出现了data lake。 data lake消除了很多数据仓库的局限性,但是也带来了一些不足的地方:

  • 缺乏集中式数据治理,难以维护数据的一致性和安全性。如果没有足够的控制措施,它们可能会变得杂乱无章,从而导致数据完整性问题。
  • 包含多种数据类型,因此会导致数据湖或数据沼泽分散和隔离。这可能会使数据查找变得困难,并导致数据重复或不一致,从而影响查询性能。
  • 不支持并发事务,因此多个用户尝试同时访问或编辑数据可能会导致数据不一致或完整性问题。

基于这些限制, Databricks 引入了Delta Lake,使其具有一定的集中治理功能。

Lakehouse建在Databricks的Delta Lake之上,是一个开源的存储层,相对于data lake而言具有可靠性,扩展性和性能的优势。

在这里插入图片描述

Databricks Lakehouse

它是其中一个“数据”的停靠点。它利用数据湖的可扩展性和灵活性以及数据仓库的可靠性和性能来满足业务对“在一个地方处理结构化和非结构化数据”的需求。

除此之外还提供ACID事务,schema增强和datalake 索引,使其更加符合数据仓库的性能和数据质量要求。

在这里插入图片描述

Lakehouse是Delta Lake和Photon的集成,前者是开源的存储层,后者则是矢量化引擎用于大幅度提升查询性能。

简而言之Lakehouse提供了管理和处理数据的各种好处,下图是Databricks的大致功能展示。

在这里插入图片描述

组件介绍

Delta Lake

在lakehouse架构中负责管理数据,各种格式的数据/文件的存储和查询及事务控制(ACID)。保证数据版本控制和回滚需求。从Databricks官网图片上可以看出Delta Lake的功能主要就是Data Managemetn 和Governance。在这里插入图片描述

UC

UC 是治理平台,对包含在lakehouse中的表,文件,ML 模型和dashboard进行管理。

  • 对数据和AI 进行集中治理。
  • 提高工作效率和增强查询性能。
  • 透明地自动创建所有负载的血缘。
  • 在跨组织数据共享中增加安全性。
    在这里插入图片描述

在lakehouse中使用UC 的其中一个关键原因是它提供了单点访问所有数据资产的入口,不需要知道数据具体存储在何处。使得用户可以消除数据存储在不同地方所带来的使用影响。

小结

Databricks的lakehouse通过集中管理并添加所需的特性来使得数据使用变得更加高效、安全、实时、统一。使得企业在数据使用方面减少不必要的开销和难度。
在这里插入图片描述