bob体育客户端下载平台的博客

数据仓库建模技术及其在Databricks Lakehouse平台上的实现bob体育客户端下载

在Lakehouse上使用数据库和星型模式
分享这篇文章

湖屋是一种新的数据平台范式,它结合了数据湖和数据仓库的最bob体育客户端下载佳特性。它被设计为一个大型企业级数据平台,可以容纳许多用例和数据产品。bob体育客户端下载它可以作为一个单一的统一的企业数据存储库,用于您的所有:

  • 数据域,
  • 实时流媒体用例,
  • 数据集市,
  • 不同的数据仓库,
  • 数据科学特性存储和数据科学沙盒
  • 部门自助分析沙箱。

鉴于用例的多样性,不同的数据组织原则和建模技术可能适用于湖屋上的不同项目。技术上,Databricks Lakehouse平bob体育客户端下载台可以支持许多不同的数据建模风格。在本文中,我们旨在解释湖屋的Bronze/Silver/Gold数据组织原则的实现,以及不同的数据建模技术如何适用于每一层。

什么是数据仓库?

一个数据保险库是一种较新的数据建模设计模式,与Kimball和Inmon方法相比,用于构建企业级分析的数据仓库。

数据库将数据组织成三种不同的类型:中心链接,卫星.集线器表示核心业务实体,链接表示集线器之间的关系,而卫星存储关于集线器或链接的属性。

Data Vault专注于敏捷数据仓库开发,其中可伸缩性、数据集成/ETL和开发速度非常重要。大多数客户都有一个登陆区、Vault区和数据集市区,它们对应于Databricks的青铜层、银层和金层组织范例。枢纽、链接和卫星表的数据库建模风格通常很适合Databricks Lakehouse的Silver层。

BOB低频彩了解更多关于数据仓库建模的信息数据仓库联盟

显示数据库建模如何工作的图表,其中集线器、链路和卫星相互连接。
显示数据库建模如何工作的图表,其中集线器、链路和卫星相互连接。

什么是维度建模?

维度建模是一种自底向上的方法,用于设计数据仓库,以优化它们以进行分析。多维模型用于将业务数据反规范化为(比如时间和产品)和事实(如金额和数量的交易),不同的主题区域通过一致的维度连接起来,以导航到不同的事实表。

维度建模最常见的形式是星型模式.星型模式是一种多维数据模型,用于组织数据,使其易于理解和分析,并且非常容易和直观地运行报表。kimball风格的星型模式或维度模型几乎是数据仓库和数据集市中表示层、甚至语义层和报告层的黄金标准。星型模式设计针对查询大型数据集进行了优化。

星型模式示例
星型模式示例

规范化的Data Vault(写优化)和非规范化的维度模型(读优化)数据建模风格在Databricks Lakehouse中都占有一席之地。Silver层中的Data Vault的集线器和附属器用于加载星型模式中的维度,Data Vault的链接表成为加载维度模型中的事实表的关键驱动表。BOB低频彩有关维度建模的更多信息,请参阅金伯尔集团

数据的组织原则在每一层的湖屋

一个现代化的湖屋是一个无所不包的企业级数据平台。bob体育客户端下载它具有高度的可扩展性和高性能,适用于各种不同的用例,如ETL、BI、数据科学和流,这些用例可能需要不同的数据建模方法。让我们来看看一个典型的湖屋是如何组织的:

这张图表显示了数据湖屋架构的青铜层、银层和金层的特征。
这张图表显示了数据湖屋架构的青铜层、银层和金层的特征。

青铜层-着陆区

青铜层是我们从源系统获取所有数据的地方。该层中的表结构与源系统表结构“按原样”对应,除了可选的元数据列之外,还可以添加这些元数据列以捕获加载日期/时间、进程ID等。这一层的重点是变更数据捕获(CDC),以及提供源数据的历史存档(冷存储)、数据沿袭、可审计性和必要时的重新处理的能力——而无需从源系统重新读取数据。

在大多数情况下,以Delta格式保存Bronze层中的数据是一个好主意,这样从Bronze层中读取ETL的后续数据是高性能的——这样您就可以在Bronze中进行更新以编写CDC更改。有时,当数据以JSON或XML格式到达时,我们确实看到客户以原始源数据格式登陆,然后将其更改为Delta格式。因此,有时我们看到客户将逻辑青铜层表现为物理着陆和staging区域。

