数据仓库和决策支持系统-课件_第1页
数据仓库和决策支持系统-课件_第2页
数据仓库和决策支持系统-课件_第3页
数据仓库和决策支持系统-课件_第4页
数据仓库和决策支持系统-课件_第5页
已阅读5页,还剩183页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据仓库和决策支持系统主讲:鲁明羽大连海事大学计算机科学与技术学院研究方向:智能数据分析与数据挖掘电话mail:lumingyu@数据仓库和决策支持系统主讲:鲁明羽大连海事大学计算机科学与技1第7章数据仓库开发实例

第7章数据仓库开发实例2目录

7.1超市销售数据仓库的规划与分析7.2数据仓库开发工具简介

7.3SQLServer的数据仓库创建7.4SQLServer数据仓库事实表与多维数据集的建立目录7.1超市销售数据仓库的规划与分析37.1超市销售数据仓库的规划与分析

某大型连锁超市的业务涵盖于3个省范围内的1000多家门市。每个门市都有较完整的日用品和食品销售部门,包括百货、杂货、冷冻食品、奶制品、肉制品和面包食品等,大约5万多种,其中大约45000种商品来自外部生产厂家,并在包装上印有条形码。每个条形码代表了唯一的商品。为该超市建立一个能够提高市场竞争能力的数据仓库,首先需要进行数据仓库的规划分析。这就涉及到对数据仓库的需求分析、模型构建两个过程。7.1超市销售数据仓库的规划与分析某大型连锁超市的业务涵47.1.1超市销售数据仓库的需求分析1、超市营销售策略分析超市最高层管理所关注的是如何通过商品的采购、储存与销售,最大限度地获取利润。需要通过加强对每种商品的管理,降低商品的采购成本和管理费用,吸引尽可能多的客户。其中最重要的是关于商品促销的管理决策。需要依靠合适的促销活动,应用适当的促销策略针对合适的客户,以增加超市的销售利润,是超市数据仓库建设的基本需求。超市不同商品的销售利润是有差别的。希望在数据仓库中通过对商品的赢利分析,了解不同商品的销售赢利状态,以确定企业的销售重点,对那些可以为企业带来较大赢利的商品加大促销力度。7.1.1超市销售数据仓库的需求分析1、超市营销售策略分析57.1.1超市销售数据仓库的需求分析2、超市商品库存分析超市商品的库存状况对超市的利润具有巨大的影响。超市如果能够在合适的时候销售合适的商品,在不出现脱销的情况下尽可能减少商品库存的库存成本,是超市商品库存分析的主要目的。在商品库存分析中,管理人员还经常要根据商品的库存量和商品库存成本确定商品的销售价格。从超市的商品库存情况来看,库存分析实质上是对超市的价值链进行分析,分析商品库存环节在超市的整个价值链上所发挥的作用。7.1.1超市销售数据仓库的需求分析2、超市商品库存分析63、超市商品采购分析超市在商品采购工作中需要分析哪些商品是热销的商品,尽可能采购销售热销商品。热销商品往往是加快企业资金流动的动力,快速流动的资金可以使企业在一定的时间内取得比其他企业更多的利润。超市营销管理人员在了解热销商品后,可以大量采购热销商品,重新安排热销商品的货架,向更多的客户推销热销商品,便于更多客户的购买,以进一步加快企业资金的流动。7.1.1超市销售数据仓库的需求分析3、超市商品采购分析7.1.1超市销售数据仓库的需求分析74、超市客户关系分析用80:20理论分析,占企业客户群20%左右的客户购买金额往往占据了企业销售金额的80%。对客户群体的划分有利于企业了解企业的主要客户群体状况、主要客户群对企业销售服务的需求状况、不同客户群为企业所带来的利润状况。在对客户进行类型划分的基础上,可以针对不同客户群体的特点采用不同的营销策略,对客户群体的消费进行合理的引导。超市客户的流失,意味着企业赢利的降低。企业管理者希望了解哪些客户可能会流失,使企业能够提前设法挽留客户。7.1.1超市销售数据仓库的需求分析4、超市客户关系分析7.1.1超市销售数据仓库的需求分析87.1.2超市销售数据仓库E-R模型构造数据仓库设计中需首先考虑营销主题的设计,确定超市营销主题模型。

雪花模型通过对维表的分类细化描述,对于主题的分类详细查询具有良好的响应能力。但是雪花模型的构造在本质上是一种数据模型的规范化处理,会给数据仓库操作带来不同表的连接困难。在对维度表进行维护时,可能需要对大量重复值进行修改。星型模型通过对维表的冗余应用,以牺牲维表空间来换取数据仓库的高性能与易使用的优势。因此,拟采用星型模型,而不采用雪花模型。7.1.2超市销售数据仓库E-R模型构造数据仓库设计中需首97.1.3超市数据仓库事实表模型需要确定数据仓库中多大的粒度数据才能满足管理人员对数据仓库营销策划分析的需要。超市商品销售主题中,最理想的原子数据是来自POS机上的每个销售事务数据分析超市高层管理人员通过哪些角度,即需要通过那些维度来考察、选择营销方案。一般情况下,在确定超市营销策划时,超市管理人员需要通过日期、商品、门市、促销和客户五个维度对促销方案进行分析,了解促销方案的可用性和效果7.1.3超市数据仓库事实表模型需要确定数据仓库中多大的粒10日期商品促销客户门市商品营销超市营销数据仓库事实表模型

日期商品促销客户门市商品营销超市营销数据仓库事实表模型11超市营销数据仓库事实表模型

超市营销主题日期关键字门市关键字商品关键字促销关键字商品销售编号商品销售量商品销售额商品成本商品销售利润日期维日期关键字商品维商品关键字门市维门市关键字促销维促销关键字客户维客户关键字超市营销数据仓库事实表模型超市营销主题日期维商品维门市维促12超市营销数据仓库事实表模型

从销售系统中,可直接获取商品销售量、销售单价、商品成本等数据。管理人员考察超市的营销策略时,需要考虑营销策略和相应的商品销售利润。商品销售利润可以直接通过商品销售量、销售单价和商品成本计算获得。商品销售利润具有良好的可加性,管理人员又经常需要查看。将利润数据存放在事实表中,可大大减少数据仓库工作时的工作量,还可以保证所有用户在使用商品销售利润这一重要数据时的一致性。超市营销数据仓库事实表模型从销售系统中,可直接获取商品销售13超市营销数据仓库事实表模型

商品销售单价对于计算商品利润十分重要,但将某个商品一段时间内的所有销售单价相加是毫无意义的。管理人员可能只对某一时间段内某个商品的平均销售价感兴趣。平均销售价格可以用该时间段内的商品销售额除以商品销售量获取。在事实表中可以不用商品销售单价,代之以商品销售额。销售额往往是管理人员衡量营销策略好坏的重要指标。超市营销数据仓库事实表模型商品销售单价对于计算商品利润十分14超市营销数据仓库事实表模型

