|
Microsoft 数据仓库架构 !(2) 两维间的关系可以用网格定型。维度类似于网格坐标轴上的标记。单元格才是内容。内容对应于立方体每个维度的交叉结果。单元格中的数据是一个计量单位。计量单位是判断立方体的全部依据。如果立方体是关于售出项目的数目,则计量单位就是已出售项目数量的计数。要重复网格示例,计量单位便是您在网格单元格中找到的数目。 
图 1:上图显示的是两维立方体的组织结构。在该示例中,“产品”和“地区”是维度;“椰菜”、“肥皂”、“俄勒冈”、“华盛顿”、“西雅图”和“斯波坎”是各个维度的级别。包含不同图表的单元格就是内容。内容单元格中的单个数据就是计量值。在该示例中,立方体中共使用了三种计量单位。 维度和级别对于为杂货店设计的数据仓库立方体,其维度可能包括产品、优惠、时间(营业天数)和地区等内容。可能还包括雇员维度和客户维度(某些杂货店可能有会员帐户)。 级别用于将维度按需要组织为更小的单位。根据级别在立方体中的配置,它们还可能包含其他级别。例如,假设有一个区域维。也许这个杂货店在三个州营业,并且使用州界作为分界线。假设区域维包含三个级别:加利福尼亚、俄勒冈和华盛顿。如果该店在华盛顿州还包括其他子区域(例如西雅图、奥林匹亚、亚基马和斯波坎),即使加利福尼亚和俄勒冈区域没有这样的情况,这些级别仍可以作为子级别添加到华盛顿区域。级别只是组织维度内容的一种便利方法。 内容和计量单位内容是由各个维度组合而成的。定位内容类似于使用坐标系。就象数学立方体中的原点可以表示为 (x=0,y=0,z=0),内容将由特定的维度组合(例如 (ProdUCt=broccoli, Region=Seattle, Time=Wednesday))表示,生成一个有关星期三在西雅图销售椰菜的内容。根据立方体的使用方法,内容可能显示一个类似于“售出 580 单位物品”或“销售额为 $860.00”的计量单位。计量单位的含义取决于立方体的定义方式。在本例中,可能有多种椰菜或在西雅图地区有多个商店。该值将表示定义组的汇总。立方体内的计量单位可能是数字。对于一个杂货店,计量单位可能会是产品价格、净销售额、销售数量、商品成本等。 汇总计数和总计的数学运算是数据仓库之所以有用的重要原因之一,属于汇总功能。维度组织完毕并已对立方体进行处理后,将开始计算汇总。通常,在立方体初始填充后或对立方体的内容进行更改后,将立刻进行汇总。 使用数据仓库进行决策假设一个杂货店的情形。假定某种促销已经进行了好几天,店主需要决定是否要再次进行促销。店主可能会产生如下疑问:“促销期间卖出的产品比促销前卖出的产品多吗?” 在使用普通结构的事务数据库中,杂货店库存系统可以记录价格、产品、销售和促销等情况。库存系统在插入和更新记录方面进行了优化,并且在简单的程式化选择(如检索项目成本)方面可能也进行了优化。这种情况是不太可能的:系统的组织方式使得所生成的报告可以按天或按产品详细描述某种销售的有效性。事实上,为事务有效性而设计的系统和为查询有效性而设计的系统间总是存在矛盾。这种情况下,就应该使用数据仓库。数据仓库是一个独立的存储库,它使用已进行优化的结构中现有资源的相关数据。 在此例中,使用数据仓库将很容易回答店主的问题。通过使用产品、促销和时间立方体维度,计量项目销售量的内容记录总和便可以生成所需的结果。 与此技术相比,其他系统中的信息甚至可能不在同一数据库中。库存数据源可能和客户数据源或雇员数据源不一样。即使该系统位于同一数据库中,建立一个查询系统(该系统以一种可以生成正确答案的方式合并和汇总结果)也是非常繁琐的。事实上,合并数据源和汇总结果正是数据仓库软件最擅长的。 FoodMart 示例立方体包含在 Microsoft SQL Server Analysis Services 软件,即 Microsoft 的数据仓库软件中。对于了解使用数据仓库时可以使用什么样的信息,这是一个非常好的资源。FoodMart 示例使用杂货店作为模型。 查看立方体片段和编程接口
|