如何在ssas中设计维度和事实表

时间:2012-03-14 20:43:06

标签: ssas data-warehouse dimensions

我有一个包含少量表格的数据库,例如:

  • 员工(身份证,姓名,州,国家)
  • 材料(Id,名称,颜色,类型,数量,库存)
  • 订单(Id,MaterialId,EmployeeId,金额,折扣,总金额)
  • ShippingOrders(OrderId,MaterialId,EmployeeId,金额,折扣,总金额)
  • ShippingCountries(Id,CountryName)
  • 客户(身份证,姓名,州,地址,CountryId)
  • MaterialImages(Image,MaterialId)
  • PlacedOrders(OrderId,EmployeeId,CustomerId,Amount,shippingDate)
  • SavedCarts

现在,我必须从此表创建数据仓库。就像我们从 AdventureWorks 数据库中获得 AdventureWorksDW 一样。

由于我对数据库完全陌生,我很想知道如何确定应选择哪些字段作为维度以及哪些字段应选择为事实。

一旦我决定如何创建DW数据库(如 AdventureWorksDW )? 这会像创建数据库和表一样。之后用来自master数据库的选择查询填充那些表( AdventureWorksDW 中的例如 DimProduct )可能来自 AdventureWorks 数据库中几个表的连接)

总而言之,我很想知道如何从现有数据库创建数据软件数据库。

我是SSAS的新手,您的建议和意见对我非常有用。

1 个答案:

答案 0 :(得分:3)

您将像任何其他数据库一样创建DW数据库,它将比常规OLTP DB更加非规范化 你应该有一个机制(SSIS包是最常见的)来不时从你的OLTP数据库更新你的DW。

与事实和维度的主要区别在于事实是价值(例如销售额),而维度是您将用于切割事实的“参数”。像客户,地区,日期,产品类型等。 现在,你将如何在你的DW上实现这一点是另一回事(例如,你有一个产品颜色的表格,或者你将它添加到产品表格中),我们不能讨论单个主题。正如pondlife所说,你必须谷歌关于数据仓库的实施。