实施以下方案的最佳方法是什么?我有3个业务对象直接映射到HUB:
它也是一个连接所有这些的交易,表示为LINK Algo_Supplier_Consumer:它有一个SAT,其中包含结果数据,由特定的供应商 - 消费者对算法收集。
在这种情况下,算法是经典的SCD。但是,当数据到达ETL周期时,可能会有来自不同版本算法的结果。原始元组如下所示:
(时间戳,Algo,Algo_timestamp,供应商,消费者,结果)
Algo_timestamp可能远远超过时间戳。 我想在报告中跟踪它,因为最终结果取决于算法SAT中的结果和算法细节。
因此,我应该明确地介绍一个单独的HUB,例如'Algo_Version'与算法的对应LINK并修改Algo_Supplier_Consumer LINK以使用对'Algo_Version'的引用而不是算法参考。
或者,Algo_Supplier_Consumer LINK可以用f.e实现。算法PIT键。它是否符合Data Vault 2.0标准?
此外,第一种方法使我将所有算法SAT重新为父Algo_Version。但是看起来像是一个开销,因为每次Algo params的任何更改都会创建新的Algo_Version。是不是?