浅谈数据库在交换网综合网管告警分析中的应用
摘要:文章主要讨论怎样利用mysql数据库及数据库管理工具kettle和navicat,使用sql语言的查询语法实现对原始告警数据的筛选工作,从而达到减轻日常的告警分析工作量、提高工作效率的目的。
关键词:交换网 数据库 sql 1 背景资料 随着交换网络的不断发展,对现有交换网络网元监控及维护的要求越来越严格,需要建成一套处理能力强、功能丰富、传输速率高、扩展性强的先进交换网综合网管系统,实现对交换通信网络的集中管理、集中监控和集中维护。 由于交换网综合网管监控全网所有交换局点,交换机机型的多种多样性造成交换综合网管收集交换局点上报的告警复杂多样。铁通公司现网程控交换机型主要有三种,分别为:华为机型、中兴机型、贝尔机型。每天交换网综合网管收集交换局点上报告警达到数万条,交换网综合网管收集告警多,而且种类也十分繁杂,这是由于交换机的厂家不同,造成同一类别告警在交换综合网管上呈现的告警级别严重程度也不相同,而真正找出那些对交换网业务有影响的告警,就变得十分困难,这对告警分析工作造成很大的工作量,使告警分析工作的工作效率十分低。为了改变这一现状需要对所有厂家交换机的告警进行告警标准化。 2 应对措施 告警标准化的含义也就是对厂家告警进行全量梳理,重新定义告警的级别、分类、影响等内容,实现不同厂家专业告警的统一定义、统一处理要求、统一管理,从而标准化故障管理。标准化告警内容如下表,其中网管告警id是告警唯一标识字段。 3 数据库应用 经过长期摸索及实践,为了便于对交换网综合网管收集的告警进行分析,我们开发了一套交换网综合网管告警分析系统。该系统的组成及运作方式如下: ①采用mysql数据库进行告警及基础数据管理。 ②利用kettle以每3小时一次自动抽取24小时内+手工抽取4小时内两种方式获得综合网管系统告警数据库的告警记录。 ③以局点、发生时间及告警描述为关键字,用“插入/更新”的方式装载到分析系统。 ④根据预先制定的关键字关联筛选出重要告警。 ⑤最后再按照局点及告警明细对首次发生时间、最后恢复时间、累计时长及发生次数进行归集呈现。 所谓关系数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。关系模型是由埃德加•科德于1970年首先提出的。现如今虽然对此模型有一些批评意见,但它还是数据存储的传统标准。标准数据查询语言sql就是一种基于关系数据库的语言,这种语言执行对关系数据库中数据的检索和操作。关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。 目前主流关系数据库中付费的有oracle、informix、ms-sql server、sybase、access等;免费的有mysql、postgresql等。其中oracle被称为花钱的数据库中功能最强的;而不花钱的数据库中postgresql号称功能最强,但运用最广泛却是mysql,而我们的交换网综合网管告警分析系统是基于mysql数据库。 mysql数据库是一个中、小型关系型数据库管理系统,由瑞典mysql ab公司开发,目前属于oracle公司。mysql是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。mysql的sql语言是用于访问数据库的最常用标准化语言。mysql软件采用了gpl(gnu通用公共许可证),它分为免费版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择mysql作为网站数据库。由于其免费版的性能卓越,搭配php和apache可组成良好的开发环境。 与mysql数据库搭配使用我们选择的数据库管理和开发工具是navicat。navicat为专业开发者提供了一套强大的足够尖端的工具,但它对于新用户仍然是易于学习。使用了极好的图形用户界面(gui),可以让你用一种安全和更为容易的方式快速和容易地创建、组织、存取和共享信息。基于windows平台,为mysql量身订作,提供类似于mssql的用管理界面工具。此解决方案的出现,将解放php,j2ee等程序员以及数据库设计者、管理者的大脑,降低开发成本,为您带来更高的开发效率。用户可完全控制mysql数据库和显示不同的管理资料,包括一个多功能的图形化管理用户和访问权限的管理工具,方便将数据从一个数据库移转到另一个数据库中(local to remote、remote to remote、remote to local),进行档案备份。navicat支援unicode,以及本地或遥距mysql伺服器多连线,用户可浏览数据库、建立和删除数据库、编辑数据、建立或执行sql queries、管理用户权限(安全设定)、将数据库备份/复原、汇入/汇出数据(支援csv, txt,dbf和xml档案种类)等。 利用上述数据库工具我们建立交换网综合网管告警分析数据库,在交换网综合网管告警分析数据库中建立的第一个数据表为原始告警数据表,此表中的数据来源于交换网综合网管收集的全网交换机上报的所有原始告警。第二个数据表为告警类型表,该表数据内容是厂家告警标准化的映射数据。 4 原始告警自动采集 交换网综合网管告警分析系统数据库数所需据表已经建立完毕,现在接下来说一下交换网综合网管告警分析系统数据库的原始告警收集。交换网综合网管将全网交换机上报的告警进行收集,存放到交换网综合网管的告警数据库中,而交换网综合网管告警分析系统的数据库与交换网综合网管的告警数据库是相互分离的,那它们之间的数据传递就存在问题。怎样将综合网管数据库中的告警导入到告警分析系统中呢?可以人工操作,先将交换网综合网管告警数据库中的告警导出,再人工将导出的告警数据导入交换网综合网管告警分析系统数据库的原始告警表中,这样告警导入导出的时间又是个问题,操作频繁会造成人力的浪费,如果一天一次又有可能造成告警发现延后不能体现告警分析系统的作用,而且人工操作难免出现人为误操作问题。这时我们利用一款数据库管理工具kettle(kettle是一款开源的etl工具)。 etl是extraction-transformation-loading的缩写,中文名称为数据提取、转换和加载。etl包含了三方面,首先是“抽取”将数据从各种原始的业务系统中读取出来,这是所有工作的前提。其次“转换”按照预先设计好的规则将抽取得数据进行转换,使本来异构的数据格式能统一起来。最后“装载”将转换完的数据按计划增量或全部导入到数据仓库中。它允许你管理来自不同数据库的数据,通过提供一个图形化的用户环境来描述你想做什么,而不是你想怎么做。kettle中有两种脚本文件,transformation和job,transformation完成针对数据的基础转换,job则完成整个工作流的控制,我们就是利用这款工具软件将交换网综合网管告警数据库中的告警数据自动抽取、转换最后传送到交换网综合网管告警分析系统数据库中。 5 告警分析 解决了数据库建立及数据采集等问题,下一步我们利用sql语言来实现对原始告警数据的筛选工作。交换网综合网管告警分析系统所需要的所有数据表全部建立,而且数据采集问题也得到了解决,接下来的工作就是怎样利用这些数据表之间的关系,采用什么手段来实现告警分析工作。告警分析我们要做的就是从上万的原始告警中找到那些造成业务中断或可能会严重影响交换网络的告警,找到告警后,根据告警逻辑分类中告警的位置找到告警的模块或用户单元的名称,以便于我们直观的找出是哪些地方中断了,能够及时处理。为了达到我们告警分析的要求,我们需要用到sql语句中的联合查询等语法。 通过sql语句可以对原始告警进行进一步的分析处理,例如一个模块局一天中断50次,就会产生50条中告警,如果这种多次中断的告警很多,对我们的告警分析也会造成一些麻烦,利用sql语句可以将这50条告警合并成一条告警,只记录该告警的最早发生时间、最后回复时间、每次告警产生后到恢复总的经历时长以及告警发生的总次数,通过这样处理使告警更加直观,便于告警的发现和处理。 交换网综合网管告警分析主要部分筛选sql语句如下: select l.ne_name as 局名,min(start_time) as 最早发生时间,max(end_time) as 最后恢复时间,sec_to_time(sum(time_to_sec(lishi))) as 总历时, count(*) as 发生次数,b.rackname as `模块(机架)名`,b.boards as `模块(单板)号`, b.boardtypename as 单板类型, l.miaoshu as 描述from alarm_list l,zxj10 b where b.ne_name = l.ne_name and b.boards = substring_index(substring_index(miaoshu,’alarminfo=位置:’ ,- 1),’(‘,1)and (miaoshu like ‘alarminfo=%列%’ and miaoshu not like ‘%pcm%’) and start_time>date_sub(now(),interval a hour) group by 1,6,7,8,9 order by 1,7,8,2,3。 6 小结 通过利用数据库来实现交换综合网管告警分析工作,不仅对原始告警数据进行了有效保存,对以后的分析工作提供了数据保障,而且主要提高工作效率的目的也很好的得以实现,同时该系统有很好的可维护性,对以后交换网综合网管告警分析系统的改进提供了扩展空间。通过本文可以看出在工作中合理利用数据库,可以提高我们的工作效率,尤其是数据量很大的分析工作。 参考文献: [1]姜承尧.《mysql技术内幕》.机械工业出版社.2012-4-1. [2]周峰,张振东,张术强.《sql结构化查询语言速学宝典》.中国铁道出版社.2012-1-1. [3]龚小勇等.《关系数据库与sql server2005》.机械工业出版社.2012-1-1.- 1渠道工程施工方案22p
- 2安全工程师安全生产技术复习资料——视觉损伤
- 3安全工程师安全生产技术复习资料——电气化铁路接触网触电伤害事故
- 4[PPT]浅埋暗挖隧道施工技术及施工风险培训讲义79页
- 5某公园园区施工方案93p
- 62008年二级建造师考试《施工管理》练习题(七)
- 7武汉某大型建筑企业环境因素识别与评价清单
- 8可以同时报考二个不同专业的建造师吗
- 9热点问题:工程造价行业哪些岗位需要持证上岗?
- 10山洪防治县级非工程措施建设实施方案报告
- 11宿州市拟从四个方面进一步加强城市管理工作
- 12农业节水灌溉与发展
- 13浅析建筑给排水设计中节能技术的应用
- 14[河北]隧道工程光面爆破施工作业指导书
- 15供水设备中的供水管道怎么样防震
- 16注册安全工程师考试《安全生产技术》课堂笔记1
- 17广联达软件操作百问百答
- 18水库除险加固工程竣工验收施工管理报告
- 19构建全方位多层次住房保障体系——江西省九江市推进保障性安居工程建设侧记
- 20一级注册消防工程师技术综合试题:特定目的的评估
- 21四川省安全生产工作座谈会在成都召开
- 22轻钢龙骨隔墙壁纸施工示意图 内容
- 23《构造物试验检测》试题
- 24建设工程项目管理:建设工程项目决策阶段
- 25川黔线铁路安全卫士 风雨无阻换岔忙——记成都工务大机段珞璜换岔施工
- 26山岭隧道施工安全技术培训讲义128页(PPT 知名企业)
- 272015造价员《土建工程》:建筑工程
- 28一级建造师复习资料:机电工程招标文件编制的内容
- 29关于房屋裂缝的调查与分析
- 30一级建造师管理与实务复习要点:全费用单价计算
成都公司:成都市成华区建设南路160号1层9号
重庆公司:重庆市江北区红旗河沟华创商务大厦18楼