某超市进销存系统的DW设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
某超市进销存系统的DW设计
一、现状
1、传统的进销存系统建立在单一的数据库系统上,通常包括:
●业务处理子系统
●辅助决策系统
●管理信息系统
●其它……
2、以单一数据库为中心构成的数据库系统,往往满足不了现代超市数据处理多样化的要求。
具体表现在以下几个方面:
●不能同时满足事务处理与分析处理的需要。
●无法集成企业内部、外部各方面的数据。
●难以适应各类用户对数据综合程度的不同要求。
3、困境:
长期趋势分析预测需要按年度汇总,而中短期预测要用到月、周、日的数据。传统的数据库系统不具备这种综合能力,需要人为地进行综合和汇总,而且每做一次分析,都要进行一次这样的综合,这必将导致极低地处理效率。因此,在事务处理环境中直接构建分析处理应用必将是失败的
数据仓库和OLAP技术在DSS上的应用已经成为决策支持系统的新趋势。OLAP可以根据需求将决策法过程中的各类信息以多维视图存储于数据仓库中,给决策者提供多元化的业务分析。
二、构建进销存系统数据仓库
1、如图:
2、系统组成:
●业务处理子系统:
其后台为传统数据库(可以是多个分布的、异构的数据库),前台是业务应用系统,完成所有进销存业务的日常处理,是整个进销存系统的数据入口,并向辅助决策子
系统提供原始数据;
●决策支持系统:
后台为数据仓库,前台由联机分析工具、数据挖掘工具等构成,完成统计分析预测
功能,实现对决策的支持;
●数据管理子系统
负责对整个系统数据的管理,特别是实现数据从各数据源(传统数据库)到数据仓库
的转移以及数据仓库中数据结构和业务规则的管理。
三、DW概念模型设计
1.需求分析
最为迫切的需求在于更加准确的掌握超市的经营状况及进、销、存情况,主要包括:
●进货趋势
●销售市场波动趋势
●企业存货情况。
→分析市场经营状况发展趋势所要求的操作数据库的数据有:
●商品进货数据
●商品销售数据
●商品库存数据
●顾客信息
●销售商信息。
2.概念模型设计
●界定销售分析系统边界
建立销售数据仓库所需的数据应包括:订单数据、产品数据、顾客数据、员工数据、供货商数据、货运数据。
●确定系统的主题及其内容
初步确定超市的进销存辅助决策系统有3个主题:商品、顾客和销售商。
⏹商品主题:描述企业商品分类及销售情况;
⏹顾客主题:描述了企业对顾客进行分类及有关顾客合同的管理情况;
⏹销售商主题:描述了企业销售人员销售商品及销售地区情况。其中,商品主题作为
中心,将这3个主题联系起来。其具体内容包括:
●商品:
商品固有信息(商品代号、商品名称、商品类别等)
商品库存信息(商品代号、库房号、库存量、日期等)
商品销售信息(商品代号、顾客代码、销售日期、销售单价、销售数量等)
●顾客:
顾客固有信息(顾客编号、顾客名称、地址号、电话等)
顾客合同信息(顾客编号、合同代码、起始日期、终止日期、数量、价格等) 顾客购货信息(顾客编号、商品代码、单价、数量、日期等)
●销售商:
销售商固有信息(销售商编号、销售商品、销售商品名、销售商地址等)
四、逻辑模型设计
1.分析主题域
在概念模型设计中,确定了基本的主题域,数据仓库的设计方法是一个逐步求精的过程,在进行设计时,一般是一次一个主题或一次若干个主题地逐步完成的。这里选定商品主题先实施。
2.粒度层次划分
粒度指数据仓库中数据单元的详细程度和级别,为了实现的快速和当前主要的是开发一个原型系统,为以后系统超市进销存辅助决策系统的研制和开发提供理论基础和实际开发经验,因此在此销售分析系统采用单数据粒度。
3.确定数据分割策略
由于数据仓库在获得数据时一般按时间顺序进行,同一时间段的数据往往可以连续获得,并且数据仓库的数据综合常常会在时间维上进行,因此系统按时间对数据进行了分割,查询时可只查询相关的分片而不必搜寻整个数据库。
4.多维数据建模
数据仓库的每个主题由多个表实现,通过公共码键联系在一起形成一个完整的主题。这里对“商品”主题进行模式划分,采用星型雪花架构,分析整理出下面的实事表与维度表的设计
销售数据仓库的雪花结构图
五、在线分析处理
在分析销售数据时,从不同角度审视销售的衡量数值是一种很自然的思考模式。根据用户所选择的分析角度,事先计算好一些辅助结构,以及每一维不同层次重要衡量的总计,以便在查询时能够尽快抽取到所需记录,并快速地从一维转变到另一维。这样用户就可以在短时间内从各种不同的角度审视销售的状况,不但提高了决策的正确性,而且缩短了做出决定所需要的时间。
在本例中,使用两种主要多维分析技术:向下钻取、旋转和切片。前者用来查看某一具体数据维中的更详细的数据,后者用来从不同角度或不同层次得到聚合数据。
1、切片(Slice)和切块(Dice)
在多维数据结构中,按二维进行切片,按三维进行切块,可得到所需要的数据。如在“城市、产品、时间”三维立方体中进行切块和切片,可得到各城市、各产品的销售情况。
图3 三维立方体切片、切块示意图
2、钻取(Drill)
维度是具有层次性的,如时间维可能有年、月、日构成,维度的层次实际上反映了数据的综合程度。维度层次越高,细节越少,数据量越少;维度层次越低,则代表的数据综合度越低,细节越充分,数据量越大。钻取包含向下钻取(Drill-down)和向上钻取(Drill-up)操作,钻取的深度与维所划分的层次相对应。向下钻取就是从较高的维度层次下降到较低的维度层次上来观察多维数据。反之,则执行的操作就是向上钻取。例如: