岩溶山区滑坡监测预警云平台设计与实现

2022-07-12 08:27毕晓伟杨成生
长江科学院院报 2022年6期
关键词:监测数据岩溶滑坡

陈 磊,李 斌,彭 程,毕晓伟,杨成生

(长安大学 地质工程与测绘学院,西安 710054)

1 研究背景

滑坡是在世界范围内普遍存在的地质灾害,其发生常伴随生命财产的巨大损失[1]。我国西南岩溶山区世界面积最大,约占我国国土面积的 1/15,且矿产与水能资源丰富[2]。然而,脆弱的地质环境及强烈的人类活动导致该岩溶特征区群死群伤的灾难性滑坡持续频发[3],近10 a来甚至摧毁了数十座城镇,并导致上千人死亡[4]。因此,对存在岩溶滑坡风险的地区应尽快采取包括监测预警在内的防灾减灾手段,以减少岩溶滑坡灾害造成的社会危害和损失刻不容缓。

近年来,随着滑坡监测技术的不断发展,监测数据日益丰富,且时效性越来越强[5]。各种方式所积累的岩溶山区滑坡监测数据具有分布广、来源杂、类型多、数据量大等特点,不易统一管理、集中处理,也就是说集成和处理难成为多点散发的岩溶滑坡数据分析的突出问题和服务应用的瓶颈因素。依据传统信息技术建设的监测平台高度依赖硬件设备,在面对逐渐累积的海量的监测数据的处理和分析时,不可避免的会出现效率瓶颈,同时随时间快速增长的监测数据也让传统平台在存储数据时面临挑战,已难以满足岩溶滑坡动态实时监测的要求。

云计算平台(以下简称“云平台”)通过云计算技术统筹调度、合理分配计算机资源,可向用户提供高质量、高可靠性、高便宜度及稳健的计算、存储服务[6]。云平台有效整合了分散的计算机资源,提升了计算机资源的利用率,避免了计算和存储的浪费,让数据的获取、计算、存储和共享能力得到了极大提升。同时,随着5G通信技术[7]的发展、基础设施的逐渐完善[8]、大数据技术的广泛应用,云平台也日益成熟并展示出了良好前景[9-10]。国内外相关学者也针对地质灾害的监测进行了云平台的搭建研究。如徐晓冬等[11]针对矿山采动灾害的监测预警进行了云平台的搭建,王毅鹏等[12]针对甘肃黑方台滑坡灾害的监测进行了云平台的设计与分析,这些学者的研究为滑坡监测预警平台的建设提供了新的思路。针对地质灾害的监测预警进行云平台搭建逐渐成为一种趋势,云平台强大的计算能力和海量存储空间等特性为岩溶滑坡监测数据集成与分析难的问题的解决提供了新的方案。

本文以岩溶山区滑坡监测预警云平台的设计与实现为目标,从岩溶滑坡监测数据的集成入手,基于分布式计算平台Hadoop的核心组件[13],如Hadoop分布式文件系统(Hadoop Distributed Filesystem,HDFS)、MapReduce等[14],对包括滑坡监测在内的各类分散异构的多源监测数据进行整合存储与计算[15],并结合WebGIS等[16-17]关键核心技术,对平台进行设计与搭建,力求使云平台成为集成分发岩溶滑坡数据的集散地和信息窗口,为岩溶山区防灾减灾救灾辅助决策提供有力支撑。

2 总体设计

2.1 总体架构设计

岩溶山区滑坡监测预警云平台在模型-视图-控制器(Model-View-Controller,MVC)框架下采用B/S结构进行搭建,使用Java语言,集成WebGIS技术、数据库技术、大数据和云计算技术等进行开发。为了保证平台能够快速搭建,快速上线使用,平台主要利用长安大学大数据平台提供运行所必须的基础资源。平台的总体结构如图1所示,整体可以分为4层,分别为基础设施层、数据层、应用层和用户层[18]。利用Hadoop集群的关键组件如MapReduce、HDFS等对数据层的数据进行计算、存储等操作,为应用层提供支持[19]。

图1 岩溶山区滑坡监测预警云平台总体结构Fig.1 Overall structure of cloud platform for landslide monitoring and early warning in karst mountainous area

2.1.1 基础设施层

