数仓建模—数据语义层
什么是语义层
如今,企业产生大量数据,需要以正确的方式进行分析才能做出重要决策。数据可能来自多个来源并采用不同的格式,这使得清楚地了解其含义和重要性成为一项挑战。这就是语义层的用武之地。
语义层存在于数据仓库和最终用户使用的应用程序之间。它为用户提供了简化且一致的数据视图,无论其基础数据源的复杂性如何。该逻辑层有助于映射物理数据结构以创建概念数据模型。
它定义了数据元素之间的所有规则和关系,并以业务术语提供了数据的通用词汇表。然后,用户可以轻松地与数据进行交互,而无需了解其数据源的技术知识。
语义层的类型
语义层有不同的形式,具体取决于它们的构建目的。影响语义层类型的因素包括数据源类型、用户群、所使用的分析工具以及期望的结果。
根据数据和分析的目的,语义层可以通过不同的方式实现。
- **数据仓库中的语义层:**数据仓库的主要目的是为整个组织提供集中的数据源。它旨在成为不同部门、用户组和用例的单一事实来源。仓库中的数据结构可能很复杂且技术性强,这使得用户很难访问他们需要的信息。因此,业务用户经常将部分数据提取到 BI 工具中,创建有助于语义层传播的本地化语义层。
- **数据管道内的语义层:**在构建数据管道(将来自各种来源的数据添加到数据仓库的过程)时,数据工程师在代码中输入语义层。该层有助于命名和组织数据模型的不同部分,例如表和属性。
- **商业智能 (BI) 和数据分析中的