面向核应急多源异构数据的数据库模块设计研究

2020-09-07 07:49裴秋艳陈春花郑晓磊吴宜灿
核科学与工程 2020年3期
关键词:核事故调用异构

裴秋艳,汪 进,陈春花,郑晓磊,何 桃,吴宜灿

(1.中国科学院核能安全技术研究所 中子输运理论与辐射安全重点实验室,安徽 合肥 230031;2.中国科学技术大学,安徽 合肥 230027)

核事故应急管理涉及数据量大,信息来源较为分散,而且涉及公众生命财产安全,对信息及时性和全面性要求比较高,信息调用的及时性在核事故应急早期尤为重要[1]。

随着大数据和信息化技术的快速发展,大量多源异构数据[2]可支持核应急决策,如:互联网时代舆情信息[3];近距离网格的气象、交通信息[4];场内、场外实时性增强的监测数据[5,6];智能化资源、救援力量储备、事故救援态势信息[7];核事故后果评价系统[8]所得数据;日渐完善的法律法规预案标准体系等。信息保障不充分、信息调用不及时而导致的决策错误在分秒之间损失巨大[9]。

信息管理技术中,关系型数据库有着20多年的技术历程,可以通过事务处理保持数据的一致性,数据更新的开销较小,因此国内外核应急与其他应急平台所用数据库为关系型数据库[10],如使用广泛的核应急决策支持系统JRODOS[11],所用数据库为PostGres SQL,但是关系型数据库强调对磁盘上数据的查询和检索,这限制了实时访问数据并进行实时在线分析的能力[12]。针对多源异构数据种类繁杂、海量多源、格式异构以及时变性等特点,目前常见处理方式有利用云服务器和云存储单元增强服务器处理性能[13]、基于元数据的一体化管理方法来优化检索功能[14]等,其中非关系型数据库NoSQL支持处理半结构化数据和非结构化数据[15],是处理多源异构数据的有效手段[16],调用速度以及系统的可用性和可扩展性较传统关系型数据库优势明显[17]。

本文面向核应急多源异构数据设计了一种关系型与非关系型耦合数据库(G-R-M),在开源分布式关系数据库Greenplum的基础上整合非关系型数据库Reds、MongoDB,速度上较传统数据库得以提升,同时又保持了数据的一致性,得到了核应急平台中先进的信息管理数据库,并应用到核应急平台中,合理区分功能模块管理信息,增加信息调用及时性,一定时间内可供决策者参考的信息量也大幅增加。

1 G-R-M数据库

关系型数据库,在海量数据的高效查询访问中的缺陷日益凸显出来,比如为了维护一致性所付出的巨大代价就是其读写性能比较差。新型数据库如:MongoDB、Redis、以及Google的BigTable等,他们不同于传统数据库采用的关系模型,而是采用Key-Value存储方案,可以有效弥补关系型数据库的局限性,无需经过SQL层的解析,读写性能很高。这些数据库称为非关系型数据库,即NoSQL。

由于非关系型数据库未经过事务处理,在增、删、查(多表关联、分组、排序、嵌入子查询等)、改、事务、锁、存储过程、函数等处理过程中无法满足要求。需要在保留原有关系型数据库的基础上添加NoSQL进行数据库优化。在研究过程中,将关系型和非关系型数据库克服差异,结合应用场景,扬长避短地组合工作是应用难题。

G-R-M数据库,选取了Greenplum、Redis、MongoDB三个数据库进行了信息管理数据库设计。如图1所示。

图1 G-R-M数据库结构图Fig.1 The structure of G-R-M database

Greenplum数据库基于PostgreSQL开源技术,本质上讲,它是多个PostgreSQL实例一起充当一个数据库管理系统。PostgreSQL为传统关系型数据库,基于PostgreSQL的开源分布式数据库比集中式具有更高的可靠性和更好的可用性。Redis与MongoDB属于NoSQL数据库。Redis是一个高性能的Key-Value数据库,本文信息管理技术利用的是Redis缓存技术与针对实时数据的格式转换技术。MongoDB是面向集合存储的文档型数据库,进行非结构化文档数据存储:包括图片、图标、语音、工作文本以及位置数据的非结构化的文档数据,可以实现文档数据库的存储与调用,支持无损保存,同时,MongoDB也支持文件预览,加速文件信息的调用。

2 G-R-M数据库工作流程

以往大量的实时数据和历史数据均存放于关系型数据库之中,当业务系统需要某些数据时,查询存在大量的IO操作,花费大量时间,且数据库服务器负载压力大,本文G-R-M数据库将最常访问的数据(热数据)和实时数据,通过reids数据库,以key-value的形式存放在内存中,有效地避免了高频操作导致的磁盘IO过载,降低了系统获取关键数据的时间,有效地提高了数据库运行效率。G-R-M数据库相比传统关系型数据库,其优势在针对热数据、动态实时数据和文档数据进行增、删、改、查的过程中得以体现:

