APP下载

基于私有云计算技术的强震预警系统应用研究

2016-06-08赵银刚

计算机应用与软件 2016年5期
关键词:分布式计算计算资源强震

蔡 寅 李 红 赵银刚

1(中国地震局地球物理研究所 北京 100081)2(山东省地震局 山东 济南 250014)3(山东省地震局安丘地震台 山东 潍坊 262100)



基于私有云计算技术的强震预警系统应用研究

蔡寅1,2李红2赵银刚3

1(中国地震局地球物理研究所北京 100081)2(山东省地震局山东 济南 250014)3(山东省地震局安丘地震台山东 潍坊 262100)

摘要通过分析研究地震行业目前数据处理与分析的现状,展望云计算技术在地震行业的应用前景。针对山东强震预警系统在研发与试验阶段,各子系统之间存在计算效率低、资源占用不均衡等问题,提出基于云端分布式计算技术的大数据分析处理平台体系架构。通过对软硬件资源进行统一管理,实现根据子系统资源需求的虚拟机智能部署方案,提高平台的高可用性及扩展性。实验结果表明,强震预警系统的计算效率及资源利用率得到有效的提高,平台体系架构得到初步应用。

关键词私有云体系架构资源调度强震预警系统

0引言

地震行业是一个典型数据集中的领域,地震科学数据按照获取途径可以分为五大类:(1) 观测数据,包括:测震、强震动、地磁、地电、形变、地下流体、重力、GPS等实时观测数据; (2) 探测数据,包括人工地震、流动台阵、气枪探测等数据;(3) 调查数据,包括:地震地质调查、震后宏观烈度调查、断层现场科考、地震遥感及航拍等数据;(4) 实验数据,包括构造物理实验、新构造年代测试、建筑物抗震结构实验、岩土工程实验等数据;(5) 专题数据。这类数据主要服务于某一重要研究专题、重大工程项目或某一特定区域综合研究等工作目标而建立的。如:历史震例总结、断层面探测、水库地震监测、矿震监测、建筑物地震安全性评价等方面的数据。从业务应用角度来看,像地震的孕育研究与分析预测,非常依赖于对历史数据及大量观测数据的多角度时空观察和分析。而地震速报和强震预警等应用系统,则高度依赖于对密集台网阐述的大规模数据的实时处理与分析能力。 如何提高对各类大规模数据的综合处理与分析能力,成为地震行业亟需解决的一项技术瓶颈。

随着信息技术的不断发展,网格计算、并行计算、分布式计算、网络存储、虚拟化等技术的不断涌现,融合多项技术的云计算为大数据的分析和处理问题提供了有效的解决方案。云计算作为一种计算方式,将大量计算节点和存储节点进行虚拟化管理,将计算能力、存储空间及信息服务等资源汇聚集中起来,实现统一自动化管理。通过网络将这些资源以“服务”的形式提供给用户,而用户不需要了解构建这些“服务”的云计算技术架构,就可以透明方便使用这些资源。从服务的角度划分,云计算环境可以提供三个层次的服务,即基础设施服务IaaS(Infrastructure-as-a-Service)、平台服务PaaS(Platform-as-a-Service)和软件服务SaaS(Software-as-a-Service),各层服务具有可扩展性及高可靠性等特点。

在云计算技术和分布式计算技术日益成熟的今天,云环境强大的计算资源和分布式计算的高性能为地震行业大规模数据的分析处理提供了较好解决方案。本文通过分析研究地震行业目前数据处理与分析的现状,展望云计算和大数据技术在地震行业的应用前景,结合山东省地震局数据管理和计算资源现状,提出基于云端分布式计算的大数据分析处理平台体系架构。最后以山东强震预警系统在研发与试验阶段,各子系统之间存在计算效率低、资源占用不均衡等问题为切入点,搭建一个对软硬件资源进行统一管理具有高可用性及扩展性的私有云计算平台。利用虚拟机智能部署方案,有效地提高了计算效率及资源利用率了负载不均衡现象,平台体系架构得到初步应用。

1云计算技术在地震行业的应用前景

