数据仓库在商情价格系统中的应用_第1页
数据仓库在商情价格系统中的应用_第2页
数据仓库在商情价格系统中的应用_第3页
数据仓库在商情价格系统中的应用_第4页
全文预览已结束

下载本文档

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

文档简介

1、数据仓库在商情价格系统中的应用周小军(中石化长岭分公司信息技术管理中心)摘要:通过使用数据仓库技术作为基础,使用在线分析处理技术作为应用,为用户提供油品各时间段平均价格查询,辅助商业人士对油品价格进行分析预测,为油品的生产销售提供决策支持。主题词: ADO ADOMD ASP1 数据仓库简介数据仓库作为决策支持系统的基础,具有面向主题、集成、非易失且随时间变化的特点。决策支持系统以在线分析处理和数据采掘方式从数据仓库获取数据进行决策分析和发现知识。传统的事务型系统是处理公司日常的数据,而数据仓库是针对数据模型中的主题领域的业务,例如:顾客、产品、活动。数据仓库的集成性是指当数据由多个事务型系统

2、装入数据仓库时,要采用抽取、清除、转换等方法来消除应用中的不一致性。例如,应在数据仓库中统一编码。此外,它的非易失性是指数据仓库中的数据通过事务型数据进行聚集,不通过自身数据进行更新。最后,数据随时间变化的特性表现在:数据仓库中保存的是长期的若干年的历史数据,而事务型系统中保存的一般是一年以内的数据。事务型系统含有某一时刻的精确数据,而数据仓库中的数据则是一系列事务数据生成的复杂的快照。事务数据的结构不一定包含年、月、日等时间元素,而数据仓库的结构总是包含时间元素。2 需求概述商情信息在炼化企业进行市场决策和生产安排中起着至关重要的作用,分析人员根据产品当前价格与过去某一时间段的平均价格作比较

3、,来预测未来价格。具体来说,分析人员需要对比产品上周均价、本周均价和最近三天的价格,还要对比上月均价、本月均价和最近一个月的价格,以及查看油品每月均价、上年均价和本年均价。基于这样的需求,我使用数据仓库和在线分析处理技术,对事务数据进行高粒度的聚合,实现了均价查询。3 数据仓库设计与组织数据仓库在设计阶段应明确其主题,主题概括了一个分析领域,具体来说就是决策所要解决的问题,而且主题必须建立在事务型数据之上,否则设计的数据仓库将没有数据源用作存储。商情价格系统的主题就是油品在某一天的价格,具体包括:原油在某一天的国际市场价格和相应的完税价,油品在某一天的出厂价格,油品在某一天的市场价格和相应的完

4、税价。在确定主题后需要设计数据粒度和数据分割。粒度是指数据仓库数据存储时的细化或综合程度的级别,它不但决定了存放数据量的大小,同时也影响数据仓库所能响应的查询数量。细化程度越低,粒度级就越大,只要少量的字节和索引就可以存放数据,但是,由于细化程度低,所能回答查询的能力就会降低。所以,几乎每个机构都采用多粒度级而非单一粒度级,多重粒度级既能减少存储,又能有效地回答任何能够回答的问题。商情价格系统的粒度级包括事务型细节数据(即油品在某一天的价格)和高粒度聚合型数据(即油品在某周、某月及某年的平均价格)。收稿日期:2010-01-04作者简介:周小军,1996年毕业于大连理工大学计算机科学与工程专业

5、,工程师,现从事网页制作,ERP开发工作。数据分割是指把数据分散到较小的物理单元中去,使得它们能被独立地处理的数据组织方式。较小的物理单元能为操作者在管理数据时提供更大的灵活性,例如更易重构索引、更易监控等。由于数据仓库结构总是包含时间元素,所以按日期进行分割成为一种必然选择。分割可以在系统层次和应用层次上进行,系统层次是指某些数据仓库系统和操作系统能够提供数据分割功能,应用层次是指通过应用程序代码完成数据分割功能,它的特点是能从一个数据处理集合转移到另一个数据处理集合而没有数据损失。商情价格系统使用月份作为标准在应用层次分割数据。 在确定了以上问题后,需要根据主题设计数据仓库结构,一般采用星