基础设施层位于云平台的最下层,主要为云平台的正常运行提供基础资源[20]。岩溶山区滑坡监测预警云平台由长安大学大数据平台提供虚拟化的计算和存储资源,为平台提供数据存储和计算等服务,充分利用现有资源,避免了重复工作。长安大学大数据平台是Hadoop商业版中的一种,由浪潮研发,包含了Hadoop生态中的20多个组件,提供统一的平台化管理运维,实现深度功能增强和性能优化,能够帮助用户轻松应对海量数据的采集、存储、计算、分析挖掘和数据安全等应用场景。

2.1.2 数据层

由于平台的数据来源多样,对于不同来源的数据,汇总处理流程往往并不一样。需要采取合适手段将数据合理汇聚在一起,共同组成平台的数据资源层,为平台的运转和用户的数据需求提供支持[21]。平台涉及的数据主要有雨量计和位移计数据、全球导航卫星系统(Global Navigation Satellite System,GNSS)监测数据、图片视频数据等组成的非空间数据,以及干涉雷达InSAR遥感影像数据、无人机摄影测量数据及后续的地面三维模型数据、奥维地图轨迹数据、小区域钻孔数据等组成的空间数据,后续将根据滑坡监测的实际需要继续整合其他类型的监测数据到云平台中。其中,传感器的监测数据从各个来源以定时任务的方式先复制到备份数据库,然后汇总到HDFS中。数据获取主要分为2种情况,一种是直接从源数据库拷贝过来,另一种是从网页中爬取过来。汇总的数据经过MapReduce或Spark处理后存入另一级HDFS文件夹中,最后汇总进PostgreSQL数据库中。其他类型的一些监测数据的存储参照这两种情况,具体的核心数据的存储流程如图2所示。

图2 核心数据存储流程Fig.2 Flow chart of core data storage

非空间数据采用长安大学大数据平台的HDFS组件和PostgreSQL数据库这两个平台进行存储。研究区的视频监控资料以及照片资料直接存入HDFS中,而平台运行维护的业务数据和其他的一些数据直接存入PostgreSQL中。

空间数据主要采用GeoServer和PostGIS结合的方式完成数据的存储,存储在GeoServer和PostGIS的空间数据需要保证是GeoServer和PostGIS支持的格式。如果不是,需要进行数据的预处理。其中,GeoServer直接存储访问量低、磁盘占用低的数据,磁盘占用高或频繁读取的数据采用PostGIS空间数据库进行存储,之后通过GeoServer读取PostGIS中的数据,将其发布为地理服务。

2.1.3 应用层

手中握着一颗玻璃球让人感觉很舒服,透过玻璃球看去,物体是上下颠倒的,里面有一个微缩天地。我们拍照时用的是标准尺寸的Lensball,我们发现这个非常好用,也有其他更便宜的替代品。

应用层利用互联网把服务器端应用程序推送至远程终端用户,向用户提供功能服务。本文主要指的是建设成的岩溶山区滑坡监测预警云平台,通过互联网向用户提供云平台5个主要功能模块的功能。

2.1.4 用户层

由于不同类型的用户具有各自不同需求,用户层的用户主要分为普通用户、专业用户以及系统管理员三类。普通用户主要需要从平台获取关键的预警信息以及相关的滑坡监测信息,专业用户主要为平台提供数据,以及利用平台提供的接口获取相关数据及功能。管理员负责为平台的运行维护提供支持,负责管理平台的用户以及日志信息,以及维护平台的数据资源池以及保证平台的各个功能模块的正常工作。

2.2 平台技术架构设计

平台的技术架构主要考虑采用何种技术完成平台的功能实现。既需要考虑系统构建所采取的编程语言、数据库,确定系统实现需要的功能组件,又需要考虑如何针对具体问题,完成各个组件间的协作,实现系统功能。岩溶山区滑坡监测预警云平台的主要使用云计算和大数据的相关技术,结合地理信息系统(GIS)和网页开发的相关技术完成平台的构建[22]。采用NoSQL和SQL结合的方式,兼容Hadoop和PostgreSQL等实现滑坡监测数据的存储、组织和管理。