超市管理者还可能对商品销售的利润率感兴趣,该数据可以用商品销售利润除以销售额获得,该数据不是一个可加数据。将比率或百分数的数据进行相加,所获得的数据是没有什么意义的。管理人员在了解某一时期某些商品的利润率时,完全可以利用该时期该商品利润和销售额获得。因此,事实表中确定度量数据为商品销售量、商品销售额、商品成本和商品销售利润。超市营销数据仓库事实表模型超市管理者还可能对商品销售的利润157.1.4超市数据仓库维表模型设计1.日期维日期维模型是许多数据仓库应用中的常用维度,其设计方式与其他多数维模型有差别。具体设计时,日期维可以存放以日期表示的5-10年的数据行,也可以将3-4年的数据行作为日期维内容。如果对10年的每一天都进行存储,也只需要3650行。日期维的每列由行所代表的特定日期进行定义。“星期”列含有像“星期一”这样的名称内容。该列可用于创建比较“星期一”与“星期日”销售情况对比的查询。日历日期编号从1开始取值,然后根据月份的情况取到28、29、30或者31。这一列主要用于对每个月的同一天进行比较。同样,可以给出日历的周编号和月编号。7.1.4超市数据仓库维表模型设计1.日期维167.1.4超市数据仓库维表模型设计纪元表示法采用从某纪元开始连续对日期进行计数的方法来给出日编号,在表中还可以给出“星期”与“月份”的绝对编号列。这些数据支持跨年度、跨月份的简单数据运算。在生成报表时,经常要给出像“一月”这样的月份名称。因此,为报表确定一个“年月”(YYYY-MM)列标题也有必要。报表中很可能需要季度编号(Q1,…,Q4)或年季度编号列。如果企业的财政年度与日历表周期上不一致,还需要为财政年度给出类似列。7.1.4超市数据仓库维表模型设计纪元表示法采用从某纪元开177.1.4超市数据仓库维表模型设计在“节假日”列中,给出“节假日”或者“非节假日”的内容。维表属性作为数据分析的导航,简单地在“节假日”列中给出“Y”或者“N”对数据分析没有多大用处。例如,在生成某种商品的节假日与非节假日销售情况比较查询时,列中给出“节假日”或者“非节假日”这样有意义的值要比一个简单的“Y”或者“N”之类的值有用得多。7.1.4超市数据仓库维表模型设计在“节假日”列中,给出“18“星期六”与“星期日”要归入“周末”列。当然可以对多个日期表属性进行共同约束,从而能够实现一些像平日假期销售与周末假期销售进行比较的数据仓库应用。“销售时节”列应设置为销售时节的名称,例如,春节、情人节、端午节、五一节、国庆节、中秋节、重阳节、圣诞节、或者标为“不是”。“重大事件”列与“销售时节”列情形类似,可以标记为“周日大采购”或者“中秋合家欢”这样与日期有特殊联系的促销事件。一般性的促销活动通常不放在日期表中处理,以促销维表的形式进行更加完整的描述。因为促销事件并不是仅仅由日期来定义,通常还需要由日期、商品与商店的组合来定义。7.1.4超市数据仓库维表模型设计“星期六”与“星期日”要归入“周末”列。当然可以对多个日期表19日期维度销售事实日期关键字日期关键字星期商品关键字日历日期编号门市关键字日历周编号促销关键字日历月编号客户关键字纪元日编号POS事务编号纪元周编号销售量纪元月编号销售额财政月日编号成本额年度日历周数利润金额年度日历月数日历年月(YYYY-MM)日历季度日历年季度日历半年度日期维度销售事实日期关键字日期关键字星期商品关键字日历日期编20日历年财政周年度财政周数财政月年度财政月数财政年月财政季度财政年季度财政半年度财政年节假日指示符星期指示符销售时节重大事件……日历年财政周年度财政周数财政月年度财政月数财政年月财政季度财217.1.4超市数据仓库维表模型设计2.商品维一般超市门市可能存储60000个商品编号,但大型连锁超市保留不再销售的历史商品营销方案情况,商品维度可能至少需要150000行,乃至多达百万行。

商品维度数据主要来源于业务系统的商品主文件。超市总部对所销售商品的主文件进行统一管理。商品主文件的一个重要作用,就是维护每个商品存储标志的许多描述属性。商品维是一组重要的属性。某个商品种类包含多个商品子类,商品子类包含多个商标,商标包含多个商品存储标志。还应包含描述商品形状或存储位置的层次属性,例如商品的包装类型、包装尺寸、包装数量、托盘中的包装数,以及与商品存储的层次:存储类型、货架结构等维度。

7.1.4超市数据仓库维表模型设计2.商品维223.门市维门市维表用于描述超市的各个链锁店。门市维表是基本的地理维度,每个门市可被看成一个位置。这样,可以由门市形成诸如街道、邮政编码、县、市、省这样的任意地理属性。对每个门市来说,地理体系与门市地区体系都有良好的定义。在连锁超市所使用的门市维表中有建筑面积、金融服务、最早开业时间等描述特定门市的文字描述。描述销售面积的列应该是数字型的,并且在理论上是跨门市可相加的,以表示某一地区的销售面积。它是门市的一个不变属性,通常作为报表约束或者行标题使用。而且为了能够分析不同种类商品对超市销售利润的贡献情况,还需要设立不同商品的销售面积。7.1.4超市数据仓库维表模型设计3.门市维7.1.4超市数据仓库维表模型设计234.促销维超市的促销方案可能包含:临时降价、柜台展销、报纸广告与优惠券发放等。促销维应该可以反映商品促销方案的成效。促销的成效评估因素:促销商品的销售是否在促销区间出现增长、是否在促销进行之前或者随后出现减少状况;是否发生促销商品的销售出现增长,而临近货架上的其他商品销售却呈现出相应的降低情况(同类相食);促销类别中所有商品的销售是否都经历了一个实际的总体增长;促销是否赢利。促销利润的计算要考虑促销类别的利润增量与时间过渡、同类调剂以及销售底线等各种情况。7.1.4超市数据仓库维表模型设计4.促销维7.1.4超市数据仓库维表模型设计24在促销维度中,为促销出现的每种组合都建立一行记录是很有意义的。在一年的销售活动中,可能出现1000个广告、5000次临时降价和1000次柜台展销,但可能只有10000个促销组合能影响某一特定商品。例如,在某给定维度中,大多数门市都会同时运作所有促销售手段,而只有少数几个门市不进行柜台展销。在这种情况下,就需要两个单独的促销记录行:一个用于通常的降价并外加广告与柜台展销,而另一个用于降价并外加单纯的广告。7.1.4超市数据仓库维表模型设计在促销维度中,为促销出现的每种组合都建立一行记录是很有意义的25超市的主要促销方式是降价、广告、柜台展销与优惠券。超市的促销维度可以包含促销名称、减价类型、促销媒体类型、广告类型和优惠券类型等。如果将这些因素分别建立促销维度,就可以记录分析这些促销方法非常相似的信息,使用户更加容易理解促销方案的作用。但是将所有的促销因素合并在一个维表中,则能够方便用户的浏览,能够弄清各种不同的价格降低、广告、展销与优惠券是如何在一起共同发挥促销作用的。7.1.4超市数据仓库维表模型设计超市的主要促销方式是降价、广告、柜台展销与优惠券。超市的促销265.客户维超市的客户维度可以包含客户账号、姓名、地址、所在地区、邮政编码、电子信箱、电话、日常活动范围、出生日期、收入、孩子数量、住房和汽车等内容。客户维中的地址由于客户可能会给出其家庭地址、工作地址或其它一些常用地址,因此在维表中可以设置4个地址,对于电话的设置也是出于相同因素的考虑。在数据仓库的应用中,有时需要对客户按照不同的地区进行分析,为此,在维表中就按照省、市、县(区)邮政编码进行地区的设置。性别、婚姻状况、家庭人口、住房条件和自有汽车情况均是超市销售管理人员对超市营销策略进行分析的主要依据。出于超市营销策略制定的考虑,还需要了解客户的日常活动范围,以便有针对性地进行促销广告的发送。7.1.4超市数据仓库维表模型设计5.客户维7.1.4超市数据仓库维表模型设计277.1.5超市数据仓库模型的关键字设计采用代理关键字技术,而不是依赖业务系统中的各种关键字(许多业务系统中的各种编码往往具有某种特定的含义)代理关键字一般采用填充维度时按需要而顺序分配的整数值。例如,为第一条商品记录分配一个值为1的商品代理关键字,第二条分配2,第n条分配n等。代理关键字仅仅用于维度表到事实表的连接。