云计算技术在地震行业的应用前景主要体现在三个方面:(1) 有效整合现有硬件资源,大幅降低系统应用部署成本,提高计算资源利用率;(2) 实现对地震台网产出的大规模数据进行实时监控、分析与处理,有效提高面向日益增多的台站数据的计算实时性,使各类数据形成用多个监测预警网;(3) 通过对历史大规模数据进行有针对性、多角度的分析与挖掘,为动态预测和决策提供更加精准技术支持。

云计算技术重点关注计算能力的提升,解决的关键问题是大数据处理的能与不能的难题,而云计算技术是解决此难题的最佳解决方案。基于云计算技术的大数据分析计算平台首先解决原有技术难以实现的大数据分析的困境,同时实现高速、高效数据分析与挖掘。在保持原有业务流程大体不变的情况下,减轻了管理者的工作量,提高研究者工作效率,对决策者提供更加准确的决策支持。采用云端大数据分析平台的地震业务流程如图1所示。

图1 基于云端大数据分析平台的地震业务流程图

2云端大数据分析平台体系架构设计

在上述基础上,本文提出基于私有云的地震大数据分析处理平台,平台的体系架构如图2所示。体系架构主要分为五层,最底层是由专用虚拟服务器和普通服务器组成物理服务器集群作为硬件计算基础。通过开源IaaS软件如OpenStack、CloudStact等构建云计算资源层。在云计算资源层提供的虚拟机上部署分布式计算框架用于实时数据分析及后台数据挖掘,如Hadoop、Storm等。大数据处理服务层作为应用逻辑部分对数据进行分析挖掘并且完成计算资源的调度管理。面向用户和管理员提供各项管理服务的应用层,将计算结果进行关联处理,提供给最终用户。

图2 云端大数据分析平台体系架构图

2.1物理层

物理层是整个计算平台的硬件基础,计算平台的物理层采用虚拟化专用服务器和既有普通服务器混合构筑模式。确保高性能的同时,也能充分利用既有计算资源,这样不论是计算服务器集群或是存储服务器集群都可以无缝水平扩展,使计算资源的实现无限化。行业内网用户和公网用户可以方便的使用计算及存储资源。物理层构建示意如图3所示。

图3 物理层构建示意图

2.2云计算环境层

云计算环境层的建立有商用解决方案,也有开源解决方案,如Eccalyptus、AbiCloud、CloudStack等。综合考虑各个解决方案的开源性及稳定性,本文选用OpenStack构建云计算环境层。OpenStack是有Rackspace和NASS共同发起的一个开源项目,其定位是亚马逊AWS的开源实现,为公有云和私有云提供容易实施且可大规模扩展的开源云计算平台。目前OpenStack已业界被广泛应用,稳定性和可靠性均被认可,版本发布持续稳定。OpenStack对各类物理计算节点和存储节点进行虚拟化,为分布式计算层提供虚拟主机,实现对虚拟主机的计算管理、网络管理、授权管理、卷管理、分布式存储等功能,对于行业内网和公网用户提供“透明”的IaaS服务。云计算环境层构建示意如图4所示。

图4 云计算环境层构建示意图

2.3分布式计算层

分布式计算环境层的文件系统有别于单机上传统的文件系统。当需要完成大规模计算时,运行时间往往是数分钟甚至数小时,但是任何一个硬件在任何时刻都有可能出现故障,如果由于硬件故障导致计算终止的话,那么对于一些计算过程可能是永远无法成功完成的。解决上述问题的方式有两种:(1) 将文件进行多副本存储;(2) 将计算过程分成多任务形式。这里,我们引入Hadoop分布式文件系统HDFS(Hadoop Distributed File System),将各个数据节点的数据按业务需求提供给两套分布式计算框架。HDFS 将文件分成文件块,存储在不同的计算节点上,MapReduce是一种计算模式,用于大规模数据集的并行计算,并能够保障对硬件故障的容错性,具有非常好的伸缩性。但是MapReduce只能定时从分布式文件系统同获取数据,在后台分析挖掘,实时性较差。所以为了拟补MapReduce实时性不足的缺陷,采用Storm实时流计算框架对实时性要求比较高的算法程序进行并行分析和计算,从消息队列中直接获取数据,实时处理。分布式计算层逻辑示意如图5所示。