6、型模型和雪花模型设计其数据模型,原则是保证数据仓库的规范化和事实维度间的必要联系。商情价格系统使用SQL SERVER Analysis Manager集成环境建立了shsq多维数据集,它以每日价格表作为事实表,以产品表、厂家表、地区表、价格类型表、计量单位表和时间表作为维度表,图1是相应的星型模型。图1 相应的星型模型图在确定数据仓库结构后,要制定数据抽取方案,具体包括:各主题所在的数据源,数据源种类(如数据库、文本文件等),是否需要进行清理、转换、组织加工,数据转换成怎样的统一中间格式,装载到数据仓库的哪个立方体中,多长时间对数据源进行一次抽取,多长时间对数据仓库进行一次更新等。商情价格系

7、统采用相同的频率(即每30分钟)对数据源进行抽取和对数据仓库进行更新。4 在线分析处理应用设计在数据仓库建立后,还要在此基础上建立应用,才能使用其中的数据进行分析决策。在线分析处理应用就是这样一种应用,它通过OLAP服务访问数据仓库,微软公司的SQL SERVER所包含的Analysis Server就提供了这种服务。在具体实现中,商情价格系统使用Visual Basic集成开发环境建立了CubeData组件,它封装了调用ADOMD组件、通过OLAP服务访问数据仓库的逻辑,使得系统运行效率大幅度提高,图2是此组件的UML类图,其中Display方式的功能是直接将多维数据集通过WEB方式发送到客

8、户端浏览器。图2 CubeData组件的UML类图 图3是查询条件为20091207这一天时,得到的国际原油本周、上周均价和最近3天价格及涨跌、最近1天完税价格。 图4是查询条件为2009年时,得到的国际原油2009年每月均价、2008年均价和2009年均价。图3 查询条件为2009年12月7日一天的国际原油各类数据图4 查询条件为2009年国际原油各类数据5 系统工作流程当用户请求一个ASP页面时,IIS服务器响应HTTP请求,调用ASP引擎,解释被请求文件。当遇到任何与ActiveX Scripting兼容的脚本(如VBScript和JScript)时,ASP引擎调用相应的脚本引擎进行处理

9、。若脚本中含有访问数据库的请求,就通过OLE DB与后台数据库相连,由数据库访问组件ADO执行访库操作。类似地,若脚本中含有访问数据仓库的请求,就通过OLAP服务器与后台数据仓库相连,由数据仓库访问组件ADOMD执行访库操作。ASP脚本在服务器端解释执行,它根据访问的结果集自动生成符合HTML语言的页面,去响应用户的请求。所有相关的发布工作由IIS服务器负责。在后台通过定时调度执行读取数据库变化数据的作业,使得数据仓库的数据得到更新。图5是商情价格系统从后台数据库抽取数据更新数据仓库,应用层使用数据存取组件访问数据的工作流程图,是典型的基于WEB的三层架构。图5 应用层使用数据存取组件访问数据

10、的工作流程图6 技术特点与分析在商情价格系统中使用了以下关键技术: Microsoft Active Server Pages(ASP):ASP是一种开放的,可以将HTML,脚本及可重用的ActiveX Server组件结合在一起,以建立高效的动态的基于WEB的应用程序环境。Microsoft ActiveX Data Objects (ADO):ASP支持ActiveX Server组件的使用,ActiveX Server组件通过组件对象模型(COM)为ASP提供了可编程的接口,其中组件之一ADO提供了与数据库相连的机制。使用ADO对象可以建立和管理数据库的连接,从数据库服务器提取数据,执行

11、更新,删除添加数据的操作。ADO建立在微软新的数据库API,即OLE DB之上,OLE DB再通过ODBC引擎与数据库交互。在本系统中通过使用ADO API,来取得日常事务型数据。Microsoft ActiveX Data Objects(Multidimensional)(ADO MD): ADOMD组件通过组件对象模型(COM)为ASP提供了可编程的接口,它是ADO在多维数据模型下的扩展。ADOMD通过OLAP服务访问数据仓库获得多维数据集。在本系统中通过使用ADOMD API,来取得高粒度聚合型数据。 COM组件对象模型: COM组件是遵循COM规范编写、以Win32动态链接库或可执行文件的形式发布的二进制代码

温馨提示

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

评论

0/150

提交评论