在数据仓库模型中容纳动态层次结构

Posted

技术标签:

【中文标题】在数据仓库模型中容纳动态层次结构【英文标题】:Accommodating Dynamic Hierarchies in a Data Warehouse Model 【发布时间】:2011-06-10 06:10:24 【问题描述】:

我正在为公司(我正在为之工作的)核心 ERP 应用程序构建一个数据仓库,用于特定客户。

源数据库中的大部分数据,与数据仓库中的层次结构相关,都在如下所示的列中:

但据我所知,传统上存储维度数据的模型是:

我可以旋转数据并将它们拟合到上面显示的模型中。但是当用户引入新的层次结构值时,问题就来了。比如说,未来的用户决定定义一个名为产品子类别的新级别。然后我的整个数据仓库模型将崩溃,无法适应新定义的层次结构级别。

请告诉我一种克服这种情况的方法。

我希望我的回答足够清楚。如果需要更多详细信息,请告诉我。

【问题讨论】:

【参考方案1】:

好吧,什么都不应该崩溃——ETL 应该像往常一样提取和加载数据。

以下是一些可供考虑的选项:

    只需为新层次结构再添加一列到dimProduct

    尝试使用 hierarchy helper table

    考虑将 path string attribute 添加到 dimProduct

【讨论】:

非常感谢。我将介绍您提出的选项。对于选项 2 和 3,我需要通过提供的链接来获得完整的理解。添加一列需要我们这边的配置,是吗?也就是说,我们只需要让客户相信我们的参与。

以上是关于在数据仓库模型中容纳动态层次结构的主要内容,如果未能解决你的问题,请参考以下文章

数据仓库模型(星型模型和雪花模型 )

数据仓库建模流程

数据仓库分层架构深度讲解

数据仓库的多维数据模型定义

数据仓库开发教程 (DW) 之数据模型架构&编码规范

Oracle教程-01