在着陆区以原始源数据格式存储原始数据也有助于一致性,其中通过不支持Delta作为本机接收器的摄取工具摄取数据,或者源系统直接将数据转储到对象存储中。此模式还与自动加载器摄取框架很好地一致,其中源将数据放置在原始文件的着陆区域,然后砖自动装卸机将数据转换为Delta格式的Staging层。

银层——企业中央存储库

在Lakehouse的Silver层,来自Bronze层的数据被匹配、合并、一致性和清理(“刚刚足够”),以便Silver层可以提供其所有关键业务实体、概念和交易的“企业视图”。这类似于企业操作数据存储(ODS)或中央存储库或数据网格的数据域(例如,主客户、产品、非重复事务和交叉引用表)。这个企业视图将来自不同来源的数据汇集在一起,并为特别报告、高级分析和ML提供自助分析功能。它还可以作为部门分析师、数据工程师和数据科学家的来源,进一步创建数据项目和分析,通过Gold层中的企业和部门数据项目回答业务问题。

在Lakehouse数据工程范例中,通常遵循(提取-加载-转换)ELT方法,而不是传统的提取-转换-加载(ETL)。ELT方法意味着在加载Silver层时只应用最小的或“刚刚足够”的转换和数据清理规则。所有“企业级”规则都应用在Silver层,而特定于项目的转换规则应用在Gold层。速度和敏捷在Lakehouse中摄取和传递数据是优先考虑的。

从数据建模的角度来看,Silver Layer有更多类似于数据模型的第三范式。类似Data vault的写性能数据体系结构和数据模型可以在这一层中使用。如果使用数据拱顶方法,原始数据拱顶和业务拱顶都将适合湖的逻辑银层——时间点(PIT)表示视图或物化视图将在金层中显示。

黄金层——表示层

在Gold层,可以根据维度建模/Kimball方法构建多个数据集市或仓库。如前所述,Gold层用于报告,与Silver层相比,它使用更非规范化和读取优化的数据模型,连接更少。有时候,金层中的表可以完全非规格化,特别是如果数据科学家希望它以这种方式为特征工程提供算法。

在将数据从Silver层转换到Gold层时,应用了“特定于项目”的ETL和数据质量规则。最后的表示层,如数据仓库、数据集市或数据产品,如客户分析、产品/质量分析、库存分析、客户细分、产品推荐、营销/销售分析等,都在这一层中交付。Kimball风格的基于星模式的数据模型或Inmon风格的数据集市适合这个Lakehouse的黄金层。用于自助分析的数据科学实验室和部门沙盒也属于黄金层。

Lakehouse数据组织范例

Lakehouse数据组织范例

总而言之,当数据在Lakehouse的不同层中移动时,它是被策划的。

  • 铜层使用源系统的数据模型。如果数据以原始格式登陆,则在该层中将其转换为DeltaLake格式。
  • 银层第一次将来自不同来源的数据汇集在一起,并与之一致以创建数据的企业视图——通常使用更规范化、写优化的数据模型,通常是类似于第三范式的数据模型或类似于数据库的数据模型。
  • 金层是比Silver层具有更多非规格化或扁平数据模型的表示层,通常使用kimball风格的维度模型或星型模式。Gold层还包含部门和数据科学沙盒,以实现跨企业的自助分析和数据科学。提供这些沙盒和他们自己的独立计算集群可以防止业务团队在Lakehouse之外创建他们自己的数据副本。

这种Lakehouse数据组织方法旨在打破数据孤岛,将团队聚集在一起,并通过适当的治理,使他们能够在一个平台上进行ETL、流媒体、BI和AI。bob体育客户端下载中央数据团队应该成为组织创新的推动者,加速新的自助服务用户的登录,以及许多数据项目的并行开发——而不是数据建模过程成为瓶颈。的Databricks统一目录提供Lakehouse上的搜索和发现、治理和谱系,以确保良好的数据治理节奏。

使用Databricks SQL构建您的数据仓库和星型模式数据仓库

数据在Lakehouse的不同层中移动时进行管理。
当数据在各个Lakehouse层中移动时,如何管理数据。

进一步阅读:

免费试用Databricks

相关的帖子

看到所有bob体育客户端下载平台的博客的帖子