基于报表服务技术的GPRS网络性能展示平台设计.docx
- 文档编号:577380
- 上传时间:2023-04-29
- 格式:DOCX
- 页数:34
- 大小:374.85KB
基于报表服务技术的GPRS网络性能展示平台设计.docx
《基于报表服务技术的GPRS网络性能展示平台设计.docx》由会员分享,可在线阅读,更多相关《基于报表服务技术的GPRS网络性能展示平台设计.docx(34页珍藏版)》请在冰点文库上搜索。
基于报表服务技术的GPRS网络性能展示平台设计
HUNANUNIVERSITY
毕业设计(论文)
设计论文题目:
基于报表服务技术的GPRS网络性能展示平台设计
学生姓名:
陈雄平
学生学号:
20041610301
专业班级:
软件工程2004级开发2班
学院名称:
软件学院
指导老师:
陆绍飞
学院院长:
林亚平
2008年5月24日
基于报表服务技术的GPRS网络性能展示平台设计
摘要
报表是一件用来传达信息的艺术品,但不同于常规的艺术品,消息可以随着驱动它的数据而改变。
报表也是一个非常广泛的主题,范围包括从装箱单、电话费账单到即席分析和Excel电子表格。
首先对报表下一个简单的定义:
报表是一个信息交付平台。
当然,这个定义也非常广泛,它确实允许我们将精力集中在设计上,同时留给我们很大的空间在后续版本中进行扩展。
GPRS网络性能评估中存在数据业务量大、数据逻辑关系复杂、数据查询展示困难等问题。
本系统采用RDLC报表作为数据展示的一种方式,力求以一种直观、舒适的方式将GPRS网络中的各项性能指标值准确、客观、详细地展示给网络优化工程师,为他们指定网络优化方案提供可靠的依据。
同时为了提高系统的可扩展性、可靠性、用户体验,本系统还引入了观察者设计模式。
关键字:
报表服务,RDLC,观察者设计模式,GPRS
GPRSNetworkPerformanceDisplayPlatformDesignBasedonReportingServices
Abstract
Areportisapieceofartmeanttocoveyamessage,butunliketraditionalart,thatmessagechangesbasedonthedatadrivingit.ReportingisaverybroadtopiccoveringareasrangingfrompackinglistsandtelephonebillstoadhocanalysisandExcelspreadsheets.WhendesigningMicrosoftSQLServerReportingServices,Istartedwithasimpledefinitionforit:
aninformationdeliveryplatform.Whilethisdefinitionisalsoverybroad,itdidallowustofocusonourdesign,whileleavingussignificantroomtoexpandinlaterversions.
GPRSnetworkperformanceevaluationhasmanydifficulties,suchasthereistoomuchdatathatitisdifficultforustoenquiriesanddisplayforthenetworkoptimizationengineers,andthedata’slogicisalsocomplex.ThesystemusesRDLCstatementsasawaytoshowdata,westrivetodisplaytheperformanceofGPRSnetworkaccurate,objective,detailedinanintuitive,comfortablemanner,Thesedatawillserveasaveryimportantmessagewhichthedevelopmentoftheirnetworkoptimizationprogrammerisbasedon.Meanwhile,inordertoimprovethesystemscalability,reliability,userexperience,thissystemalsointroducedthedesignoftheobservermode.
Keywords:
ReportingService,RDLC,ObserverPattern,GPRS
1绪论
1.1课题的背景及目的
随着移动通信技术的发展,GPRS网络日趋成熟,GPRS网络与百姓的日常生活、工作息息相关。
因此GPRS网络的服务质量的好坏成为了人们密切关注的话题。
传统数据业务网络的性能评估、分析与优化建立在人工现场数据业务测试结果(定点拨打测试CQT与路测DT)与网络设备的统计数据(无线网PM统计数据与核心网统计数据)之上,原始数据的采集与分析需要依靠大量的人工参与,并且存在许多的弊端。
一、优化的范围狭窄。
传统优化解决方案即使拥有大量熟练的测试工程师,也无法覆盖到数据业务网络的每个角落,仅能关注到有限的重要场所和城市主干线;
二、优化的层次有限。
传统解决方案是“点到点、点到线”模式,而无法从网络整体的角度来进行优化与评估,更加无法对数据业务网络中的应用层设备例如网关、SP服务器进行性能的有效监控;
三、优化的细节缺失。
网络设备的统计数据无法深入数据业务使用状况的细节,问题发生时的现实状况无从知晓,在处理用户投诉时较为被动;
四、优化的技术手段缺乏。
现有的解决方案基本还停留在大量人工分析的阶段,对优化工程师的技术与经验要求较高,无法满足网络业务增长对网络优化速度要快、质量要高、覆盖面要广的要求。
以上种种传统解决方案的弊端,催促了数据业务优化解决方案向自动化、智能化等方向的发展。
本课题研究是基于系统在某地区GPRS现网中所采集的真实、海量的用户数据,以完全不同于传统数据业务优化服务网络性能评估的方式,从现网中数以几十万计的用户真实体验出发,对该地区的无线网数据业务性能、核心网数据业务性能、应用层设备业务性能以及端到端应用业务性能进行完整的评估,将各项数据业务性能指标以报表的形式直观、形象、具体展示给数据业务网络优化人员,为GPRS网络优化提供解决方案!
1.2系统使用报表展示的作用与意义
报表的最激动人心之处就在于它是如此普遍。
像基本的交通运输一样,每个人都在以这样或那样的方式使用它。
报表是一件用来传达信息的艺术品,但不同于常规的艺术品,消息可以随着驱动它的数据而改变[1]。
报表是一个非常广泛的主题,范围包括从装箱单、电话费账单到即席分析和Excel电子表格。
首先对报表下一个简单的定义:
报表是一个信息交付平台。
当然,这个定义也非常广泛,它确实允许我们将精力集中在设计上,同时留给我们很大的空间在后续版本中进行扩展。
信息不仅仅是数据;它是转换成有用信息的数据。
转换过程非常重要。
任何工具都可以阅读并显示该数据;人们为完成工作而真正需要的数据是经过慎重选择的、正确的和密切相关的信息。
有许多工具可以让用户访问数据,建立“视图”和“报表”。
但是,这些用户常常不了解数据存储的所有细微差别,从而会产生不准确的结果,或者一不小心就会影响数据引擎的性能。
报表服务以官方源的方式运行,从而使每个人都使用正确的同一版本。
数据常常不是存在一个数据库中甚至来自于一个数据库,这对于我们这些处理公司数据的工作人员来说是个令人痛苦的事实。
只有极少数的报表(或者能提供充分见解的报表集)是来自单一数据源的。
建立多种类型的数据集市(datamart)或数据仓库是最佳的解决方案,但常常因时间、政策或预算的限制而不可能实现。
报表必须能够从任何一个数据源获取数据,并将所有数据结合在一份报表内[1]。
在需要信息而得不到它的时候,这些信息就会显得弥足珍贵。
交付信息比只处理信息和加工信息更重要;在用户需要时,它能在用户拥有的设备上提供任何格式的信息。
今天最常见的案例是普遍存在的用户利用某个浏览器通过HTML进行在线访问。
如果计算机连接到了服务器上,这会是完美的。
但是众所周知,没有什么事情是完美的。
当我们在飞机上、在汽车里、陪同客户、在游戏中、在生产基地等类似的场合时,我们需要报表。
我们同样需要报表的多种功能:
交互性、点对点打印、应用程序集成——类似MSExcel的“如果怎么样,那么会怎样”的场景和附加分析、经由PDF的通用访问等。
单一的格式和单一的交付渠道是不够的,但是如何知道自己需要哪一种选择呢?
报表服务可令人远离这些选择。
所有的报表可以以任何渠道分发或者以任何格式呈现。
报表设计独立于报表的使用方式。
在给定了指定格式或者所需渠道的约束后,系统的责任是提供尽可能准确的报表[2]。
建立一个平台与建立一个解决方案是不同的。
实际上,在很多情况下,二者的目标是完全相反的。
如果开发人员和管理员已经访问了产品的所有方面,那么这个平台是成功的。
他们要能够优化、扩展、限制、嵌入和替代产品的某些部分来满足需求。
这意味着所有API都是可用的并且编制了文档,所有格式都是开放的和描述清楚的,而且每个组件都是可配置的或可替代的。
当然,软件设计往往因多种权衡而存在很多限制,在建立报表服务时,这是努力的目标。
与Windows、SQLServer或VisualStudio非常类似,报表服务是为了使开发人员能够基于一个坚实的基础创建报表,在相当短的时间内以更多的功能来满足商业需要,而且无损其灵活性和自创报表的能力。
2项目需求
2.1系统描述
系统为数据业务优化工程师提供人机交互的界面,提供对数据业务网络各级网元的性能指标、各种数据应用业务的性能指标的单个或组合的查询,其查询结果通过报表展示出来,对于无线网相关的性能指标,还可以直接输出到电子地图进行展示。
对于通过报表和电子地图展示的结果,可以供使用者自由选择丰富的格式保存,报表结果中的图形可以输出到Excel和PDP,表格可以输出到CSV格式文件;电子地图的结果展示可输出到CSV或Excel。
系统另外为网优工程师提供了对整个系统运行所需的系统配置功能,包括数据库内的参数配置与客户端本身的运行参数配置。
2.2系统功能
功能性需求是系统应该做什么的陈述,它是系统功能的陈述。
从系统最终使用者的角度来看,本系统能够提供的功能可用五大类来概括:
浏览选择、定制模板、应用分析、结果展示以及运行配置。
2.2.1浏览选择
概述:
系统应该为网优工程师提供方便、灵活、可管理的数据业务网络各级网元与应用分析项目的浏览、导航的功能,快速地进行需要进行性能评估的网元与应用分析项目的组合选择。
Ø系统自动获取Athena系统中可用的各级网元列表,并至少每次在使用系统保持该列表的最新。
Ø系统支持用户定制的方式来展示网元,可按行政划分与逻辑划分两种方式来排列展示网元:
对于行政划分方式,可支持用户自行创建诸如省、市、县这样的行政区域。
对于用户定制的网元排列方式,可保存于Athena系统中,并供其他用户选择使用;对于逻辑划分方式,可支持用户选择是否只出现Network-LAC-Cell这三级网元排列,还是出现Network-LAC-BSC-Site-Cell五级网元排列。
Ø系统在某一级网元被选择后,在电子地图上标识出该级网元所涵盖的区域,仅限于无线网网元。
Ø系统可支持多个网元的选择,但仅限于同级网元之内。
Ø系统可在进行网元浏览时支持右键功能,方便地选择应用分析项目或者用户自定义好的应用分析模板。
Ø系统应该自动获取Athena系统中可用的应用分析项目列表,并至少每次在使用系统保持该列表的最新。
Ø系统应该支持用户定制的应用分析项目模板,提供用户选择决定是否加入到网元浏览、应用分析项目浏览时的右键菜单中去。
Ø系统应该可以从电子地图上自由的选取小区级的网元(单个或多个),通过右键功能进行应用分析选择。
Ø系统应该可以让用户通过选择网元类别和输入网元名,查找、定位到相关的网元,暂不支持模糊查找。
2.2.2定制模板
概述:
系统除了为用户提供系统内置的应用分析项目及其组合(简称系统模板)外,也提供用户自定义应用分析项目模板,并保存供以后直接使用。
功能描述:
Ø系统应该提供应用分析项目模板管理的界面,可对内置系统模板进行查看、不允许修改、删除操作;对用户自定义的模板进行添加、删除、修改等操作。
Ø应用分析项目模板所包含的内容:
模板名、模板说明、应用分析条目组合(单个KPI或多个KPI)、每个应用分析条目的参数设置(门阀值、图表展示方式等)、电子地图输出设置(输出的KPI项、KPI值的类型-平均值/最大值/最小值)
2.2.3应用分析
概述:
系统让用户对所选择的网元集合进行灵活的应用分析配置选择,对应用分析的内容、时间范围、展示形式做出具体的控制。
2.2.4报表结果展示
概述:
系统为用户提供丰富、多样的应用分析结果展示功能,包括图形的展示、表格的展示和电子地图的展示。
功能描述:
Ø系统为用户提供将分析结果用Chart+dataGrid报表展示的功能。
Ø系统应根据不同类型的KPI输出不同类型的报表图形,以示区别。
Ø系统应为用户提供选择报表时间粒度的功能。
时间粒度暂时分为:
10分钟,一小时,一天。
Ø系统应该为用户提供同类多网元分KPI展示的功能,展示图形分为饼状百分比对比图和连续的发展趋势对比图(不同网元用不同颜色标示),系统还为用户提供选择输出图形的功能。
Ø系统应该为用户预定制一些一般用户常用的报表,还应该为用户提供用户自定制报表的功能。
Ø在报表生成以后,系统为用户提供对报表进行导出操作的功能,导出报表时用户可自定义保存路径,其中数据表默认为excel格式,数据图默认为csv格式。
Ø在用户等待报表生成的过程中,显示报表生成的进度条。
3系统架构设计
3.1系统主架构
本课题设计的架构采用分层结构,主要分为表示层、业务逻辑层、数据访问层、数据存储和数据管理层。
表示层由用户界面和用户界面控制逻辑组成。
客户端的用户界面,作用于良好的人机交互,负责从用户方接收命令,请求,数据,传递给业务层处理,然后将结果通过电子地图或者报表的形式呈现出来。
主要包括系统登录界面、网元浏览器、应用分析浏览器、应用分析配置界面、电子地图展现、报表展现、模板管理界面以及系统配置界面八大部分。
用户界面的控制逻辑负责处理用户界面和业务逻辑层之间的数据交互以及各用户界面之间状态流程的控制,同时负责简单的数据验证和格式化等功能,形如应用配置分析界面的时间格式处理、窗体的Load事件的处理,以及控件的Click事件的处理。
业务逻辑层封装了实际的业务逻辑处理,包括系统登录验证;网元浏览器网元列表的加载、更新以及选取网元在电子地图的呈现处理、网元应用配置分析;应用分析浏览器的更新以及选取模板进行应用分析配置;电子地图基站表导入、图层属性控制、专题图的制作等业务相关操作。
数据访问层为业务逻辑层提供与数据源交互的最小操作方式,仅仅是业务逻辑层需要的数据访问接口,业务逻辑层完全依赖数据访问层所提供的服务。
为了将客户端和数据库服务器分离,采用通过WebService来实现数据访问的操作,但是部分数据的访问还是通过直接连数据库服务器的形式实现的。
应用配置分析提取数据是通过WebService来实现,系统登录验证、电子地图基站表的导入、网元浏览器网元列表的获取、应用分析浏览器模板列表的获取都是通过直接访问数据库的形式实现。
数据存储和数据管理层主要负责基站表、各级网元信息表、KPI指标表、模板表等表的维护。
各层之间的依赖关系如下图所示
图3-1各层之间的依赖关系
系统的整体架构图如下图所示
图3-2系统整体架构图
系统的UI图如下图所示
图3-3系统UI图
3.2各功能模块架构设计
3.2.1登陆及主窗口架构设计
主窗体是登陆后的主要界面,提供弹出各种子窗体的菜单。
图3-4主窗口与各功能模块的关系
程序调用逻辑为
图3-5程序调用逻辑图
3.2.2网元浏览器模块架构设计
网元浏览器用于展示网元信息,提供”是否显示Lac分区”功能,和network-lac-bsc-site-cell或者network-bsc-site-cell分级别呈现网元的功能。
Ø接口
1)右键菜单调用应用分析配置界面
AppConfigconfig=newAppConfig();//应用分析配置界面
config.InitUI
(1);//设置界面按钮
config.SetNEs(nenames);//参数为网元名字的数组
2)Checkbox选择网元与电子地图交互
gis.IGISGetNE(selectnames,type);//参数为选择网元名字的数组,以及网元类型
Ø程序逻辑
图3-6程序调用逻辑图
3.2.3应用分析浏览器模块架构设计
应用分析浏览器提供了系统分析项目和用户自定义分析项目的展示功能,双击可弹出应用分析配置界面。
所有应用分析配置项目的数据直接从数据库中获取。
Ø接口
双击弹出应用分析项目界面
AppConfigconfig=newAppConfig();
config.InitUI
(1);
config.SetTempID(id);//参数为模板的ID
3.2.4系统分析配置与LAC分区限制模块架构设计
系统配置用于配置客户端连接服务器所需要的信息以及调用webservice服务器的引用URL;
Lac区限制可以对所有的lac分区进行选择性的导入,即可屏蔽某些lac分区以提供系统工作效率。
Ø程序逻辑
图3-8程序调用逻辑图
3.2.5WebServices架构设计
Ø功能
目前整个WebService主要负担在应用分析配置时,根据客户端传来的参数,动态生成Sql查询语句,并将从数据库中查到的数据返回给客户端的功能。
Ø模块划分
根据其功能要求,将webservice部分分成了五个小的模块:
WebService门户模块:
由系统生成,是整个webservice的接口,负责从客户端接受参数,将计算结果返回给客户端
应用分析模块:
是webservice端应用分析的门户,负责将WebService门户传进来的参数传递给应用分析的具体实现模块,将具体实现模块得到的结果传给WebService门户
动态Sql生成模块:
根据应用分析模块传进来的参数,动态生成符合需要的Sql查询语句
数据访问模块:
接受各个模块传进的Sql查询语句,将查询结果返回给调用者
通用模块:
负责提供一些辅助的功能,比如写日志,读取配置信息
Ø模块间调用
图3-9WebService模块间调用关系图
Ø模块间接口
WebService门户模块:
1,产生报表需要的数据集:
Service.cs:
publicDataSetGetReportDataSet(stringNEType,string[]NEs,stringNEGran,int[]KPIid,string[]valueType,double[]maxValue,double[]minValue,DateTimeStartDate,DateTimeEndDate,DateTimeStartTime,DateTimeEndTime,intTimeGra,intTimeType,refstringsql)
2,产生电子地图需要的数据集
AppConfig.cs:
publicstaticDataSetGetGISDataSet(stringNEType,string[]NEs,int[]KPIid,string[]valueType,double[]maxValue,double[]minValue,DateTimeStartDate,DateTimeEndDate,DateTimeStartTime,DateTimeEndTime,intTimeType)
应用分析模块:
1,产生报表需要的数据集:
AppConfig.cs:
publicstaticDataSetGetReportDataSet(stringNEType,string[]NEs,stringNEGran,int[]KPIid,string[]valueType,double[]maxValue,double[]minValue,DateTimeStartDate,DateTimeEndDate,DateTimeStartTime,DateTimeEndTime,intTimeGra,intTimeType,refstringsql)
2,产生电子地图需要的数据集
AppConfig.cs:
publicstaticDataSetGetGISDataSet(stringNEType,string[]NEs,int[]KPIid,string[]valueType,double[]maxValue,double[]minValue,DateTimeStartDate,DateTimeEndDate,DateTimeStartTime,DateTimeEndTime,intTimeType)
动态Sql生成模块:
1,产生报表需要的SQL语句:
DynamicSQL.cs:
publicstaticstringGetReportSql(stringNEType,string[]NEs,stringNEGran,int[]KPIid,string[]valueType,double[]maxValue,double[]minValue,DateTimeStartDate,DateTimeEndDate,DateTimeStartTime,DateTimeEndTime,intTimeGra,intTimeType)
2,产生电子地图需要的SQL语句:
DynamicSQL.cs:
publicstaticstringGetGISSql(stringNEType,string[]NEs,int[]KPIid,string[]valueType,double[]maxValue,double[]minValue,DateTimeStartDate,DateTimeEndDate,DateTimeStartTime,DateTimeEndTime,intTimeType)
数据访问模块:
1,只执行SQL语句:
DBAccess.cs:
publicvoidexcuteSqlNonquery(stringstrCmd)
2,执行SQL语句返回数据集:
DBAccess.cs:
publicDataSetexcuteSqlQueryReturnDataSet(stringstrCmd,stringdsName)
通用模块:
1,读取配置节点的InnerText:
ConfigInfo.cs:
publicstaticstringGetNodeInfo(stringnodePath)
2,读取指定节点的指定属性值:
ConfigInfo.cs:
publicstaticstringGetNodeAttri
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 报表 服务 技术 GPRS 网络 性能 展示 平台 设计