浅谈各数据库在湖南省气象预警信息应用中的比较

发表时间:2021/9/6   来源:《科学与技术》2021年第12期4月   作者:王子钊
[导读] 湖南作为一个北靠洞庭湖的东南内陆省份,有着年内气候变化大气候特点。夏日
       王子钊
       湖南省气象局 湖南长沙  410000
       
       湖南作为一个北靠洞庭湖的东南内陆省份,有着年内气候变化大气候特点。夏日气候高温多雨,平日高温酷热漫长,同时降水比较集中,也容易形成暴雨、山洪灾害;冬季也时有雨雪冰冻的灾害发生。湖南省气象局自2005年月起,开始通过短信、广播、传真、大喇叭等方式向全省气象责任人发布气象灾害预警信息。年平均发送气象预警2万县次、250万人次,发送预警信号年平均4万县次、1700万以上人次。再加上平日向社会公众发送的城市、对农等天气预报消息,在汛期的短信发送高峰期间,下发压力巨大,对数据库的运维要求也极高。目前,在气象预警服务的应用项目中,运用得最为频繁的,是SQL server、MySQL和Oracle三种数据库。本文以自身在气象预警行业中的运用经验,分析与比较SQL server与Oracle两种数据库的特点与区别。
        SQL Server 数据库:
       SQL Server是一个由微软公司推出的可扩展的、高性能的、为分布式客户机或服务器计算所设计的关系型数据库管理系统,并为此提供了基于事务的企业级信息管理系统方案。它最初是由微软、Sybase和Ashton-Tate三家公司共同开发,后由微软独立推出windows相关版本。
       作为一个关系数据库关系系统,主要包括了两大大主要特征:在查询数据库数据时,对数据信息进行分类,归纳统计,实现数据之间的联系和汇总,并以合理的存取方式提高数据库的工作效率;在添加修改或删除数据库数据时,提供对多种关联及分关联信息的处理工作,并对改动进行数据优化,使之更加快速,稳定。[1]
       总体来说,SQL server是一个优秀中大型数据库,并在湖南省气象预警信息化的前中期发挥了巨大的作用。
       自2005年湖南省气象局开始通过短信方式向社会公众与防汛责任人发送气象预警开始,便开始使用SQL Server数据库作为预警发送对象的存储数据库,其强大的数据复制、增删、修改模式及表单录入系统,特别是SQL server简单易懂的查询语句和高速快捷的查询速度,为职能部门的日常办公生活提供了极大便捷。
       比如说对于气象防灾责任人的信息,通过各级市区县气象局收集到信息后,可以通过excel表单的方式快速录入到数据库中。通过设计多个表多个键的方式,使用户数据的的查询和提取可以精确到村甚至到户。
       在使用SQL server为主数据库进行预警发送的10年里,预警发送峰值能达到260条/秒,一条省级预警能在几分钟内通过三个运营商全部成功发送成功。自2015年气象预警发送平台上线后,又加入了重大天气社会公众群发、决策消息发送等功能,在社会公众消息群发方面,此时SQL server数据库容量的问题已经初步有了显现,十万量级的群发光提取需要比较长时间的耗时。
       另一方面,在社会公众气象短信发送方面,城市天气预报,三天预报、为农预报、旅游预报等短信,至今全部也通过SQL server存储。
       对于较大的数据存储,由于SQL server的存储上限的缺陷,比如说社会公众气象短信用户,也能通过分成以号码结尾0~9分为多个中大型数据表,在通过连接查询等方式,完成数据迅速提取。下发回执等信息等信息量大的数据,也能通过建立多个表通过uid的方式连接在一起的方式存储。
       由于近期移动手机应用程序的兴起,气象短信用户开始出现负增长的情况,SQL server作为一个比较成熟稳定,并在气象公众短信群发方面使用多年的数据库,依然能够满足公众短信群发数据存储的需要,同时其相较于oracle低廉的使用价格,也使其更有利于保持成本。

