2017-02-22 23 views
0

我有一个具有性别属性的人员卫星。在源系统中,此属性的值可以是:F,M,FEMALE或MALE。以下两种方法中的哪一种适用于Data Vault建模?在性别如何在使用Data Vault原则建模的数据库中使用交叉引用表?

  1. 存储数据,因为它来自来源和业务库或数据集市规范值,以女性和男性只有

  2. 创建交叉引用表到F绘制出雌, M加载到MALE,同时加载Person Satellite,使用交叉引用表将F转换为FEMALE,将M转换为MALE。

我正在使用支持列压缩的Amazon Redshift。

+0

我不能真正回答你的问题,但我说红移和DV听起来像一个痛苦的组合。根据我的经验,随着连接数量的增加,Redshift性能严重下降。 –

+0

谢谢,@Joe哈里斯。我了解多个连接。我将在商业仓库中安排一些PIT和桥梁来帮助解决这个问题,并为最终用户创建一些特定的信息集市,以提供更为统一的数据视图 –

回答

0

我通过电子邮件发送了数据保险库建模方法创建者Daniel Linstedt,问他同样的问题。他的回答如下:

“我通常将它存储,然后在通往商业DV的路上进行翻译。这样,如果业务发生了变化,我们可以重写翻译规则而不影响历史。但更重要的是,我看到源系统提供的值超出了可接受的范围,不要试图翻译原始DV,这样做会破坏可审计性。“

0

当您有非常复杂的业务逻辑随时间变化而变化时,数据仓库概念非常有用,但F /女性和男性/男性映射是非常简单和稳定的逻辑。交叉引用在这里只是过分复杂。我只是将这些值标准化为F/M,并在此处使用char(1)列而不进行压缩。

+0

谢谢@AlexYes。我也是将这些价值标准化的想法。不过,我更感兴趣的是了解这样做的缺点,因为Data Vault原则明确指出,在原始保险库中不应该进行任何转换 –