代理关键字的好处还在于,它能够对数据仓库环境的操作型变化进行缓冲,不会受到商品编码生成、更新、删除、再生与重用等操作型规则的妨碍。代理关键字允许数据仓库对来自多个业务型系统的数据进行合并,即使它们之间缺乏一致的源关键字也无所谓。7.1.5超市数据仓库模型的关键字设计采用代理关键字技术,28使用代理关键字还可以获得性能上的优势。代理关键字可能只有一个整数所占据的空间大小,却能确保充裕地容纳维度行以后可能需要的序号或者最大编号。而业务型编码常常是一个混合了字母与数字的区间编码体系。代理关键字还能够用于记录那些诸如“不在促销之列”这样的可能在业务系统中没有编码的维度情形。通过对数据仓库的关键字施加控制,就能够做到不管是否缺少业务型编码,总可以分配一个代理关键字将这类情况标识出来。将代理日期关键字处理成日期序号,可以允许事实表在日期关键字基础上进行物理分区。7.1.5超市数据仓库模型的关键字设计使用代理关键字还可以获得性能上的优势。代理关键字可能只有一个29目前在超市数据仓库中已经包含了6个实际的表:营销事实表与日期、商品、门市、促销和客户维表。每个维表有一个主关键字,而事实表除了有一个退化的销售事务编号之外,还有由五个外关键字组成的一个复合关键字。如果五个关键字都是进行了紧凑处理的连续整数,那么仅仅需要为所有五个关键字保留18个字节的小存储空间(日期、商品、促销和客户维各用4个字节,而门市用2个字节)。同时,销售事务编号可能另外需要8个字节。如果事实表4类事实(销售量、销售额、成本和利润)中的任何一个都是4字节的整数,则仅仅需要再保留另外的16个字节,这样事实表只有42个字节宽。对一个10亿行的事实表也只占用大约42GB的存储空间,就可以存储所有事实数据。7.1.5超市数据仓库模型的关键字设计目前在超市数据仓库中已经包含了6个实际的表:营销事实表与日期307.1.6超市数据仓库元数据设计销售主题元数据名称Sales描述整个超市中每个门市中每个POS机所记载的商品销售状况目的用于进行超市销售状况和促销情况的分析联系人各个门市销售经理维时间、商品、客户、商店、促销事实表销售事实表度量值销售成本、销售额、销售利润、销售量7.1.6超市数据仓库元数据设计销售主题元数据名称Sal31销售事实元数据名称Sales_Fact_年份描述记录每个门市每个POS机所发生的销售数据目的作为销售主题的分析事实使用状况每天平均查询次数每天平均查询返回行数每天查询平均执行时间(分钟)每天最大查询次数每天查询返回最大行数每天查询最大执行时间(分钟)存档规则每个月将前36个月的数据存档存档状况最近存档处理日期已经存档数据日期更新规则每个月将前60个月的数据从数据仓库中删除更新状况最近更新处理日期已更新数据日期销售事实元数据名称Sales_Fact_年份描述记录每个门市32数据质量要求及确认由于从各个门市POS机上所产生的数据可能会由于极少的人工输入,而使数据质量不能得到保证,但也真实地反映了销售现状,不能随意修改,应被认可。数据准确性要求必须百分之百地反映各个门市销售状况数据粒度要求能够反映每一项商品的销售状况,不对数据进行汇总表键事实表的键(关键字)是时间、商品、客户、商店和促销维中键的组合数据来源超市销售业务系统中的销售表加载周期每天一次加载状况最后加载日期加载的行数加载规则每天清晨3:00将各个超市门市中前一天的销售事实数据拷贝到本表,拷贝过程中要根据各个数据成员所定义的加载规则进行筛选和清理销售事实元数据数据质量要求及确认由于从各个门市POS机上所产生的数据可能会33维元数据

名称客户(Customer)定义从超市任何一个门市购买货物的任何个人或组织都称为客户。一个客户可以与多个销售地区发生联系(即出现在地理维的不同层次体系中)层次结构一个客户的数据可以在3个级别上进行统计:最低级别是出现在客户所在的县/区,其上为市、省更改规则新的客户位置作为新的一行插入维中。对已有位置的修改,则在原处更新加载频率每天一次加载统计数据最后加载日期加载的行数使用的统计数据每天平均查询个数每天查询返回的平均行数每天查询平均执行时间(分钟)每天最大的查询个数每天查询返回的最大行数每天查询执行的最长时间(分钟)维元数据名称客户(Customer)定义从超市任何一个门市34存档规则每个月将前36个月的数据存档已存档数据日期更新规则每个月将前60个月的数据从数据仓库中删除更新状况最近更新处理日期已经更新数据日期数据质量增加一个新客户时,先检查是否已在其他地方和该客户做过交易。少数情况下,由于检查失败,会将一个客户的不同部门作为不同客户保存。地区属性并不是销售业务系统原有的,而是根据送货地址属性中的邮政编码进行区分数据的准确程度一个客户与其地理位置的关联出错的可能性在某一百分比以下,该百分比大小要根据对业务数据的研究情况确定关键字客户维的关键字是系统产生的数字维元数据

存档规则每个月将前36个月的数据存档已存档数据日期更新规则每35产生关键字的方法从销售业务系统中拷贝一个客户时,将检查转换表,检查该客户是否已经存在于数据仓库中。如果否,就产生一个新的关键字。然后将这个关键字和销售业务系统中的Custom~ID和地区ID插入转换表中。如果该客户和位置已经存在于转换表,则根据表中的关键字决定数据仓库中要更新的记录源表名称超市销售业务系统中的Customer表加载规则每天拷贝每个Customer表中的行。对于已存在的客户进行更新。对于新客户,确定其所在地理位置之后,产生一个关键字,然后插入一行新记录。在更新/插入操作之前,需要检查是否有重复的客户名。如果有,则在客户名后增加一个顺序号,直到名字以及名字和顺序号的组合都没有重复为止。加载规则只选择新的和发生变化的行源表名称Customer_Location表转换规则每天拷贝一次Customer_Location表。对于已存在的客户,更新其送货地址;对于新客户,则产生一个键,并插入一行。维元数据

产生关键字的方法从销售业务系统中拷贝一个客户时,将检查转换表36数据成员元数据

名称客户关键字(Customer_ID)定义用以唯一标识客户和位置的值更新规则一旦分配,就不改变数据类型数值型值域1—999,999,999产生规则由系统自动产生,将当前最大值增l来源系统自动生成数据成员元数据名称客户关键字(Customer_ID)定义37名称客户名称(Customer_Name)定义客户的名称更新规则客户名称发生改变时,就在原来的记录上更新数据类型Char(30)值域保证能区分不同客户的名称。对不同而具有相同名称的客户,可在名称后依次加1来区分相同名称来源超市销售业务系统中Customer表中的Name产生规则对于零售客户,其名称由姓和名组成,或者是客户1、客户2形式。对于公司,则将公司名作为客户名称数据成员元数据

