我正在设计数据仓库架构.
在探索从生产中提取数据并投入数据仓库的各种选项时,我发现了许多文章,主要提出以下两种方法:
在探索从生产中提取数据并投入数据仓库的各种选项时,我发现了许多文章,主要提出以下两种方法:
- Production DB —-> Data Warehouse (Star Schema) —-> OLAP Cube
- Production DB —-> Staging Database —-> Data Warehouse (Star Schema) —-> OLAP Cube
我仍然不确定哪个是在性能方面更好的方法,并减少生产数据库的处理负载.
在设计数据仓库时,哪种方法更好?
解决方法
下面的点是从
DWBI Organization’s文章
如果您有以下情况之一,则可能需要暂存区域:
> Delta Loading:您的数据从源代码逐步读取,您需要一个中间存储,其中可以临时存储数据的增量集,用于转换目的
>转换需要:在仓库中使用数据之前,您需要执行数据清理,验证等
>解耦:您的处理需要很多时间,并且您不希望在整个处理过程中保持连接到源系统(假定源系统不断被实际业务用户使用),因此更喜欢只需从源系统一次读取数据,断开源代码,然后继续处理您自己的“数据”
>调试目的:你不必一直回到你的来源,你可以解决问题(如果有)从分期区域单独
>故障恢复:源系统可能是暂时性的,数据的状态可能会改变.如果您遇到任何上游故障,您可能无法根据当时源更改而重新提取数据.本地副本有帮助
性能和减少处理可能不仅仅是考虑因素.添加分段有时会增加延迟(即业务发生发生与报告之间的时间延迟).但我希望以上几点能帮助你做出更好的判断.