优化设备管理信息系统 提高程序工作效率
2014-04-07方慕贤吴声援
方慕贤 吴声援
(宝山钢铁股份有限公司设备部 上海)
随着企业生产规模及管理业务的拓展,相应的设备管理信息系统用户需求及应用数据都会逐日增加,信息化管理系统运行一定时间后通常都会面临“减少系统冗余数据,提高程序执行效率”这类具有普遍性的实际问题。以下通过宝钢总部设备管理信息系统应用完善的案例,简要介绍设备管理信息系统应用完善的基本方法和成功的经验。
一、概况
宝钢设备维修综合管理信息系统(以下简称设备管理信息系统)包括设备基准信息(EN)管理、固定资产(EF)管理、点检(EC)管理、运行状态(EG)管理、检修(EM)管理、备件请购(ES)管理、备件修复(ER)管理、维修材料(ET)管理、维修成本(EC)及合同(EW)管理等主要应用子系统。初期规划设计的设备维修业务管理范围和系统应用功能于2001年全部研发完成,投入运行。随着设备管理业务应用需求的拓展和系统中历史数据不断积累,系统主机负荷上升速度很快,尤其是2003年下半年,工作时段系统主机CPU平均工作负荷实际上达到了运行上限的设定值。每逢月初和月底负荷高峰时,线上应用交易执行处理时间及等待周期变长,批次作业几乎无法执行,影响到用户的正常使用,面临需要再次扩容或者升级改造的系统风险。
根据对设备管理信息系统投运初期应用情况综合分析发现,由于部分业务流程基于原有的(手工)管理基本思路及用户作业习惯进行系统应用设计,未能有效发挥系统管理的效能,需要进行相应的完善优化。例如:设备维修协力合同管理业务结算流程实现跨部门、跨专业的整合,维修成本预算与消耗实际差异控制流程及检修项目计划、委托工令单信息的查询和打印流程等。
为了保证信息化系统有限资源的充分利用和高效运行,保证系统历史数据的完整和可追溯性,围绕设备信息系统“瘦身”(减少冗余数据,提高程序效率)的技术研究显得十分必要。从2003年6月起,宝钢设备部牵头与宝信软件公司再度合作,开始设备信息系统“瘦身”项目的研究与开发。于2003年12月完成了系统负荷与关键应用功能效率的监测与分析;2004年1月完成系统改善方案的基本设计;同年7月完成各应用子系统业务流程的完善及应用功能的优化;8月完成优化后系统性能的测试和试运行检验;9月开始对优化后系统应用操作的合理性、科学性、灵活性及安全性等方面进行了全面的应用考核。
二、主要研究内容及系统解决方法
(1)研究分析设备管理信息系统各类信息交易占用系统资源的情况。开发跟踪监测(JCL)和辅助分析统计(REXX)程序,对每天产生的几百兆系统数据进行跟踪统计,寻找影响系统效率的关键环节。通过对各子系统交易占用系统主机CPU的时间和对影响较大的线上交易进行重点分析,发现主机CPU开销在访问数据库(DB2)上约占了90%的时间,由此明确了优化方向重点是在应用程序访问数据库(DB2)的效率上。
(2)分析各类在线操作交易占用系统资源的情况,找出对系统CPU产生较大影响的线上交易。利用CANDLE DB2工具和开发的REXX程序,对各子系统交易占用CPU资源的数据进行统计分析,查找了占用系统资源较多子系统。如:维修材料(ET)子系统占33%左右,备件(ES)子系统占17%左右,合同(EW)子系统占14%左右,点检(EC)子系统占13%左右,确定优先对这些子系统应用交易进行重点的跟踪分析。
(3)找出了对CPU产生较大影响的线上交易应用效率欠佳的程序(SQL)语句进行优化。通过重点分析发现:有的单笔交易占用CPU的时间就超过几十秒钟(如EW82、EW83、ER83等),有的交易单笔虽然占用CPU的时间<1s,但是由于使用频次较大,累计占用时间很长(如:ET02、ET4A、ET4D、ES36、ES4D、EC65 等)。针对不同SQL语句访问数据库(DB2)的效率(COST开销),找出效率低(COST大)的SQL语句,进行优化处理(如:对应用子系统程序PACKAGE作REBIND或找到匹配INDEX最佳的SQL语句等)。
(4)分析程序访问DB2时使用INDEX(索引)的情况,优化数据库访问策略。例如:分析应用程序中PF7(向上翻页)、PF8(向下翻页)键的系统资源开销情况时,选用的相关数据库表(如:DTEMMF、DTEMC0),在开发环境放大选用的数据库表数据存储空间,将运行环境的数据导入开发环境相应的库表中,通过对应的交易界面(如:EM24)进行PF7、PF8翻页查询测试,收集分析交易时的CPU开销数据。然后,创建INDEX EM.DIEMMF06后重复上述同样的测试进行对比分析,得出PF7翻页时若没有INDEX,则系统开销将增加20%左右,以此作为应用程序中是否开放翻页功能或者是否需要建立新的INDEX的参考依据。
(5)定期进行数据归档,控制在线运行的系统数据量。根据对系统实际累积数据量进行统计发现:每月系统数据记录增长量都在百万条以上,而且有相当数量的应用数据一年后在线调用和访问的频次极少,长期在线保存势必影响系统的运行效率。因此,分析研究对在线数据进行归档处理的系统解决方案,开发对归档后历史数据的查询、调用应用功能,既提高了系统在线资源的利用率和运行效率,又满足用户对归档数据查询和调用的基本需求,系统响应时间有了较明显的改善。截至 2004年11月设备管理信息系统共归档了20 377 249条记录数据,有效减少了冗余的在线数据。
(6)重点分析、研究有关应用业务流程,优化整合设备管理信息化系统业务流程。完善相应的数据处理流程及应用程序(如:ER、EW等),去除了一些不必要的模糊查询应用功能(如:ET02、ET4A、ET4D、ES36、EC65 等),对多条件的查询,必须输入缩小系统数据搜索范围的基本查询指定条件,确保设备信息系统的高效、安全、顺畅。
(7)研究各种交易使用频度及用户的使用习惯,规范应用操作的方法。如:分析备件子系统中用户领用申请查询的操作使用习惯,限制了查询的范围,让用户输入某些数据项的前几位或全部,增加了错误操作的提示信息;并且加强对用户的操作培训,帮助用户改进不良的操作习惯,减少了无谓的操作,规范系统应用,提高应用访问数据库的性能。
(8)限制或优化部分报表查询及打印的应用。如:对ES4A(用于已发料清单查询打印)之交易限定发料日期及库区为必须输入的数据项;对ES4D(用于查询打印已消耗清单)之交易限制发料日期的查询范围≤3个月,制单人或备件管理号至少输入一项,而且制单人岗位号前三位不得为空;对ES4C(用于查询打印待消耗清单)之交易限制发料日期必须输入,制单人或备件管理号至少输入一项,且制单人岗位号前三位不得为空。
(9)在系统应用分析的基础上,对部分占用CPU时间较长的重点交易处理程序逻辑进行了集中优化工作。例如:①用户使用材料代码查询功能(ETOU02)的应用次数十分频繁,平均每天达3万多笔(每日最高达4.8万余笔)。对该交易进行跟踪分析发现对数据库操作时,应用程序先用子查询查出一结果集,再在结果集中进行查询,走不到主关键字cldm的索引。优化后取消了子查询方式,直接走cldm索引,提高了性能,每笔交易平均处理时间从以前的0.28s减少到0.007s;②当用户通过验收单(ETOU25)功能查询未开票的材料验收数据时需要查询验收明细数据库,数据量较大,运行时间较长。改进后,根据用户是否查询未开票信息作为判定条件,将原来的查询数据处理流程拆成两个分支,当用户查未开票验收信息时,仍然走原来的处理方法;③当用户查所有验收信息时,改查验收主数据库,可以通过程序索引大大加快系统响应速度;原材料领用申请查询(ETOU4A)程序需要通过两个索引,分别为CLDM+LYSQH和LYSQH,大量时间花在对LYSQH的排序上,而CLDM+LYSQH的索引对本程序是没有实际意义的。更改查询程序逻辑后,只走LYSQH一个索引,节省了大量的排序等待时间,每笔交易平均CPU时间从0.35s下降到0.01s。
三、实际效果
随着宝钢股份公司生产规模和产线的扩充,2004年宝钢设备信息系统的应用范围较2003年有了较大的扩展,例如,宝钢三号彩涂板等三期后项目的相继投产、十五规划项目(宽厚板连铸、厚板厂轧机、4BF)生产准备以及收并整合冷轧薄板厂(原宜昌薄板公司)、用户协作单位管理子系统(HC)应用功能的增加等,2004年(尤其是下半年)设备信息系统占用主机CPU的负荷率按理应较2003年同期有显著的上升,但是由于采取了“瘦身”措施,2004年9月以后系统CPU负荷率不升反降,达到了在同等业务范围条件下(与2003年底同口径比较)控制设备信息系统占用主机CPU的负荷率月平均下降4.48个百分点的预期研发目标。
四、结束语
由于设备管理水平的提升只有更好,没有最好。因此,设备管理信息系统应用完善是一项必须长期持续坚持的工作,只有开始,没有结束。通过对设备管理信息系统的优化,培养和造就一批具有现代化管理理念、掌握持续完善方法的系统应用维护人员,方能确保系统长期稳定运行,有效发挥系统的作用和效能。