充值信息

赞助信息

推荐给好友 上一篇 | 下一篇

数据仓库与OLAP在汽车故障分析系统中的应用



0 引言

    随着Internet的快速普及,企业在运作过程中产生了大量的事务数据,不能直接被传统的事务处理系统所利用,而对于决策者而言,更希望通过对这些庞大杂乱的数据进行分析,深入了解企业的运营状况,从而更好的作出决策快速应对市场变化,因此,对数据分析的需求变得日趋重要。

1 数据仓库介绍

    建立数据仓库的目的是为了将决策分析所需要的数据与传统的业务操作环境相分离,从而建立一种体系化的数据存储环境,使分散的、不一致的事物数据通过加工,转换成统一、集成的分析性数据为用户所用。因此,正符合了为用户和决策者提供公用的、分析性数据的访问这一目标。

2 数据仓库的创建

    本系统中,对于汽车故障分析主要关心的是整车和零部件故障信息,因此,需要从该企业售后服务系统、配件管理系统、销售系统等业务子系统中抽取与故障相关的信息,如故障产品区域信息、供应商信息、零部件故障信息、故障分类信息、汽车销售信息等,并在数据仓库中设计两个主题,即整车故障主题和零部件故障主题。可以从以下几个方面对故障进行分析,即对车型、车辆分总成、零部件类别和零部件区域等故障率和故障数进行统计,设计度量值为故障数、故障率及时间,月为最小粒度。在故障事实表中通过聚集能得到每个季度和每年的故障情况。根据决策者希望查询方式设计车型、车辆、故障总成、区域维、故障、供应商、时间等维度表和从年到月的时间层次。

    由于本系统使用了两个主题,因此采用雪花型架构主题模型将主题和各个维度表联系起来,形成了雪花型故障分析的数据仓库架构。

    完成数据仓库构架的设计后,采用Microsoft SQL Server Integration Service(SSIS)工具实现数据从OLTP数据库向OLAP数据库的转换和加载任务,由于数据来自不同的业务系统,如果存在数据错误、不一致或空数据等问题,还需将数据进行清洗。

3 系统OLAP设计与实现

    数据仓库是系统数据分析结构的基础,为多维分析提供了数据支持。联机分析处理(OLAP,online analytical processing)的多维分析提供了展示一个主题的多维属性,它采用切片、切块、上卷和下卷和旋转等方式可以使用户更灵活的对数据进行访问,使分析人员、管理人员或决策人员以多角度、多视图模式的方式去探察数据仓库中的数据,已达到更深入地了解数据的目的。

    3.1 多维分析结构设计 本系统采用三层的客户,服务器结构,第一层是数据仓库服务器,完成企业级数据一致和数据共享的工作。第二层是OLAP服务器,它将用户的请求分解成OLAP分析的各个动作,并通过数据仓库中的数据来完成这些动作。第三层是前端展示工具,它将0LAP服务器处理后得到的结果以用户需要的方式直观的展现出来。

    3.2 多维立方体的创建 因为搭建好的数据仓库中的事实表和维表是以二维表的形式存储起来的,因此需要利用OLAP工具将这些数据多维化,以多维数据的模型构建。这样,数据仓库中的数据才能以用户需要和容易理解的形式多角度、多层次的展现出来。

    本系统采专门用于分析和管理多维数据集的软件Microsoft SQL Server 2008 Analysis Services(SSAS)从数据仓库中抽取数据,并生成多维数据集。

    首先,建立数据源,选择原来创建在数据仓库中的事实表(根据各个主题创建的二维表,本系统为整车故障事实表和琴部件故障事实表)作为多维数据立方体的事实表。选择相应的维度表(在数据仓库中已建立好的维度表)作为多维数据集的维度,可以通过向导完成多维数据集的创建。

    其次,物理存储模式选择。OLAP系统按照其存储器的数据存储格式可以分为多维OLAP、关系OLAP和混合型OLAP三种类型。多维OLAP(Multidimensional,MOLAP)利用专有的多维数据库来存储OLAP所需要分析的数据,以多维视图方式显示,并且能够自动建立索引,有较好预计算能力,因此,在数据存取速度上较其他方式有一定优势啕。本系统采用MOLAP为多维数据立方体进行物理存储。建立整车故障多维数据集和零部件故障多维数据集。

    再次,访问多维数据集。采用微软的ADO/MD(Active Data Object Multidimensional)对象可对多维数据集进行访问,它是对传统ADO对象模型的扩展,允许基于COM的应用程序通过使用OLAP的OELDB接口,从而实现对多维数据的操作。

    所使用的多维表达式是MDX(Mahi-dimensional Expressions)多维表达式,它用于Analysis Service对多维数据集的检索,与Transact-SQL语句相似,并且执行效率较高,功能强大。

    与Transact-SQL语句相比,MDX表达式中也有SELECT子句,但它不是选择语句,而是决定结果集的轴维度,MDX查询在SELECT语句中最多可以有128个轴维度。WHERE子句也不是条件语句,而是决定了哪个维度或成员用作切片器维度。如:

    ①2011年四川区域发动机总成的故障数和故障率的切块分析的MDX语句:

     MDX语句

    由此可见,与SQL查询语言相比,MDX查询语言要筒洁明晰得多,而且查询速度快。

4 多维数据集前端展示的实现

    本系统通过采用OWC(Microsoft Office Web Components)中的PivotTable Service(数据透视表服务)来实现对多维数据集的数据展示。PivotTable是OWC组件内的数据透视表控件,它不仅可以实现通过自定义解决方案生成的曲线和图表等,也可以利用它在浏览器中显示和处理数据。只需要连接OLAP服务器上的数据立方体即可使用户在Internet Explorer上进行相应的数据钻取等操作。

5 本章小结

    本文主要介绍了数据仓库和OLAP技术在汽车故障分析系统中的应用,并得以实现。通过实例说明该技术能够使企业管理用户和决策者达到更方便、快捷的了解本企业故障信息的目的。







 

评分:0

我来说两句