2013-08-27 122 views
0

我正在设计一个数据仓库系统,并对结构有疑问。首先,这里有一些背景(金融服务):数据仓库设计(考虑到SSAS)

定义了多种费用定义(交易费用,设置费用,SMS提醒费用等)。

这些费用可以更新和添加(维度表)。

定义了使用费用定义的付款。付款可以包含1个或更多的费用,并且费用金额(以及谁支付)对于该付款是唯一的(交易费用在2美元交易中与2,000美元交易的交易费用大不相同)。

如果我设计一个OLTP数据库,我想有以下几点:

  • 支付(付款详细信息)
  • PaymentFees(FK手续费,FK支付,收费金额,收费收款人)
  • 费用(费用名称,团体名称等)

我的问题是,我应该如何在DW中设计这个?我将使用SSAS进行立方体浏览,并且我听说它不能很好地处理许多对象。

+0

它处理多对多很好。 http://www.sqlbi.com/articles/many2many/您可能需要使用多对多,因为如果开始使用实际上所有费用都在表中,如果有人想要增加新费用,则需要在支付中添加新列。 .. – Justin

回答

0

您可以使用多对多但它应该更容易建立两个事实表(一个用于付款,一个用于付费,仅用于商店FK和$)和两个维度(一个用于支付,另一个用于收费但是存储所有文字字段:名称,组名称)。具有两个维度的解决方案可能会更容易设计和理解您的最终用户。