图5 分布式计算层逻辑示意图

2.4大数据处理层与应用层

大数据处理层分析虚拟机上的各种资源的占用情况,根据用户需求目标的不同,将不同的计算任务分别在MapReduce或Storm计算框架下执行分析计算进程,对数据进行后台或实时挖掘,同时监控管理计算过程中出现的各种状况。

应用层为用户或管理员提供各层可视化的统一管理和外部接口服务,也就是说用户通过这一层指定数据源,获得计算结果。数据处理层与应用层两层间通过WebService等多种方式进行数据交互。大数据处理层与应用层逻辑示意如图6所示。

图6 大数据处理层与应用层逻辑示意图

3基于云平台的强震预警系统初步应用

本文以强震预警系统为例,讨论原系统在云平台下重新部署的应用效果。强震预警系统目前被认为是有效减轻地震灾害,提高应对地震能力最重要的途径之一。我国地震行业通过“十·五”、“十一·五” 和“十二·五”的基础设施建设,能够用于强震预警系统的测震及强震动台站数量不断增多。省级区域台网密度进一步提高,这为建立基于实时地震监测台网的预警系统提供了必要的基础条件。目前,由山东省地震局自主研发的强震预警系统主要由3个子系统组成:(1) 观测数据实时汇集与服务系统;(2) 地震事件触发判断及预警参数计算系统;(3) 基于WebGIS的预警信息动态发布系统。各个子系统对资源的需求不尽相同。数据的汇集与服务占用大量存储空间进行地震事件的存储,数据分析与计算依赖与大量的计算资源支撑,以保障预警信息的实效性。当强震发生时,基于WebGIS的动态预警信息发布平台需要对多类用户提供预警信息服务,此时对网络带宽的占用权重远远大于其他两个子系统。系统在试验阶段,采用每个子系统占用一台服务器的传统部署方式,存在计算效率低、资源占用不均衡等问题。传统的应用部署方式很难满足不同系统对不同资源的需求,而应用云端大数据分析平台体系架构则能有效地解决各个子系统间资源的分配问题。

解决系统资源分配的目标有两个,即负载均衡和绿色节能。所谓负载均衡,就是保证云平台中各宿主机的负载率的均衡性,避免拿出现某些宿主机负载过重,影响系统整体性能的情况。绿色节能就是要尽量减少云平台中使用的宿主机个数,自动关闭一些负载过轻或闲置的宿主机,以达到节约能源的目标。为实现资源的智能分配,首先利用OpenStack对现有的硬件资源进行统一的虚拟化管理,通过二次开发接口进行编程,自定义代价函数。汇总云平台下四类资源(处理器、高速缓存、磁盘存储和网络带宽),根据每个子系统对资源不同的依赖程度,将四类资源分别赋予权重 (Weight值),比较子系统对各类资源的请求值和云平台中宿主机的可用资源值,选出满足需求的多个候选主机。最终计算各候选目标主机的代价函数值,选择函数值最小的宿主机作为部署的目标主机,实现根据子系统资源需求的智能虚拟机优化部署方案。基于OpenStack的虚拟机智能优化部署方案如图7所示。

图7 基于OpenStack的智能虚拟机优化部署方案

实验结果表明,基于云端大数据分析平台能够科学合理地利用既有系统资源,有效地改善了原强震预警系统的各子系统负载不均衡现象,智能选择较优的宿主机部署虚拟机。系统处理时间与IO存取速度较原平台得到明显提升,如图8、图9所示。

图8 应用云平台前后系统处理时间对比

图9 应用云平台前后每秒系统IO存取能力对比

总之,基于云端大数据分析平台先进性主要体现在:(1) 以Web页面方式,图形化管理各种资源,实现对软硬件统一调度;(2) 自动化运维,实现事件监控报警及信息查看;(3) 通过智能虚拟机部署技术提升软件系统整体运行效率。对采用云平台前后业务系统的易用性、可扩展性、可维护性进行比较,对比结果如表1所示。

