基于数据仓库的水利工程信息管理系统设计
第29卷第1期2012年3月河北工程大学学报(自然科学版)
Journal of Hebei University of Engineering (Natural Science Edition )Vol.29No.1
Mar.2012
文章编号:1673-9469(2012)01-0090-05
基于数据仓库的水利工程信息管理系统设计
112
黄伟建,徐学钢,王子轩
(1.河北工程大学信息与电气工程学院,河北邯郸056038;2.北京师范大学艺术与传媒学院,北京100875)
摘要:针对我国当前业务型的水利信息管理系统难以获取隐含信息的问题,提出基于数据仓库
技术和OLAP 技术设计开发水利工程信息管理系统的解决方案。系统使用Java 作为开发语言,后台数据库采用SQL Server 2005系统,使用SQL Server 中的数据仓库工具建立数据仓库。根据需求分析,系统确定获取渠道、科室和资金3个主题的隐含信息,并采用查询效率较高的星型模
通过事实表设计和维度表设计来完成3个主题设计的具体实现。型作为概念模型,
关键词:数据仓库;OLAP ;水利工程;信息管理系统
中图分类号:TV698文献标识码:A
Design of the hydraulic engineering information management
system based on the data warehouse
HUANG Wei -jian 1,XU Xue -gang 1,WANG Zhi -xuan 2
(1.School of Information Science and Electrical Engineering ,Hebei University of Engineering ,Hebei Handan 056038,China ;2.School of the Art and Communication ,Beijing Normal University ,Beijing 100875,China )
Abstract :In view of the problem that current business -oriented water information management sys-tem obtain difficultly hidden information problem ,the hydraulic engineering information management system was design based on data warehouse and OLAP technology.The Java served as the develop-ment language ,SQL Server 2005as back -end database ,and the SQL Server data warehouse tools was used to build the data warehouse.According to requirements analysis ,the access channels ,de-partments and funds were confirmed as the three implicit information ,which were implemented through the fact table and dimension table design with the efficient star query model as a conceptual model.
Key words :data warehouse ;OLAP ;hydraulic engineering ;information management system 二十一世纪以来,我国在水利信息化建设的过程中,完成了大量的水利信息管理系统,这对于我国水利工程的投资建设和运行管理都起到了良好的促进作用。随着水利信息化的发展,水利信息系统规模越来越大,对系统运行质量要求越来
[1]
越高,任务越来越重,管理越来越复杂。现有的水利信息管理系统所提供的功能大多是业务型的,只能处理直接的水利数据,难以获取这些数据2]信息背后的隐含信息,如文献[开发的东海县水利工程管理系统,仅仅按照业务需要,把系统划分为农田水利、工程管理、防汛抗旱、自然环境、水利
3]史和大事记等业务模块;而文献[开发的水利工
程科技档案管理信息系统,仅能提供用户管理、单位管理、档案管理和管理员管理等管理信息。而这些直接数据信息背后的隐含信息,如各项水利工程的建设趋势、各个承担任务科室的进展趋势、各类项目资金的完成趋势等均无法体现。本文基于数据仓库技术和联机分析处理(On -Line Analytical Processing ,OLAP )技术,设计水利工程信息管理系统。系统按照渠道、科室和资金3个主题设计建立数据仓库,以克服传统的水利信息管理系统难以获取这些隐含信息的缺陷,
收稿日期:2011-10-13
基金项目:邯郸市科学技术研究与发展计划项目(1134201103)作者简介:黄伟建(1964-),男,山西交口人,博士,教授,从事信息管理系统开发与设计方面的研究。
第1期黄伟建等:基于数据仓库的水利工程信息管理系统设计91
为水利工程决策人员提供高效的信息服务。
1关键技术
1.1数据仓库
数据仓库技术是二十世纪末在计算机领域中迅速发展起来的一种新技术。数据仓库是面向主题的、集成的、稳定的、随时间变化的数据集合,用以支持经营管理中的决策制定过程。从数据库基础上发展起来的数据仓库技术,从本质上讲是一种新的信息集成技术。数据仓库中存储着海量的当前数据、历史数据和综合数据。这些数据往往
并依照主题进行重组。是多个数据源的数据集成,
数据仓库中的数据一般不再修改。这些数据虽然
也是随时间变化而变化的,但时限比操作型数据的时限要长得多。数据仓库在功能上与操作型的它可数据库最主要的区别是建立决策支持系统,
有效地实现对水利工程信息资源的管理和利用,为水利工程管理者的决策分析提供准确一致的量
[4-5]
。化信息1.2OLAP 技术
OLAP 技术是基于数据仓库的、针对主题的、能快速进行联机数据访问和分析的软件技术。它
对数据信息进行多种不同形式地观察,使用户可以从不同的维度、不同的侧面和不同的数据综合
从而获得数据背后隐含的新的程度来观察数据,
有价值的信息。OLAP 分析工具是多维数据分析[6]
工具的集合,而水利工程的数据信息一般是多维的,因此多维数据就是水利工程决策的主要内容。OLAP 技术侧重于对水利局领导的决策支持,以便他们能准确掌握水利工程的状况,制定出正确的方案和措施。OLAP 先将数据仓库当中的数、据组织成多维数据立方体后,再通过“数据切片”
“数据切块”和“数据钻取”等操作方法对立方体进行分析操作。
(1)“数据切片”是从多维数据立方体上的某把多维数据从n 维降为n 一维度上选定一个值后,-1维。例如,在“桥梁工程”的多维数据立方体,中,时间维度取“2009年”则得到关于2009年所建设的所有桥梁工程数据信息的一个数据切片。(2)“数据切块”是从一个完整的数据立方体中切取一部分数据,从而得到一个新的体积较小的数据立方体。例如,在“桥梁工程”的多维数据
,时间维度取“2007 2009年”项目维立方体中,
“以工代赈”,100万元以下”,度取投资额维度取“则会得到关于2007 2009年间的建设的投资额在100万元以下所有以工代赈项目的桥梁工程数据信息的一个数据切块。
(3)“数据钻取”是通过改变数据立方体维度的层次,来达到变换分析粒度的目的。数据钻取的方向分为下钻和上钻。下钻是指用户从某一个较高的层次出发,去观察较低层次的细节数据信息。上钻跟下钻正好相反,是指用户从某一个较去观察较高层次的宏观数据信息。低的层次出发,
例如在时间维度中,从“年”的层次出发,去观察“月”的数据就是下钻;而“月”的层次出发,去观“年”察的数据就是上钻。1.3B /S架构模式
C /S(客户端/服务器)和B /S(浏览器/服务
[7]
器)是两种常用的架构模式。传统的C /S(客户端/服务器)架构模式是两层结构,分为客户端和服务器两部分,通过局域网直接连接。而B /S(浏览器/服务器)架构模式则是三层结构,为浏览器(相当于C /S架构模式中的客户端)、Web 服务器和数据库服务器(相当于C /S架构模式中的服务器)3部分。浏览器与数据库服务器不直接连接,而是通过中间层Web 服务器进行间接连接,见图1。其中浏览器与Web 服务器可以通过局域网或
能充分利用Internet ,延长连接距广域网进行连接,
离。B /S架构模式将系统功能实现的所有应用软
件都安装在Web 服务器和数据库服务器上,系统的维护工作也集中在这两处,与客户端的浏览器无关,客户端零维护。系统的改进和升级也可以只在服务器端进行,所以系统的可靠性和稳定性
Web 服务器、
比C /S架构模式更高。浏览器、数据
92河北工
[8]
程大学学报(自然科学版)2012年
库服务器三者为逻辑上的划分
只布置在一台计算机上。
,这三者也可以信息的前后一致性。2.3信息查询管理模块
负责查询水利工程数据信息的工作。这是管理系统的核心模块。业务数据库中数据信息经过抽取、清洗等处理后,集成在数据仓库内。系统利用OLAP 技术,将数据组织成多维数据立方体的形式,通过切片、切块、钻取等各种分析操作,使用多侧面、多层次地查询数据库中的户能从多角度、
水利工程数据信息。管理系统把一些关键的查询过程和查询结果经过处理后存储下来,并且当系统数据信息有更新时还能自动更新。这样,当以后再进行类似的查询时就不用每次都去搜索整个
而能快速地得到正确的查询结果。系统数据库,
能够根据需要,把每次查询的结果信息自动生成
合适的数据报表,并能实现同上级机关相关软件的接口对接。2.4系统维护管理模块
负责对用户和数据库的维护进行管理工作。包括对用户进行用户申请、登录申请和用户级别设置等的工作,和对数据库进行增加数据库和数
2系统的结构设计
水利工程信息管理系统主要包括信息录入管
理、信息修改管理、信息查询管理和系统维护管理4个模块(系统结构见图2)。根据具体需求,每
[9]
个模块都具有各自的功能。
2.1信息录入管理模块
负责录入水利工程数据信息的工作。由于信息录入人员不一定都精通计算机技术,所以本模块的编制尽量智能化,录入操作尽量简单化。每一次录入时,系统都会通过多次询问来引导录入者输入格式正确、内容全面的数据信息。如果某一项工程不是首次录入,系统还会自动显示前一次录入本工程的数据信息,提示录入者检查本次录入的数据信息是否存在缺项或错误。2.2信息修改管理模块
负责修改系统数据库内的错误数据信息的工作。由于水利工程管理工作的特殊性,系统内已经存在的各种水利工程信息,都不能被删除。即也不能删除相关信息,使某项工程已经报废拆除,
因为这会影响到对过去水利工程建设情况的查询。不过,由于操作人员的失误所造成的信息录入错误,系统是允许修改的。信息修改工作必须谨慎,只能由系统管理员进行操作,其他级别的用户不能进行操作。并且修改工作还不能通过远程网络方式操作。这样才能尽可能保证系统内数据
据备份等的工作。2.5系统的开发平台
本系统的数据库采用SQL Server 2005系统,使用Java 作为开发语言,基于Eclipse 开发。SQL Server 是一种关系数据库管理系统,具有使用方便、可伸缩性好、与相关软件集成程度高和可多种平台使用等优点
[10-11]
。在SQL Server 2005系统
中提供了大量的数据仓库设计、建立和操作等方
适合于分布式面的工具。Java 是一种跨平台的、
计算机环境的面向对象的编程语言,具有可移植、
稳定、简单、高性能和可动态执行等特征。Java 应用程序(Java Applet )存放在Web 服务器中,应客
传送至客户端,由浏览器去执户端浏览器的请求,
行。它可以有效地实现B /S架构模式的功能。
3数据仓库的设计与实现
数据仓库的构建是一个不断循环、反馈而使系统不断增长与完善的过程
[12]
,它的设计主要包
括概念模型设计、逻辑模型设计和物理模型设计3
个阶段。
3.1概念模型设计
概念模型设计主要界定系统边界和确定主要的主题域及其内容,它包括需求分析、主题确定和概念模型确定等内容。3.1.1需求分析
水利工程的高级管理者,不光需要知道水利工程的具体数据信息,更重要的是需要了解:各个渠道配套工程的建设趋势;各个职能科室承担的工程建设任务的进展趋势;各类项目资金的完成趋势。3.1.2主题确定
确定系统数据仓库的主题为:根据需求分析,
渠道、科室和资金。3.1.3概念模型确定
数据仓库的概念模型常见的有3种:星型模
雪花模型和事实星座模型。星型模型可以采型、
用关系型数据库结构,模型的核心是事实表,围绕事实表的是维度表,通过事实表将各种不同的维度表连接起来,各个维度表都连接到中央事实[13]表,见图3。在该模型中,因为大部分数据都在事实表中,只需搜寻事实表就可进行查询。并且
能放在高速缓存中,可以快速地维度表都比较小,
与事实表进行连接。星型模型实际上是以“空间”
“时间”,换通过适当增加冗余存储空间来显著地提高系统查询速度,所以本系统数据仓库的逻辑模型采用星型模型
。
数据仓库中的每个主题都需要通过一个或多个相关的事实表进行具体设计实现。事实表不仅是数据仓库的核心,也是构成数据仓库的所有类
[14]
它包含和决策目标紧密相型表中体积最大的,
关的数据信息。事实表的内容一般由两部分组
成:键和指标。事实表使用键把各个维度表联系起来,指标用于记录事实表的详细信息。不同的主题设计的事实表各有不同,以渠道主题为例设计事实表,它包括渠道工程信息表、配套工程信息表和工程历次建设信息表。3.2.1维度表设计
就得到维度表。事实表中的内容进一步分解,维度表是事实表的关联表
[15]
,含有事实表中的特
征数据,使用关键字同事实表进行关联。维度表用于说明对象的逻辑中还包含有多个详细属性,
关系。在设计维度表时,尽可能简化维度表与事
尽量减少表之间连接数量,以减实表之间的联系,
轻计算机系统的运算负担。
下面列出渠道主题的的配套工程信息事实表
的维度表:
建设时间维度表:年、月、日;主要工程量维度表:土方、石方、混凝土方、钢筋用量;
建设投资组成维度表:上级资金、地方配套、群众自筹。3.3物理模型设计
物理模型设计即为逻辑模型中的数据确定一个符合要求的物理结构式
[17]
[16]
,也就是将逻辑模型当
中的相关内容转变为在计算机系统可以存储的模
。在认真分析系统数据仓库的基础上,研究数据使用环境及使用方式它的存储结构及方法、
和数据信息规模等主要参数,完成水利工程信息管理系统数据仓库的物理模型设计。3.4数据仓库的实现
3.2逻辑模型设计
逻辑模型是数据仓库从概念模型向物理模型
过渡的中间层次模型。逻辑模型设计是把概念模型当中各种概念和实体间的相互关系,进行分解细化,使之能适应计算机系统存储模式。逻辑模型设计主要包括事实表的设计和维度表的设计。3.2.1事实表设计
系统使用SQL Server 2005中的数据仓库工具建立数据仓库,使用JSP 实现数据仓库的接口设计,使用Analysis Services 工具采集和分析数据信转换、息。数据的采集工作就是进行数据的抽取、清洗和装载的过程,将业务数据库当中的水利工程数据信息加载到数据仓库中,从而完成数据信息从数据源向数据仓库的转化。它主要进行:识管理元数据,集成不同数据源的数别数据源信息,
据格式,清理数据集,数据分割,定期更新和维护数据。
[7]王春波,杨大兵.基于ArcSDE 技术的地籍管理系统
J ].河北工程大学学报:自然科学版,2010,27研究[(3):77-80.
[8]蒋薇,赖青贵,陈楠.基于B /S架构的" 神龙一号"
.强激光与粒子束,2010,22数据库系统的实现[J ](3):642-646.
[9]张颖,刘惠德,侯旭辉,等.矿井水文地质信息系统
J ].河北工程大学学报:自然科学版,的设计与实现[2008,25(4):82-85.
[10]胡逢恺,赵刚,程旭.基于SQL Server 数据库的三
J ].四川理工学院学报:自维模型存取研究与实现[
2010,23(2):212-215.然科学版,
[11]胡开明,陈建华.用.NET 实现对SQL SERVER 数据
J ].四川理工学院学报:自然科库安全的动态监控[
2010,23(3):299-302.学版,
[12]黄晓颖,李亚芬,王普.基于数据仓库的学科建设
.计算机工程与设计,决策支持系统的设计[J ]2010,31(23):4995-4998.
[13]秦永平,王丽萍.基于数据仓库的突发公共卫生事
J ].计算机工程与设计,2010,31件预警预报系统[(13):3119-3122.
[14]赵宝华,阮文惠.高校财务数据仓库的设计与实现
[J ].计算机工程,2008,34(17):266-268.[15]王志宏,顾新建.基于数据仓库的产品族供应链管
J ].浙江大学学报:工学版,2009,43(7):理系统[1197-1202.
[16]李志刚,马刚.数据仓库与数据挖掘的原理及应用
[M ].北京:高等教育出版社,2008.
[17]刘永立,王海涛,孙维民,等.基于基础数据库的煤
.黑龙江科技学院学矿应急救援指挥信息系统[J ]2010,20(1):44-47.报,
(责任编辑
马立)
4结语
本文设计开发的水利工程信息管理系统,利
用数据仓库技术确定渠道、科室和资金3个主题,利用OLAP 技术从不同的维度、侧面和数据综合程度对数据信息进行多种不同形式地观察,从而达到获取这些直接数据信息背后关于3个主题的隐含信息的目的。如果用户对隐含信息的获取有新的或不同的需求,可以增加或更改主题,并按照新主题设计数据仓库。参考文献:
[1]蔡阳,詹全忠,周维续,等.水利信息系统运行保障
.水利水电技术,2010,41平台关键技术研究[J ](2):91-93.
[2]朱俊昌,高亚楠,郑源,等.中小型水利工程管理系
.水电能源科学,2010,28(8):统的设计与实现[J ]140-142.
[3]吴杰,王冬梅.水利工程科技档案管理信息系统设
J ].人民长江,2007,38(11):194-195.计与实现[
[4]郭峻峰,倪志伟,高雅卓,等.一种提高数据仓库查
J ].计算机集成制造系统,2009,询效率的有效方法[15(12):2451-2457.
[5]陈步英,马骅,张小志.高校财务数据仓库研究[J ].
2010(11):119-120.财会通讯,
[6]杨云,罗艳霞.基于Web 数据仓库构建GSM 网络优
J ].计算机工程与设计,2010,31(12):2894化系统[-2900.