平台的前端页面主要使用JavaScript的客户端页面[23],主要应用JQuery、Bootstrap和layui等一些成熟的框架以及一些自行封装的UI组件完成客户层云平台的页面设计。后端主要使用JAVA语言进行编程,采用了主流的SpringBoot框架和MyBatis框架。

系统的主要技术结构如图3所示,分为左、右两部分。左侧组件相互协作完成云平台的页面展示,右侧组件为Hadoop中的组件,主要负责完成岩溶山区滑坡监测预警云平台的滑坡监测数据的存储、处理、传输,以及对平台的任务和资源进行调度和管理,保证平台的稳定运行,为左侧组件提供数据支撑。左侧组件和右侧组件相互协作共同完成岩溶山区滑坡监测预警云平台的功能实现。

图3 云平台技术结构Fig.3 Technical structure of cloud platform

3 功能模块设计及实现

基于上述架构,结合岩溶山区滑坡监测预警的需求,以长安大学大数据平台为支撑,对岩溶山区滑坡监测预警云平台进行搭建。平台主要包含五大功能模块,分别为实时监测模块、空间数据与模型展示模块、数据采集与查询模块、滑坡预警模块及后台管理模块。这五大功能模块又由多个功能组合而成,具体的功能模块设计如图4所示。

图4 云平台功能层次Fig.4 Hierarchical structure of cloud platform functions

3.1 实时监测模块

平台在实时监测模块利用由JavaScript技术实现的可视化库ECharts对灾害点监测数据变化情况以多种动态图表的形式进行可视化展示[24]。岩溶山区的滑坡灾害监测采用多尺度多传感器的方式进行监测,监测数据类型多。本模块重点展示了传感器的相关数据,包括布设在研究区域的雨量计、位移计和各个GNSS监测点的传感器数据随时间变化的趋势[25],帮助用户及时获取监测区域的异常信息。同时,也负责展示新闻公告信息和滑坡监测相关的图片视频信息,实时监测模块界面如图5所示。

图5 云平台实时监测界面Fig.5 Real-time monitoring interface of cloud platform

3.2 空间数据与模型展示模块

图6 云平台空间数据与模型模块Fig.6 Spatial data and model module of cloud platform

图7 云平台监测点信息结果Fig.7 Point monitoring result of cloud platform

该模块还可以展示使用钻孔数据建成的地层三维模型[26],生成的无人机三维模型,以及通过轨迹数据对实地考察路线进行动态模拟。同时,还可以对研究成果的相关栅格和矢量数据进行可视化展示,结果如图8所示。此外,该模块还可以为用户展示谷歌历史影像等地形地貌信息。

图8 云平台研究结果可视化展示Fig.8 Result visualization of the cloud platform

3.3 数据采集与查询模块

数据采集与查询模块提供静态数据的手动录入与展示功能,为各种静态数据的手动入库提供支持。同时,为了方便数据的批量录入,平台可以自动生成对应的模板,然后利用Excel表格进行批量上传入库的功能。该模块还包含对数据库中存储的数据进行查询与管理功能,可以方便地对数据库中的数据进行更新维护。同时,在该模块还可以进行INSAR数据的上传与展示。

3.4 滑坡预警模块

滑坡预警模块为平台的重要功能模块,该模块主要负责使用合适的模型和方法对滑坡监测数据进行分析处理,对滑坡所处状态进行判断并及时发布预警信息[27]。该模块利用许强等[28]提出的改进的切线角模型[29]对滑坡风险进行判断,该模型是经典滑坡预测模型,通过不同破坏机制的滑坡进行了验证,已成功预测过多起滑坡,并在西南山区有成功应用案例[30]。该模型通过累计位移与时间曲线获取位移速率角,即切线角。以切线角作为基本判据,当角度约等于45°时达到蓝色注意级,(45°,80°]之间为黄色警示级,(80°,85°]为橙色警戒级,>85°则为红色警报级,分析结果如图9所示。

图9 云平台滑坡预警分析结果Fig.9 Analysis results of landslide early warning based on cloud platform

同时,可以调用Python编程的模型对滑坡位移进行预测。采用TCN(时间卷积网络)模型、SVR(支持向量回归)模型、BP神经网络模型和LSTM(长短时记忆网络)模型对滑坡位移进行预测。其中一个监测点模型预测结果与真实值对比如图10所示。

