Data Vault 2.0:LINK的非参考标识

时间:2016-07-09 01:19:31

标签: database-design data-modeling data-vault

我希望代表一个由其他实体(外键)的身份和一些额外信息识别的实体。以下是具体方案。

实体:

  • 产品
  • 客户

当客户购买产品时,会下订单。订单还包括一个序号,表示同一组客户和产品的不同购买。例如,如果客户詹姆斯购买产品胶水2次,那么我将(詹姆斯,胶水,1),(詹姆斯,胶水,2)。订单的标识是客户,产品和序号的组合(这是业务需求,也是为了便于后续数据更新/更正)。

然后我将产品转换为HUB,将客户转换为HUB,并在2个HUB之间订购LINK。

我想知道的是我如何在订单链接中包含序号。

我有一个建议是建立一个HUB来存储序号,并用序号预先填充(从来没有任何客户购买过100次相同的产品,所以100行预填充应该足够好) 。然后订单LINK也可以参考序号HUB以获得一些识别。

如果这是一个很好的方法,请告诉我(我真的不喜欢我必须预先填充某些内容,例如做出假设,以使数据库正常工作)。如果不是,那么更好的替代方案是什么?

1 个答案:

答案 0 :(得分:1)

您可能需要的是链接卫星,它可以存储有关交易的其他数据。对于每次交易,您都可以创建卫星数据。

因此,关于您的示例,该事务将有一个链接条目。此外,将创建具有序数的两个卫星条目。这应该是多重卫星 LoadEndDate 将被省略。

如果以这种方式完成,您应该能够添加交易所需的任何其他数据。