Data Vault:业务、代理、保留键之间的区别

Data Vault: difference between business, surrogate, retained keys

维基百科关于 Data Vault 的文章中提到了代理项和业务键。enter link description here。 提到了保留键 here.

  1. 根据维基百科文章,为 hub/satellite 或 link 指定代理键不是强制性的。但是,在 link 中,必须为其连接的集线器指定代理键。如果在集线器中不强制指定代理键,我将如何在 link table?

    中输入它们
  2. 代理键与业务键。需要代理键来连接结构。业务键用于唯一标识项目。但是我们也可以通过代理键来做到这一点,不是吗?业务密钥和代理密钥之间的主要区别是什么?为什么我不能将代理密钥用作业务密钥,反之亦然?

  3. 他们在后面的文章中写道:

Hub table – contains business key and retained key. The retained key is a key which is mapped to business key one-to-one. In comparison, the surrogate key includes time and there can be many surrogate keys corresponding to one business key. This explains the name of the key, it is retained with insertion of a new version of a row while surrogate key is increasing. Why we need the retained key? There can be many sources, so we cannot use business key as it may have different type or different number of attributes in different source systems.

由于资源较多,同一个项目可能会有不同的业务key。但是这个特定的项目将由保留的密钥唯一标识。我没理解错吗?所以,这意味着代理键映射到不同的业务键而不是一对一。

示例。 假设我们有一个中心“员工”,它有来自两个不同部门的两个不同的业务密钥。有一名员工 A。来自会计部门的员工 A 将拥有业务密钥 AT654,而来自项目部门的员工 A 将拥有业务密钥 PR454。 该中心将为他们提供该雇主的两个条目:

RetainedKey   BK      TimeStamp    Source
AAA111        AT654   24.03.2012   Accounting
AAA111        PR454   25.03.2012   Project

但是我怎样才能合并代理键呢?即,在什么情况下它会增加(如“这解释了键的名称,它随着插入新版本的行而保留,而代理键正在增加”中所述)?

谁能给我一个保留键、业务键和代理键的使用示例(情况)?

Data Vault 2.0 中的三个主要术语:

  • 业务键:业务如何识别对象的键。
  • 代理键: 业务如何识别对象的键如果没有直接的业务键可用。这是几个字段的组合键,使行唯一。
  • Hash Key: Hubs、Satellites 和 Links 中用于加入 tables 的密钥;它们是从业务/代理键生成的。
  • 保留密钥必须连接到 Data Vault 1.0。没听说过。

如果您需要描述这样一个事实,即您可能拥有一个在多个系统中不同但含义相同的业务密钥,那么可以使用 Same-As-Links tables存储和查找。

因此,要加入您的两个系统,您需要创建一个 Same-As-Link 结构,它看起来像这样:

Hash Key        Accounting_Key     Project_Key     Timestamp
xyzabc...       AT654              PR454           24.05.2012

那么这个table可以作为查找table.