我会尽量避免OLTP和OLAP数据之间的任何显式外键。从OLTP到OLAP的外键可以防止您在业务中添加新实体,并且可能需要首先在OLAP中定义实体,而标准是仅从单向运行ETL过程 - 始终从OLTP或OLAP运行。从OLAP到OLTP的外键可以防止您在数据仓库中保留与当前业务无关的历史数据,但可能对分析感兴趣。
当然,总会出现因某种原因而违反规则的情况。也许有一个。客户方的人是否有解释为什么按照您描述的方式实施?
在OLTP和OALP之间共享维度表并不常见。至少有两个原因:(1)OLTP和OLAP中有趣的属性可能完全不同。 (2)争用和随之而来的性能问题。
另一方面,OLTP和ODS共享完全相同的维度副本并不罕见(但有点先进)。这通常被称为“黄金副本”。我经常称这样设计的消耗臭氧层物质是一种活跃的消耗臭氧层物质。当维度有多个副本时,我将其称为被动ODS。可能您所引用的OLAP不是真正的OLAP,而只是某种形式的战术报告,在这种情况下,共享相同的维度表并不罕见。