名称客户名称(Customer_Name)定义客户的名称更新387.2数据仓库开发工具简介7.2.1数据仓库开发工具目前已有许多数据仓库开发工具供应商,可以提供各种构建数据仓库的工具。但有些数据仓库开发工具还要结合第三方供应商工具才能完成整个数据仓库的构建。1.Oracle数据仓库开发工具Oracle9i:数据仓库构建体系的核心;OracleWarehouseBuilder:可以进行数据建模、数据抽取、数据转移和装载、聚合及元数据管理;OracleDiscoverer:能够为最终用户提供查询、报告、下钻、旋转和WEB公布工具;OracleDarwin:提供决策树、神经网络等多种数据挖掘方法,可以对数据仓库进行数据挖掘,具有简单易用的图形化界面,支持海量数据并行处理,可进行结果分析和系统集成。7.2数据仓库开发工具简介7.2.1数据仓库开发工具392.IBM数据仓库开发工具基于可视数据仓库的商业智能(BI)解决方案,具有集成能力强,面向对象SQL等特性。其中VisualWarehouse(VW)是一个功能很强的集成环境,可用于数据仓库建模和元数据管理,又用于数据抽取、转换、装载和调度。Essbase/DB2OLAPServer支持多维数据库。它是一个(ROLAP和MOLAP)混合的HOLAP服务器,在Essbase完成数据装载后,数据存放在系统指定的DB2UDB数据库中QUEST是一个多任务数据挖掘系统,提供多种开采功能,其挖掘算法可适用于任意大小的数据库。2.IBM数据仓库开发工具基于可视数据仓库的商业智能(BI)403.Sybase数据仓库开发工具Sybase数据仓库解决方案能够支持多种关系型数据库,能够同时处理几十个即席查询。其中:Bit_Wisc技术和垂直数据存储技术使系统可以只访问特定的少量数据。WarehouseArchitect是PowerDesigner中的一个设计模块。利用该模块,数据集市或数据仓库设计者可以自动地对已有的关系数据库进行目标数据库设计、物理设计和DDL设计。PowerStage、ReplicationServer、CarletonPASSPORT是数据抽取与转换工具。AdaptiveServerIQ是专为数据仓库设计的关系数据库。3.Sybase数据仓库开发工具Sybase数据仓库解决413.Sybase数据仓库开发工具PowerDimensions、EnglishWizard、InfoMaker、PowerDynamo是数据分析与展现工具。WarehouseControlCenter、SybaseCentral、DistributionDirector是数据仓库的维护与管理工具。IndustryWarehouseStudio包括相应行业所需的商业智能应用软件和数据分析模型,可以针对不同行业进行业绩分析、促销活动分析、销售分析和收益分析等,具有数据仓库设计、元数据管理等功能、支持广泛的应用软件和报表,并提供WarehouseStudio的设计工具、WarehouseControlCenter等工具。3.Sybase数据仓库开发工具PowerDimensio424.Informix数据仓库开发工具FastStart数据仓库解决方案,可以快速便捷地设计开发具有可伸缩性的数据仓库或数据集市。采用ROLAP的星型模式与InformixIDS、IDS/AD紧密集成,提供预先汇总、抽样、后台查询等性能优化手段。Informix产品还能够集成MicrosoftIIS或NetscapeEnterprise/FastTrack服务器,从而支持web访问。MetaCubeROLAPOption为基于Informix的数据仓库或数据中心提供了全面、简便易用、可扩展和自动化的商业分析环境。InformixInfoMover是一套集成工具,用于从多个工作资源中抽取、转换和维护数据。SeagateCrystalInfo是企业级报表、分析系统。IDS以及AD/XP选项是Informix数据仓库系统的核心,提供数据仓库数据的存储功能。Informix没有提供自己的报表和数据挖掘工具,主要集成第三方产品(例如Brio的前端数据分析和报表功能,SAS的数据挖掘功能)。4.Informix数据仓库开发工具FastStart数据435.NCR数据仓库开发工具NCR可扩展数据仓库的基本框架主要分成三个部分:数据装载、数据管理和信息访问。NCR的Teradata是高端数据仓库市场最有力的竞争者,主要运行在NCRWorldMarkSMP海量并行服务器的Unix操作系统平台上,提供交互分析、标准报告和多维度分析。为了开拓数据集市(DataMart)市场,1998年该公司也提供了基于WindowsNT的Teradata。5.NCR数据仓库开发工具NCR可扩展数据仓库的基本框架主要446.SAS数据仓库开发工具SAS公司所提供的工具(例如:智能化的客户机/服务器,多厂商构架等)可以帮助企业实现一个灵活和低风险的处理。SAS数据仓库可以支持各种硬件平台、支持不同数据库之间数据的存取,它还可对不同格式的数据进行查询、访问和分析,具有与目前许多流行数据库软件和老的数据文件的接口,并可在SAS环境中建立对应外部异构数据的统一公用数据界面。SAS提供的工具包括30多个专用模块。其中:SAS/WA(WarehouseAdministrator)是建立数据仓库的集成管理工具,包括定义主题、数据转换与汇总、更新汇总数据、元数据管理和数据集市的实现等;SAS/MDDB是SAS用于在线分析的多维数据库服务器。6.SAS数据仓库开发工具SAS公司所提供的工具(例如:智能457.CA数据仓库开发工具CA能够提供以元数据为核心的、结构化的、包容构造数据仓库各项技术的全面解决方案。它具有独特的元数据管理与应用特性,具有用三维可视化技术解析处理的功能。CA解决方案提供ODBC接口,并将数据存储在第三方关系数据库(如Oracle、Sybase、SQLServer、Informix和IBMDB2等)中。Erwin是数据库/数据仓库模型设计工具;

DecisionBase是图形界面的元数据管理和数据转移工具;

InfoPump是可编程控制的双向数据转移工具;

InfoBeacon是OLAP服务器;

Forest&TreesDSS/EIS是开发工具;

Repository是企业环境下元数据的集中管理工具。7.CA数据仓库开发工具CA能够提供以元数据为核心的、结构化467.2.2SQLServer数据仓库开发应用工具SQL的数据仓库开发工具数据仓库工具名称在数据仓库中的作用关系型数据库数据转换工具数据复制工具OLEDBAnalysisServicesEnglishQueryMetaDataServicesPivotTable数据仓库的创建和维护数据仓库的数据加载分布式数据仓库的数据发布、加载应用系统与数据源的接口数据挖掘与分析数据仓库的语言查询数据仓库的元数据浏览客户端多维数据的定制与操作7.2.2SQLServer数据仓库开发应用工具SQL的47数据仓库和决策支持系统课件484.清理和转换数据SQLServer提供了Transact-SQL查询、DTS包、命令行应用程序、ActiveX脚本等工具完成清理工作,并对数据进行必要的转换。5.将数据加载进数据仓库SQLServer提供的Transact-SQL、DTS和bcp工具实现数据加载。6.将数据发布到数据集市SQLServer提供了数据复制技术来完成数据集市的初始装载,并提供了各种数据加载工具对数据集市进行数据加载。4.清理和转换数据497.SQL查询SQLServer提供了Transact-SQL来实现SQL查询。8.OLAP应用SQLServer中的AnalysisServices可以实现OLAP应用的创建和管理。9.数据挖掘SQLServer的AnalysisServices还提供了数据挖掘技术的创建和管理功能,可以实现决策树和聚集两种数据挖掘功能。7.SQL查询5010.Web访问SQLServer所提供的AnalysisServices、EnglishQuery可以与IIS(Internet信息服务)一起,用多种方法在Web上对数据仓库进行查询和更新。11.更新数据仓库数据数据仓库在实际应用中还需要定期地进行数据更新维护,这些工作可以用SQLServer的Transact-SQL、DTS和bcp实用工具完成。10.Web访问517.3SQLServer的数据仓库创建7.3.1创建物理数据库右键单击’数据库’,选择弹出菜单中’新建数据库’菜单项命令选择’数据库’,单击单击建立数据库星型按钮建立数据库按钮,建立数据库SQLServerEnterpriseManager7.3SQLServer的数据仓库创建7.3.1创52数据库属性设置窗口

数据库属性设置窗口537.3.2创建表在“表”上用鼠标右键单击,调出弹出式菜单,选择其中的“新建表”菜单项。7.3.2创建表在“表”上用鼠标右键单击,调出弹出式菜单54表结构输入窗口

表结构输入窗口557.4SQLServer数据仓库访问与操纵7.4.1AnalysisManager数据库的创建与数据源确定AnalysisServer系统是一个管理多维数据集的有力工具,可以用来创建对数据仓库访问、分析多维数据集和知识发现的数据挖掘模型。在使用AnalysisServer以前,必须要从SQLServer的安装光盘上将其安装到机器上。1.AnalysisManager数据库的创建用户可以利用AnalysisManager在数据仓库中建立起多维数据集合,以有效地访问数据仓库中数据。

7.4SQLServer数据仓库访问与操纵7.4.1561.AnalysisManager数据库的创建5个对象:数据源多维数据集共享维度挖掘模型数据库角色AnalysisManager1.AnalysisManager数据库的创建5个对象572.AnalysisManager中ODBC数据源的确定

2.AnalysisManager中ODBC数据源的确58进入“数据链接属性”对话框

进入“数据链接属性”对话框59在连接数据源时,要求用户给出用户名和口令时,就需要在输入登录服务器的信息部分的“用户名称”文本框中输入用户名,“口令”文本框中输入口令。复选框“空白密码”用于禁止输入口令,“允许保存密码”用于使机器保存用户口令。在“输入要使用的初始目录”下拉列表框中选择相应的位置。完成这些设置后,可以单击“测试连接”按钮,测试连接是否成功,测试结果将以对话框方式告知。在连接数据源时,要求用户给出用户名和口令时,就需要在输入登录60高级标签页用于设置一些连接数据源的高级选项。网络设置:用于设置用户连接网络的网络安全等级;连接超时:设定文本框设置连接超时的时间(秒);访问权限列表框:设置连接数据源的7种权限:只读(Read)、读写(ReadWrite)、可写(Write)可共享(ShareDenyNone)、除读以外的共享(ShareDenyRead)、除写以外的共享(ShareDenyWrite)、排他共享(ShareExclusive)。在所有标签页中,用一个列表框显示了前面所进行的设置内容,如果对设置不满意,可以单击“编辑值”按钮,编辑这里的设置。完成设置后,可以单击“确定”按钮完成数据源指定操作。高级标签页用于设置一些连接数据源的高级选项。61“高级”标签页“高级”标签页62“所有”标签页“所有”标签页63销售事实元数据3.AnalysisManager中SQLServer数据源的确定可以选择系统自带的Access数据库FoodMart2000完成数据连接属性的设置后,可以单击其中的“测试连接”按钮销售事实元数据3.AnalysisManager中SQL64“高级”标签页“高级”标签页65“所有”标签页“所有”标签页667.4.2SQLServer数据仓库的维创建1.调出维度向导欢迎对话框7.4.2SQLServer数据仓库的维创建1.调出67维度向导欢迎对话框图维度向导欢迎对话框图682.“选择维度的创建方式”对话框在维度向导欢迎对话框中单击“下一步”,调出“选择维度的创建方式”对话框。该对话框中包含5种维结构选项:星型架构、雪花架构、父子维度、虚拟维度、挖掘模型。星型架构可以从一个表中选择一列或几列,每一个列都可以作为维的一个层次。如果选择多个列,列就要有一种逐渐变化的信息。例如,可以选择商店所在省、商店所在市、商店所在县/区、商店名称作为商店维的层次。选择年、季度、月作为日期维的层次。选择省、市、县、姓名作为客户维的层次;2.“选择维度的创建方式”对话框在维度向导欢迎对话框中单击“69“选择维度的创建方式”对话框“选择维度的创建方式”对话框702.“选择维度的创建方式”对话框雪花架构可以创建多个相关的维表,从多个维表中可以选择一个或多个列,每一个列都可以作为维的一个层次。在建立商品维时就采用了雪花结构,选择商品表和商品类型表中的商品种类、商品子类、商标名称作为商品维的层次;父子维度要从一个表中选两列,一列为维成员,另一列为父成员。例如,用雇员和管理者可以创建一个组织维;虚拟维度中的维成员来自另一个维中的成员,数据在运行时才计算,不占用磁盘空间;挖掘模型需要用一个列和一种数据挖掘工具来构造。选择星型架构后,单击“下一步”按钮,进入“选择维度表”对话框。

2.“选择维度的创建方式”对话框雪花架构可以创建多个相关的维71“选择维度表”对话框建立客户维时,可以选择customer表;建立日期维时,可以选择time_by_day表;建立商店维时,可以选择Store表;建立商品维时,可以选择product表和product_class表;“选择维度表”对话框建立客户维时,724.“选择维度类型”对话框4.“选择维度类型”对话框735.“选择维度的级别”对话框客户维选择省、市、县区、姓名列,商店维则选择商店所在省、商店所在市、商店所在县/区、商店名称列。日期维则选择年、月、日列。商品维选择商品种类、商品子类和商品名称列。5.“选择维度的级别”对话框客户维选择省、市、县区、姓名746.“指定成员键列”对话框6.“指定成员键列”对话框757.“选择高级选项”对话框7.“选择高级选项”对话框768.“指定排序依据和唯一性”对话框8.“指定排序依据和唯一性”对话框779.“指定存储模式和成员分组”对话框9.“指定存储模式和成员分组”对话框7810.“设置可更改属性”对话框10.“设置可更改属性”对话框7911.向导结束对话框11.向导结束对话框8012.“维度编辑器”窗口

12.“维度编辑器”窗口817.4.3SQLServer的多维数据集创建1.进入多维数据集创建7.4.3SQLServer的多维数据集创建1.进入多822.“从数据源选择事实数据表”对话框2.“从数据源选择事实数据表”对话框833.“选择用于定义度量列的数字列”对话框3.“选择用于定义度量列的数字列”对话框844.“选择多维数据集的维度”对话框4.“选择多维数据集的维度”对话框855.“多维数据集向导完成”对话框5.“多维数据集向导完成”对话框866.多维数据集编辑框

6.多维数据集编辑框877.“设计存储”提示对话框7.“设计存储”提示对话框888.“存储设计向导”欢迎对话框8.“存储设计向导”欢迎对话框899.“选择数据存储类型”对话框

9.“选择数据存储类型”对话框9010.“设置聚合选项”对话框----自动进行查询优化10.“设置聚合选项”对话框----自动进行查询优9111.“存储向导完成”对话框11.“存储向导完成”对话框9212.“存储向导完成”处理对话框12.“存储向导完成”处理对话框93AnalysisManager的多维数据集浏览

AnalysisManager的多维数据集浏览94数据仓库和决策支持系统主讲:鲁明羽大连海事大学计算机科学与技术学院研究方向:智能数据分析与数据挖掘电话mail:lumingyu@数据仓库和决策支持系统主讲:鲁明羽大连海事大学计算机科学与技95第7章数据仓库开发实例

第7章数据仓库开发实例96目录

7.1超市销售数据仓库的规划与分析7.2数据仓库开发工具简介

7.3SQLServer的数据仓库创建7.4SQLServer数据仓库事实表与多维数据集的建立目录7.1超市销售数据仓库的规划与分析977.1超市销售数据仓库的规划与分析

某大型连锁超市的业务涵盖于3个省范围内的1000多家门市。每个门市都有较完整的日用品和食品销售部门,包括百货、杂货、冷冻食品、奶制品、肉制品和面包食品等,大约5万多种,其中大约45000种商品来自外部生产厂家,并在包装上印有条形码。每个条形码代表了唯一的商品。为该超市建立一个能够提高市场竞争能力的数据仓库,首先需要进行数据仓库的规划分析。这就涉及到对数据仓库的需求分析、模型构建两个过程。7.1超市销售数据仓库的规划与分析某大型连锁超市的业务涵987.1.1超市销售数据仓库的需求分析1、超市营销售策略分析超市最高层管理所关注的是如何通过商品的采购、储存与销售,最大限度地获取利润。需要通过加强对每种商品的管理,降低商品的采购成本和管理费用,吸引尽可能多的客户。其中最重要的是关于商品促销的管理决策。需要依靠合适的促销活动,应用适当的促销策略针对合适的客户,以增加超市的销售利润,是超市数据仓库建设的基本需求。超市不同商品的销售利润是有差别的。希望在数据仓库中通过对商品的赢利分析,了解不同商品的销售赢利状态,以确定企业的销售重点,对那些可以为企业带来较大赢利的商品加大促销力度。7.1.1超市销售数据仓库的需求分析1、超市营销售策略分析997.1.1超市销售数据仓库的需求分析2、超市商品库存分析超市商品的库存状况对超市的利润具有巨大的影响。超市如果能够在合适的时候销售合适的商品,在不出现脱销的情况下尽可能减少商品库存的库存成本,是超市商品库存分析的主要目的。在商品库存分析中,管理人员还经常要根据商品的库存量和商品库存成本确定商品的销售价格。从超市的商品库存情况来看,库存分析实质上是对超市的价值链进行分析,分析商品库存环节在超市的整个价值链上所发挥的作用。7.1.1超市销售数据仓库的需求分析2、超市商品库存分析1003、超市商品采购分析超市在商品采购工作中需要分析哪些商品是热销的商品,尽可能采购销售热销商品。热销商品往往是加快企业资金流动的动力,快速流动的资金可以使企业在一定的时间内取得比其他企业更多的利润。超市营销管理人员在了解热销商品后,可以大量采购热销商品,重新安排热销商品的货架,向更多的客户推销热销商品,便于更多客户的购买,以进一步加快企业资金的流动。7.1.1超市销售数据仓库的需求分析3、超市商品采购分析7.1.1超市销售数据仓库的需求分析1014、超市客户关系分析用80:20理论分析,占企业客户群20%左右的客户购买金额往往占据了企业销售金额的80%。对客户群体的划分有利于企业了解企业的主要客户群体状况、主要客户群对企业销售服务的需求状况、不同客户群为企业所带来的利润状况。在对客户进行类型划分的基础上,可以针对不同客户群体的特点采用不同的营销策略,对客户群体的消费进行合理的引导。超市客户的流失,意味着企业赢利的降低。企业管理者希望了解哪些客户可能会流失,使企业能够提前设法挽留客户。7.1.1超市销售数据仓库的需求分析4、超市客户关系分析7.1.1超市销售数据仓库的需求分析1027.1.2超市销售数据仓库E-R模型构造数据仓库设计中需首先考虑营销主题的设计,确定超市营销主题模型。

雪花模型通过对维表的分类细化描述,对于主题的分类详细查询具有良好的响应能力。但是雪花模型的构造在本质上是一种数据模型的规范化处理,会给数据仓库操作带来不同表的连接困难。在对维度表进行维护时,可能需要对大量重复值进行修改。星型模型通过对维表的冗余应用,以牺牲维表空间来换取数据仓库的高性能与易使用的优势。因此,拟采用星型模型,而不采用雪花模型。7.1.2超市销售数据仓库E-R模型构造数据仓库设计中需首1037.1.3超市数据仓库事实表模型需要确定数据仓库中多大的粒度数据才能满足管理人员对数据仓库营销策划分析的需要。超市商品销售主题中,最理想的原子数据是来自POS机上的每个销售事务数据分析超市高层管理人员通过哪些角度,即需要通过那些维度来考察、选择营销方案。一般情况下,在确定超市营销策划时,超市管理人员需要通过日期、商品、门市、促销和客户五个维度对促销方案进行分析,了解促销方案的可用性和效果7.1.3超市数据仓库事实表模型需要确定数据仓库中多大的粒104日期商品促销客户门市商品营销超市营销数据仓库事实表模型

日期商品促销客户门市商品营销超市营销数据仓库事实表模型105超市营销数据仓库事实表模型

超市营销主题日期关键字门市关键字商品关键字促销关键字商品销售编号商品销售量商品销售额商品成本商品销售利润日期维日期关键字商品维商品关键字门市维门市关键字促销维促销关键字客户维客户关键字超市营销数据仓库事实表模型超市营销主题日期维商品维门市维促106超市营销数据仓库事实表模型

从销售系统中,可直接获取商品销售量、销售单价、商品成本等数据。管理人员考察超市的营销策略时,需要考虑营销策略和相应的商品销售利润。商品销售利润可以直接通过商品销售量、销售单价和商品成本计算获得。商品销售利润具有良好的可加性,管理人员又经常需要查看。将利润数据存放在事实表中,可大大减少数据仓库工作时的工作量,还可以保证所有用户在使用商品销售利润这一重要数据时的一致性。超市营销数据仓库事实表模型从销售系统中,可直接获取商品销售107超市营销数据仓库事实表模型

商品销售单价对于计算商品利润十分重要,但将某个商品一段时间内的所有销售单价相加是毫无意义的。管理人员可能只对某一时间段内某个商品的平均销售价感兴趣。平均销售价格可以用该时间段内的商品销售额除以商品销售量获取。在事实表中可以不用商品销售单价,代之以商品销售额。销售额往往是管理人员衡量营销策略好坏的重要指标。超市营销数据仓库事实表模型商品销售单价对于计算商品利润十分108超市营销数据仓库事实表模型

超市管理者还可能对商品销售的利润率感兴趣,该数据可以用商品销售利润除以销售额获得,该数据不是一个可加数据。将比率或百分数的数据进行相加,所获得的数据是没有什么意义的。管理人员在了解某一时期某些商品的利润率时,完全可以利用该时期该商品利润和销售额获得。因此,事实表中确定度量数据为商品销售量、商品销售额、商品成本和商品销售利润。超市营销数据仓库事实表模型超市管理者还可能对商品销售的利润1097.1.4超市数据仓库维表模型设计1.日期维日期维模型是许多数据仓库应用中的常用维度,其设计方式与其他多数维模型有差别。具体设计时,日期维可以存放以日期表示的5-10年的数据行,也可以将3-4年的数据行作为日期维内容。如果对10年的每一天都进行存储,也只需要3650行。日期维的每列由行所代表的特定日期进行定义。“星期”列含有像“星期一”这样的名称内容。该列可用于创建比较“星期一”与“星期日”销售情况对比的查询。日历日期编号从1开始取值,然后根据月份的情况取到28、29、30或者31。这一列主要用于对每个月的同一天进行比较。同样,可以给出日历的周编号和月编号。7.1.4超市数据仓库维表模型设计1.日期维1107.1.4超市数据仓库维表模型设计纪元表示法采用从某纪元开始连续对日期进行计数的方法来给出日编号,在表中还可以给出“星期”与“月份”的绝对编号列。这些数据支持跨年度、跨月份的简单数据运算。在生成报表时,经常要给出像“一月”这样的月份名称。因此,为报表确定一个“年月”(YYYY-MM)列标题也有必要。报表中很可能需要季度编号(Q1,…,Q4)或年季度编号列。如果企业的财政年度与日历表周期上不一致,还需要为财政年度给出类似列。7.1.4超市数据仓库维表模型设计纪元表示法采用从某纪元开1117.1.4超市数据仓库维表模型设计在“节假日”列中,给出“节假日”或者“非节假日”的内容。维表属性作为数据分析的导航,简单地在“节假日”列中给出“Y”或者“N”对数据分析没有多大用处。例如,在生成某种商品的节假日与非节假日销售情况比较查询时,列中给出“节假日”或者“非节假日”这样有意义的值要比一个简单的“Y”或者“N”之类的值有用得多。7.1.4超市数据仓库维表模型设计在“节假日”列中,给出“112“星期六”与“星期日”要归入“周末”列。当然可以对多个日期表属性进行共同约束,从而能够实现一些像平日假期销售与周末假期销售进行比较的数据仓库应用。“销售时节”列应设置为销售时节的名称,例如,春节、情人节、端午节、五一节、国庆节、中秋节、重阳节、圣诞节、或者标为“不是”。“重大事件”列与“销售时节”列情形类似,可以标记为“周日大采购”或者“中秋合家欢”这样与日期有特殊联系的促销事件。一般性的促销活动通常不放在日期表中处理,以促销维表的形式进行更加完整的描述。因为促销事件并不是仅仅由日期来定义,通常还需要由日期、商品与商店的组合来定义。7.1.4超市数据仓库维表模型设计“星期六”与“星期日”要归入“周末”列。当然可以对多个日期表113日期维度销售事实日期关键字日期关键字星期商品关键字日历日期编号门市关键字日历周编号促销关键字日历月编号客户关键字纪元日编号POS事务编号纪元周编号销售量纪元月编号销售额财政月日编号成本额年度日历周数利润金额年度日历月数日历年月(YYYY-MM)日历季度日历年季度日历半年度日期维度销售事实日期关键字日期关键字星期商品关键字日历日期编114日历年财政周年度财政周数财政月年度财政月数财政年月财政季度财政年季度财政半年度财政年节假日指示符星期指示符销售时节重大事件……日历年财政周年度财政周数财政月年度财政月数财政年月财政季度财1157.1.4超市数据仓库维表模型设计2.商品维一般超市门市可能存储60000个商品编号,但大型连锁超市保留不再销售的历史商品营销方案情况,商品维度可能至少需要150000行,乃至多达百万行。

商品维度数据主要来源于业务系统的商品主文件。超市总部对所销售商品的主文件进行统一管理。商品主文件的一个重要作用,就是维护每个商品存储标志的许多描述属性。商品维是一组重要的属性。某个商品种类包含多个商品子类,商品子类包含多个商标,商标包含多个商品存储标志。还应包含描述商品形状或存储位置的层次属性,例如商品的包装类型、包装尺寸、包装数量、托盘中的包装数,以及与商品存储的层次:存储类型、货架结构等维度。

7.1.4超市数据仓库维表模型设计2.商品维1163.门市维门市维表用于描述超市的各个链锁店。门市维表是基本的地理维度,每个门市可被看成一个位置。这样,可以由门市形成诸如街道、邮政编码、县、市、省这样的任意地理属性。对每个门市来说,地理体系与门市地区体系都有良好的定义。在连锁超市所使用的门市维表中有建筑面积、金融服务、最早开业时间等描述特定门市的文字描述。描述销售面积的列应该是数字型的,并且在理论上是跨门市可相加的,以表示某一地区的销售面积。它是门市的一个不变属性,通常作为报表约束或者行标题使用。而且为了能够分析不同种类商品对超市销售利润的贡献情况,还需要设立不同商品的销售面积。7.1.4超市数据仓库维表模型设计3.门市维7.1.4超市数据仓库维表模型设计1174.促销维超市的促销方案可能包含:临时降价、柜台展销、报纸广告与优惠券发放等。促销维应该可以反映商品促销方案的成效。促销的成效评估因素:促销商品的销售是否在促销区间出现增长、是否在促销进行之前或者随后出现减少状况;是否发生促销商品的销售出现增长,而临近货架上的其他商品销售却呈现出相应的降低情况(同类相食);促销类别中所有商品的销售是否都经历了一个实际的总体增长;促销是否赢利。促销利润的计算要考虑促销类别的利润增量与时间过渡、同类调剂以及销售底线等各种情况。7.1.4超市数据仓库维表模型设计4.促销维7.1.4超市数据仓库维表模型设计118在促销维度中,为促销出现的每种组合都建立一行记录是很有意义的。在一年的销售活动中,可能出现1000个广告、5000次临时降价和1000次柜台展销,但可能只有10000个促销组合能影响某一特定商品。例如,在某给定维度中,大多数门市都会同时运作所有促销售手段,而只有少数几个门市不进行柜台展销。在这种情况下,就需要两个单独的促销记录行:一个用于通常的降价并外加广告与柜台展销,而另一个用于降价并外加单纯的广告。7.1.4超市数据仓库维表模型设计在促销维度中,为促销出现的每种组合都建立一行记录是很有意义的119超市的主要促销方式是降价、广告、柜台展销与优惠券。超市的促销维度可以包含促销名称、减价类型、促销媒体类型、广告类型和优惠券类型等。如果将这些因素分别建立促销维度,就可以记录分析这些促销方法非常相似的信息,使用户更加容易理解促销方案的作用。但是将所有的促销因素合并在一个维表中,则能够方便用户的浏览,能够弄清各种不同的价格降低、广告、展销与优惠券是如何在一起共同发挥促销作用的。7.1.4超市数据仓库维表模型设计超市的主要促销方式是降价、广告、柜台展销与优惠券。超市的促销1205.客户维超市的客户维度可以包含客户账号、姓名、地址、所在地区、邮政编码、电子信箱、电话、日常活动范围、出生日期、收入、孩子数量、住房和汽车等内容。客户维中的地址由于客户可能会给出其家庭地址、工作地址或其它一些常用地址,因此在维表中可以设置4个地址,对于电话的设置也是出于相同因素的考虑。在数据仓库的应用中,有时需要对客户按照不同的地区进行分析,为此,在维表中就按照省、市、县(区)邮政编码进行地区的设置。性别、婚姻状况、家庭人口、住房条件和自有汽车情况均是超市销售管理人员对超市营销策略进行分析的主要依据。出于超市营销策略制定的考虑,还需要了解客户的日常活动范围,以便有针对性地进行促销广告的发送。7.1.4超市数据仓库维表模型设计5.客户维7.1.4超市数据仓库维表模型设计1217.1.5超市数据仓库模型的关键字设计采用代理关键字技术,而不是依赖业务系统中的各种关键字(许多业务系统中的各种编码往往具有某种特定的含义)代理关键字一般采用填充维度时按需要而顺序分配的整数值。例如,为第一条商品记录分配一个值为1的商品代理关键字,第二条分配2,第n条分配n等。代理关键字仅仅用于维度表到事实表的连接。

代理关键字的好处还在于,它能够对数据仓库环境的操作型变化进行缓冲,不会受到商品编码生成、更新、删除、再生与重用等操作型规则的妨碍。代理关键字允许数据仓库对来自多个业务型系统的数据进行合并,即使它们之间缺乏一致的源关键字也无所谓。7.1.5超市数据仓库模型的关键字设计采用代理关键字技术,122使用代理关键字还可以获得性能上的优势。代理关键字可能只有一个整数所占据的空间大小,却能确保充裕地容纳维度行以后可能需要的序号或者最大编号。而业务型编码常常是一个混合了字母与数字的区间编码体系。代理关键字还能够用于记录那些诸如“不在促销之列”这样的可能在业务系统中没有编码的维度情形。通过对数据仓库的关键字施加控制,就能够做到不管是否缺少业务型编码,总可以分配一个代理关键字将这类情况标识出来。将代理日期关键字处理成日期序号,可以允许事实表在日期关键字基础上进行物理分区。7.1.5超市数据仓库模型的关键字设计使用代理关键字还可以获得性能上的优势。代理关键字可能只有一个123目前在超市数据仓库中已经包含了6个实际的表:营销事实表与日期、商品、门市、促销和客户维表。每个维表有一个主关键字,而事实表除了有一个退化的销售事务编号之外,还有由五个外关键字组成的一个复合关键字。如果五个关键字都是进行了紧凑处理的连续整数,那么仅仅需要为所有五个关键字保留18个字节的小存储空间(日期、商品、促销和客户维各用4个字节,而门市用2个字节)。同时,销售事务编号可能另外需要8个字节。如果事实表4类事实(销售量、销售额、成本和利润)中的任何一个都是4字节的整数,则仅仅需要再保留另外的16个字节,这样事实表只有42个字节宽。对一个10亿行的事实表也只占用大约42GB的存储空间,就可以存储所有事实数据。7.1.5超市数据仓库模型的关键字设计目前在超市数据仓库中已经包含了6个实际的表:营销事实表与日期1247.1.6超市数据仓库元数据设计销售主题元数据名称Sales描述整个超市中每个门市中每个POS机所记载的商品销售状况目的用于进行超市销售状况和促销情况的分析联系人各个门市销售经理维时间、商品、客户、商店、促销事实表销售事实表度量值销售成本、销售额、销售利润、销售量7.1.6超市数据仓库元数据设计销售主题元数据名称Sal125销售事实元数据名称Sales_Fact_年份描述记录每个门市每个POS机所发生的销售数据目的作为销售主题的分析事实使用状况每天平均查询次数每天平均查询返回行数每天查询平均执行时间(分钟)每天最大查询次数每天查询返回最大行数每天查询最大执行时间(分钟)存档规则每个月将前36个月的数据存档存档状况最近存档处理日期已经存档数据日期更新规则每个月将前60个月的数据从数据仓库中删除更新状况最近更新处理日期已更新数据日期销售事实元数据名称Sales_Fact_年份描述记录每个门市126数据质量要求及确认由于从各个门市POS机上所产生的数据可能会由于极少的人工输入,而使数据质量不能得到保证,但也真实地反映了销售现状,不能随意修改,应被认可。数据准确性要求必须百分之百地反映各个门市销售状况数据粒度要求能够反映每一项商品的销售状况,不对数据进行汇总表键事实表的键(关键字)是时间、商品、客户、商店和促销维中键的组合数据来源超市销售业务系统中的销售表加载周期每天一次加载状况最后加载日期加载的行数加载规则每天清晨3:00将各个超市门市中前一天的销售事实数据拷贝到本表,拷贝过程中要根据各个数据成员所定义的加载规则进行筛选和清理销售事实元数据数据质量要求及确认由于从各个门市POS机上所产生的数据可能会127维元数据

名称客户(Customer)定义从超市任何一个门市购买货物的任何个人或组织都称为客户。一个客户可以与多个销售地区发生联系(即出现在地理维的不同层次体系中)层次结构一个客户的数据可以在3个级别上进行统计:最低级别是出现在客户所在的县/区,其上为市、省更改规则新的客户位置作为新的一行插入维中。对已有位置的修改,则在原处更新加载频率每天一次加载统计数据最后加载日期加载的行数使用的统计数据每天平均查询个数每天查询返回的平均行数每天查询平均执行时间(分钟)每天最大的查询个数每天查询返回的最大行数每天查询执行的最长时间(分钟)维元数据名称客户(Customer)定义从超市任何一个门市128存档规则每个月将前36个月的数据存档已存档数据日期更新规则每个月将前60个月的数据从数据仓库中删除更新状况最近更新处理日期已经更新数据日期数据质量增加一个新客户时,先检查是否已在其他地方和该客户做过交易。少数情况下,由于检查失败,会将一个客户的不同部门作为不同客户保存。地区属性并不是销售业务系统原有的,而是根据送货地址属性中的邮政编码进行区分数据的准确程度一个客户与其地理位置的关联出错的可能性在某一百分比以下,该百分比大小要根据对业务数据的研究情况确定关键字客户维的关键字是系统产生的数字维元数据

存档规则每个月将前36个月的数据存档已存档数据日期更新规则每129产生关键字的方法从销售业务系统中拷贝一个客户时,将检查转换表,检查该客户是否已经存在于数据仓库中。如果否,就产生一个新的关键字。然后将这个关键字和销售业务系统中的Custom~ID和地区ID插入转换表中。如果该客户和位置已经存在于转换表,则根据表中的关键字决定数据仓库中要更新的记录源表名称超市销售业务系统中的Customer表加载规则每天拷贝每个Customer表中的行。对于已存在的客户进行更新。对于新客户,确定其所在地理位置之后,产生一个关键字,然后插入一行新记录。在更新/插入操作之前,需要检查是否有重复的客户名。如果有,则在客户名后增加一个顺序号,直到名字以及名字和顺序号的组合都没有重复为止。加载规则只选择新的和发生变化的行源表名称Customer_Location表转换规则每天拷贝一次Customer_Location表。对于已存在的客户,更新其送货地址;对于新客户,则产生一个键,并插入一行。维元数据

产生关键字的方法从销售业务系统中拷贝一个客户时,将检查转换表130数据成员元数据

名称客户关键字(Customer_ID)定义用以唯一标识客户和位置的值更新规则一旦分配,就不改变数据类型数值型值域1—999,999,999产生规则由系统自动产生,将当前最大值增l来源系统自动生成数据成员元数据名称客户关键字(Customer_ID)定义131名称客户名称(Customer_Name)定义客户的名称更新规则客户名称发生改变时,就在原来的记录上更新数据类型Char(30)值域保证能区分不同客户的名称。对不同而具有相同名称的客户,可在名称后依次加1来区分相同名称来源超市销售业务系统中Customer表中的Name产生规则对于零售客户,其名称由姓和名组成,或者是客户1、客户2形式。对于公司,则将公司名作为客户名称数据成员元数据

名称客户名称(Customer_Name)定义客户的名称更新1327.2数据仓库开发工具简介7.2.1数据仓库开发工具目前已有许多数据仓库开发工具供应商,可以提供各种构建数据仓库的工具。但有些数据仓库开发工具还要结合第三方供应商工具才能完成整个数据仓库的构建。1.Oracle数据仓库开发工具Oracle9i:数据仓库构建体系的核心;OracleWarehouseBuilder:可以进行数据建模、数据抽取、数据转移和装载、聚合及元数据管理;OracleDiscoverer:能够为最终用户提供查询、报告、下钻、旋转和WEB公布工具;OracleDarwin:提供决策树、神经网络等多种数据挖掘方法,可以对数据仓库进行数据挖掘,具有简单易用的图形化界面,支持海量数据并行处理,可进行结果分析和系统集成。7.2数据仓库开发工具简介7.2.1数据仓库开发工具1332.IBM数据仓库开发工具基于可视数据仓库的商业智能(BI)解决方案,具有集成能力强,面向对象SQL等特性。其中VisualWarehouse(VW)是一个功能很强的集成环境,可用于数据仓库建模和元数据管理,又用于数据抽取、转换、装载和调度。Essbase/DB2OLAPSe

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论