表1 使用云平台前后系统各项性能对比表

4结语

本文展望了云计算技术在地震行业的应用前景,提出基于私有云的大数据分析平台体系架构的设计方案。通过在云计算环境层实现智能虚拟机部署,将优化方案应用于地震预警系统,在实现对资源进行统一管理同时,有效提升了系统整体的计算效率及资源利用率,增强了系统的可用性及扩展性。这为今后地震行业大规模数据计算解决方案提供了值得借鉴的技术经验和更加深入的研究方向。

参考文献

[1] 蔡寅,刘希强,赵银刚,等.基于CloudStack的地震预警系统应用研究[C]//大数据、云计算与地球物理应用研讨活动论文摘要集,2014:7-8.

[2] 蔡寅,李卫东,李铂.地震行业数据整合服务架构研究与应用[J].计算机应用与软件,2014,31(3):43-46.

[3] 魏坤,许晖,杨旸.基于虚拟机实时迁移的绿色云计算及其技术实现[J].计算机应用与软件,2013,30(6):101-103.

[4] 王桂强,陆朝俊.基于并行技术的大数据量统计分析探讨[J].计算机应用与软件,2011,28(3):162-165.

[5] 孙大为,张广艳,郑纬民.大数据流式计算:关键技术及系统实例[J].软件学报,2014,25(4):839-862.

[6] 覃雄派,王会举,李芙蓉,等.数据管理技术的新格局[J].软件学报,2013,24(2):175-197.

[7] 常捷.地震元数据标准及管理构建研究[D].南京:南京理工大学,2010.

[8] 彭红,杨根兴,蔡立志.基于用户个性化需求的虚拟机部署机制[J].软件产业与工程,2013,13(1):37-41.

[9] Wang Y J,Sun W D,Zhou S,et al.Key technologies of distributed storage for cloud computing[J].Journal of Software,2012,23(4):962-986.

STUDY ON APPLICATION OF EARLY WARNING SYSTEM FOR STRONG EARTHQUAKE BASED ON PRIVATE CLOUD COMPUTING TECHNOLOGY

Cai Yin1,2Li Hong2Zhao Yin’gang3

1(InstituteofGeophysics,ChinaEarthquakeAdministration,Beijing100081,China)2(EarthquakeAdministrationofShandongProvince,Jinan250014,Shandong,China)3(AnqiuSeismicStation,EarthquakeAdministrationofShandongProvince,Weifang262100,Shandong,China)

AbstractBy analysing and studying current situation of data processing and analysis in seismic industry, we prospected on the application of cloud computing technology in the industry. Aiming at the problems of Shandong strong earthquake early warning system during its R&D and test stage in low computational efficiency and imbalance resource occupation between subsystems, we proposed the big data analysis and processing platform architecture, which is based on distributed cloud computing technology. Through uniformly managing the hardware and software resources, it achieves the intelligent virtual machine deployment scheme according to the resource demand of subsystems, and improves the high availability and scalability of the platform. Test results showed that the computing efficiency and resource utilisation rate of strong earthquake early warning system has been raised effectively. The platform architecture has been put into preliminary application.

KeywordsPrivate cloudSystem architectureResource schedulingStrong earthquake early warning system

收稿日期:2014-10-13。“十二五”国家科技支撑计划课题(2012 BAK19B04)。蔡寅,工程师,主研领域:地震行业信息化软件研发。李红,高工。赵银刚,工程师。

中图分类号TP311.5

文献标识码A

DOI:10.3969/j.issn.1000-386x.2016.05.001

猜你喜欢

分布式计算计算资源强震
7.0级强震袭击菲律宾
强震作用下崩塌滚石冲击耗能损伤演化分析
基于模糊规划理论的云计算资源调度研究
改进快速稀疏算法的云计算资源负载均衡
花莲强震!
基于Wi-Fi与Web的云计算资源调度算法研究
耦合分布式系统多任务动态调度算法
基于云计算的移动学习平台设计与实现
云计算中MapReduce分布式并行处理框架的研究与搭建
强震的威力