SQL server数据库至少在近期内将会在气象短信业务中继续使用下去。
        Oracle数据库:
       Oracle数据库同SQL server一样,也是一个关系数据库关系系统。作为甲骨文公司推出的以分布式数据库为核心的一款产品,可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。
       Oracle数据库具有完整的数据管理功能,对比起其他主流数据库,能存储更大级别的数据,并且更加稳定、持久。同时,其数据的共享性和分布式处理功能,使其能在多个不同系统、不同平台上兼容运行。Oracle的可用性强、可拓展性强、数据安全性强和稳定性强的四大特点,让其成为了世界上最为主流的一款数据库系统。
       为了提升气象防灾减灾水平和精细化服务质量,2016年11月湖南省气象局上线了湖南省突发事件发布平台,该平台已实现13种发布渠道,包括手机短信、声讯、大喇叭、显示屏、网站、电视广播、微博微信、北斗卫星等可传播预警信息,接入水利厅、电力局、林业厅等省级预案单位24家,并投入业务运行。在能保证准确发布气象灾害预警的同时,也兼顾森林火险、山洪、地质灾害等预警信息的发布。
       由于数据存储的需求面扩大、下发数据增多等因素,湖南省气象预警发布数据开始采用Oracle数据库进行数据存储。数据库分为业务数据库与短信平台数据库:
       业务数据库用于存储气象灾害预警所需要的各种业务数据。湖南省气象台发布重大气象灾害警报后,预警系统自动分析警报信息的格式,并做格式转换后针对不同的媒体发布不同的内容形式,以新的数据格式存入业务数据库服务器。
       短信平台数据库服务器用于存储短信平台所需要的各种数据,如定制用户数据、预警用户数据、计费数据、发送任务数据等。预警系统得到适合各类短信格式的预警信息后,调用短信平台数据库服务器中的相关存储过程,生成预警信息发送任务,存入短信平台数据库服务器中。[2]
       自应用以来,Oracle数据库对比SQL server数据库在气象预警信息运用方面体现了如下优势:第一,如上文所说,使用SQL server的预警信息发布平台在中后期开始,出现了数据提取时间过长的缺点,在改用Oracle这个大型级别数据库以后,处理速度和稳定性有了极大的改善。移动线路的网关下发速度峰值,也由使用SQL server时的200条/秒,增长到了现在的400条到500条/每条,大大的提升了预警信息下发效率。第二,因为新预警发布系统与多个省级政府机构合作,所以对于数据的安全性要求有了提高,而Oracle的高安全性也更加适合新系统带来的新要求。
       而使用Oracle数据库当作预警主数据库也带来了新的问题和挑战:首先,由于预警服务器的短信下发网关还是使用的之前系统的旧网关,在经过oracle提取过量大的数据后,一次性全部传输到网关,偶尔会出现报错的问题。第二,由于Oracle是大型数据库,新的系统也因合作单位众多存储了大量的数据,导致有时候提取数据涉及的表单过多,查询简单的预警数据反而速度会比当初用SQL server查询时较慢。第三,Oracle作为一个非开放式的盈利性数据库,其高昂的使用价格,提高了预警信息的发送成本。
       经调查,目前我国其他省份的气象预警发布系统中,大部分数据存储也都采用了SQL server或Oracle作为主流数据库。性价比更高的SQL server数据库更适用于需求兼容性低,性能要求居中的项目系统要求。而Oracle数据库更适合由省级政府联合主导的对各方面要求偏高的大型预警项目。
       参考文献:
[1]闰旭. 浅谈SQL Server 数据库的特点和基本功能
[2]朱国强. 湖南省重大气象灾害预警信息发布系统的设计
作者简介:王子钊 (1986-),性别:男,民族:汉族,籍贯:湖南长沙,职称:气象应用工程师,学历:硕士,单位:湖南省气象局,研究方向:气象预警应用类。
投稿 打印文章 转寄朋友 留言编辑 收藏文章
您可能感兴趣的其他文章
•   ...
•   ...
•   ...
•   ...
•   ...
•   ...
•   ...
•   ...
•   ...
•   ...
•   浅谈...
•   肉鸭...
更多>>
  期刊推荐
1/1
转寄给朋友
朋友的昵称:
朋友的邮件地址:
您的昵称:
您的邮件地址:
邮件主题:
推荐理由:

写信给编辑
标题:
内容:
您的昵称:
您的邮件地址: