【发布时间】:2009-05-14 13:43:37
【问题描述】:
我们正在为一家银行开发数据仓库,并且几乎遵循标准的 Kimball 临时表模型、星型模式和 ETL 来通过流程提取数据。
Kimball 谈到使用暂存区进行导入、清理、处理和一切操作,直到您准备好将数据放入星型模式。在实践中,这通常意味着将数据从源上传到一组表中,几乎没有修改,然后选择性地通过中间表获取数据,直到它准备好进入星型模式。这对单个实体来说是很多工作,这里没有单一的责任。
我以前工作过的系统对不同的表集进行了区分,达到了这样的程度:
- 上传表格:原始源系统数据,未修改
- 暂存表:中间处理、类型化和清理
- 仓库表
您可以将它们粘贴在单独的架构中,然后为存档/备份/安全等应用不同的策略。其他人之一曾在一个仓库工作,其中有一个 StagingInput 和一个 StagingOutput,类似的故事。整个团队在数据仓库和其他方面都拥有丰富的经验。
然而,尽管如此,纵观 Kimball 和网络,似乎完全没有关于为暂存数据库提供任何类型的结构的书面文件。如果相信 Kimball 先生会让我们所有人都将分期工作作为这个庞大的深黑色非结构化数据池,那将是可以原谅的。
当然,如果我们想为暂存区添加更多结构,该怎么做是很明显的,但似乎没有任何关于它的文章似乎很奇怪。
那么,其他人都在做什么呢?只是上演这么大的非结构化混乱还是人们有一些有趣的设计?
【问题讨论】:
标签: sql database-design data-warehouse