图10 云平台岩溶滑坡累计位移与模型预测结果对比Fig.10 Comparison of cumulative displacement of karst landslides between cloud platform result and model prediction result

其中,模型的预测精度采用均方根误差(RMSE)和平均绝对百分比误差(MAPE)来进行评定。预测精度如表1所示,可见时间卷积网络(TCN)模型具有最高的精度,且位移预测的精度较高。

表1 不同模型的精度对比Table 1 Comparison of accuracy among different models

3.5 后台管理模块

后台管理模块主要实现用户管理、日志管理、信息发布管理及用户访问量统计等功能,其主要功能为用户管理与信息发布管理。

用户管理主要采用基于角色的访问控制(RBAC)来设计并实现为不同需求的用户授予不同权限。信息发布管理功能主要为发布相关的新闻公告信息和相关的预警信息,以及对发布的信息进行维护管理。用户访问量统计和日志管理主要是为了记录用户的访问量和用户的操作。

4 讨 论

随着云计算、大数据、互联网等新一代信息技术的迅猛发展,各行各业根据各自需求推出了各式各样具备不同特点的云平台。本文从岩溶山区滑坡监测数据建设实际需求出发,对岩溶山区滑坡监测预警云平台进行了设计与实现,为岩溶山区滑坡监测数据整合集成提供方案,为岩溶山区滑坡的早期识别与监测预警奠定基础、创造条件。与传统平台及滑坡等地质灾害传统的人工检测模式相比,滑坡灾害监测预警云平台的实时性、高效性和可靠性显而易见。目前,本平台正应用在西南岩溶山区的滑坡监测预警中,发耳镇、鬃岭镇和腾庆煤矿厂这3个典型示范区的相关监测数据正稳步存储于平台中。然而,由于时间限制等方面的原因,本平台还存在一些不足,需要在下一步的工作中继续展开研究,主要表现为以下几个方面:

(1)数据产生的频率较高,服务器端直接与数据库交互,给数据库造成了较大压力,对系统性能有一定的影响,未来可以通过数据缓存、消息队列等方法对其进行改进。

(2)安全保障与自动运维问题。平台持续稳定运行以及故障快速定位排查的关键就是平台的安全保障与自动运维。目前平台在此方面还考虑不足,数据安全保障还不够完善,接下来需要在系统的安全策略配置和自动运维的问题上进行更深入的研究。

(3)高并发问题。虽然云平台依托的长安大学大数据平台具有分布式的应用程序协调服务,能够有效解决数据处理中遇到的高并发问题,但是本研究还没有对云平台Web页面的高并发做出应对措施。因此,在后续的云平台版本升级中,可以加入nginx服务器以实现云平台的负载均衡,以削弱平台高峰时的并发量。

(4)平台目前采集的岩溶山区滑坡监测数据的种类有限,随着下一步研究工作的进行,需要依据需求进一步收集数据。同时,平台功能只是初步得到了实现,未来需要依据需求进一步扩充和优化,使之更加符合岩溶山区滑坡信息化的发展趋势。

5 结 语

本文针对西南岩溶山区滑坡监测数据的集成与分析难等问题,基于Hadoop进行数据的存储与计算,结合云计算、大数据与WebGIS等技术,对岩溶山区滑坡监测预警云平台进行了设计与实现。

平台在MVC框架下采用B/S结构进行搭建,以地理信息技术为基础,充分利用云平台、网络通信的集成优势,深度整合岩溶山区滑坡监测的各类数据资源,并结合滑坡预测预警模型进行云平台条件下的滑坡监测数据处理,让用户可以获取滑坡监测的实时性状及预警信息,对整体提升边远岩溶山区滑坡灾害防治信息化水平具有重要意义。

猜你喜欢
监测数据岩溶滑坡
覆盖型岩溶注浆路基施工技术
2001~2016年香港滑坡与降雨的时序特征
漓江流域岩溶与非岩溶农业小流域水体硝酸盐源解析
某停车场滑坡分析及治理措施
岩溶区工程地质勘察技术研究
浅谈环境监测垂直管理的优势
环保验收监测异常数据的分析与处理探讨
北京经济社会发展月度监测数据(2008年11月)