(1)在系统运行过程中,当需要从后台查询预先确定的热数据时,优先使用Redis数据库查询,避免直接从关系型数据库进行查询,这样可以有效地减少系统IO时间,快速得到需要的数据。当预先设置的热数据发生变化时,需要对缓存在Redis中的热数据进行重新加载,以保证Redis数据库中缓存的热数据是最新的。其他常规数据读写改均通过直接操作关系型数据库进行。

(2)动态实时数据通过接口传输,由Redis数据库进行预处理,并将处理后的结果同步存储于关系型数据库中,同时,根据业务需要可以设定实时数据在Redis数据库中的缓存的时间周期,保障当业务系统需要使用最近的实时数据时,可以直接通过访问Redis数据库获取,有效地避免磁盘IO,快速得到所需数据。动态数据不应该进行删除和修改。

(3)文档管理技术使用的数据库为MongoDB,这样法规标准类文件就能实现无损保存、及时查看。

最终得到具有非关系型数据库优化的核应急信息管理数据库—G-R-M。G-R-M数据库工作流程图如图2所示。

3 结果与测试

以地方政府核应急工作中应急防护措施的选用作为测试背景来测试G-R-M数据库使用效果。图3为应急防护措施选用技术路线[18]。

整个流程所需信息有实时气象数据、事故源项数据、后果评价结果与地理信息数据,以及相关法规标准类文件,前三项作为动态数据,由Redis数据库实现调用,地理信息中的人口分布情况由传统关系型数据库加载为热数据,通过Redis数据库调用,相关法规标准类文件由MongoDB文档数据库存储。

图2 G-R-M数据库工作流程图Fig.2 The work flow of G-R-M database

图3 应急防护措施选用技术路线Fig.3 The technical route for the selection ofemergency protection measures

为了测试G-R-M数据库的性能,与PostgreSQL、Greenplum进行查询速度上的对比测试,数据选用以满足实验测试数据需求为前提。试验建立在3台8 G内存Intel(R)Xeon(R)Gold 6148 CPU@2.40 GHz 4核CPU的云服务器中,选择其中1台作为Redis数据库部署节点,选择其中另外1台作为Greenplum数据库(基于PostgreSQL的开源分布式数据库)的主节点,这三台均为Greenplum数据库的Segment节点,Greenplum和Redis服务端安装在CentOS release 6.8 (Final)操作系统,平台客户端在Windows操作系统,试验数据预处理有多个级别的数据,所有数据总量为1 300 M。表1为实验信息来源与管理方式。

表1 实验信息来源与管理方式

测试步骤为:

1.按照表1收集数据。

2.PostgreSQL和Greenplum进行事务处理后,所有数据无差别存放;G-R-M预设地理信息数据为热数据,从Greenplum加载进Redis数据库当中,法规标准类文件汇总到MongoDB文档数据库。

3.分别测试不同数据库数据量为10 M、100 M、300 M、500 M、800 M、1000 M的查询速度。

测试结果如图4所示。

图4 PostgreSQL、Greenplum与G-R-M查询速度对比Fig.4 The query speed comparison of Postgre-SQL,Greenplum and G-R-M

Greenplum分布式数据库是多个PostgreSQL实例一起充当一个数据库管理系统,比集中式具有更高的可靠性和更好的可用性。用于G-R-M的非关系型数据库Redis和MongoDB,以key-value的形式存放在内存中,解决了多源异构数据在存储时进行事务处理的复杂性,可以避免高频操作导致的磁盘IO,提高数据库运行效率。测试结果表明,Greenplum相比PostgreSQL较有优势,G-R-M数据库的查询优势更为明显,信息调用速度为传统数据库的2到3倍。

4 结论

针对核事故应急数据多源异构的特征,设计研究了核应急多源异构数据库G-R-M,针对地方政府核应急工作中涉及的信息,应用G-R-M不同功能模块分别进行技术管理。开展传统数据库与G-R-M数据库在数据查询性能方面的对比测试。结果表明,G-R-M数据库的查询优势更为明显,信息调用速度为传统数据库的2到3倍,较大幅度提升了核事故早期信息的查询调用效率,大量多源异构数据可以支持核应急决策,这将优化地方政府核事故应急职能的响应速度,最大限度保护公众的生命财产安全。

目前该工作将集成至FDS凤麟团队的虚拟核电站与核应急平台Virutal4DS[23],后期将利用所研究的数据库进行核事故应急决策辅助工作。

致谢

衷心感谢FDS凤麟核能团队全体成员对本工作的帮助和指导。

猜你喜欢
核事故调用异构
ETC拓展应用场景下的多源异构交易系统
遥感作物制图辅助核事故农业风险决策
试论同课异构之“同”与“异”
福岛核事故后滨海核电厂安全专设系统发展的分析和研究
核电项目物项调用管理的应用研究
多源异构数据整合系统在医疗大数据中的研究
系统虚拟化环境下客户机系统调用信息捕获与分析①
吴健:多元异构的数字敦煌
迟缓的善后 ——帕特里克
防患未然 提高核应急能力