APP下载

地震现场调查数据同步策略研究

2022-04-18何雅枫李璇琼周志华

防灾减灾学报 2022年1期
关键词:灾情冲突数据库

何雅枫,李璇琼,周志华

(1.四川省地震局,四川 成都 610041;2.四川建筑职业技术学院,四川 德阳 618000)

0 引言

灾害性地震发生后,地震现场工作人员必须赶赴现场,根据应急指挥协调的工作部署情况,快速开展地震受灾情况现场调查工作。其中,地震烈度图是地震影响区受灾程度的评定和灾后恢复重建的依据,地震系统在应急期的核心工作就是科学快速的给出烈度图[1],烈度图的精准绘制需进行大量的单体建筑、群体建筑、生命线工程、次生灾害、灾情等调查数据的采集。近年来现场调查工作实例也表现出紧迫性、时限性和协同性等特点,这就要求在有限的时间内需快速收集、整理、共享地震现场灾情调查的数据信息,为应急响应提供决策性意见。而目前地震烈度调查工作采取的方式还是以白天震害调查晚上资料整理的模式为主,调查手段多以传统的纸笔记录和拍照为主,现场调查组不仅无法实现与指挥部规范的实施传输,还容易出现漏记错记、文件丢失等情况。同时在整理过程中有文件拷贝出错、格式不统一、操作不便捷、耗时长等问题。基于调查现状,为解决上述问题,具有完整同步策略的自动化、智能化地震现场灾情快速调查评估系统建设(以下简称“现场灾情调查系统”)尤为重要,不仅可以加强前后方指挥部与现场调查组之间的协同能力,还能提高应急期地震现场烈度评定的工作效率。

通过“四川省地震局芦山地震灾后恢复重建-地震应急指挥场所与现场技术系统升级改造项目(0722-1561FE705WWH)”中现场灾情调查系统的建设,包含智能化移动终端APP(以下简称“移动端”)、现场中心处理系统(以下简称“现场中心”)、现场信息管理Web服务(以下简称“Web端”)。本文针对现场中心、移动端、Web端“三方”在数据缓存和更新、双向数据交换过程中出现的数据冲突而制定解决规则,设计出“三方”灾情信息实时、完整同步的同步策略,可确保整个现场灾情调查系统的数据一致性和协同性,加强前后方指挥部与现场之间的调度与联动能力,为科学快速的给出烈度评定结果提供高效的技术手段。

1 数据同步方案及冲突类型

1.1 主要的数据同步方式及优缺点

移动数据同步技术的应运而生,是确保各系统间各类数据一致性的关键,从这个角度来说,数据同步策略的技术手段简单分为两种:狭义的同步和复制。同步是将当前状态的最终结果数据回传至相关节点,并更新对应的数据以维护数据的一致性,忽略事物的执行过程细节。复制是将更新事物集传递到相关节点上运行,复制环境中的任何一个节点的复制数据发生了更新操作,该变化会立刻反应到其它所有的复制节点,保证复制数据在任何时间、任何复制节点都保持一致。为保证系统间数据同步始终一致,并避免同步冲突,建立的数据同步策略要结合同步和复制的优点。经文献资料总结得出,数据同步策略的技术手段简单分为单向同步、双向同步、服务器推送同步[2-3]。

(1)单向同步:单向同步即由单方面发起同步请求的数据同步策略类型,分别是系统使用端发起的单向同步和服务器发起的单向同步。此方法在同步过程中客户端会向同步服务器发送所有的本地修改数据,通常情况下会强制对服务器数据进行覆盖操作。

(2)双向同步:是指服务器端和系统使用端之间的数据流是双向流动的。首次同步过程中,系统使用端通常从服务器端下载架构和一个初始数据集。执行后续同步时,系统使用端将变更上载至服务器端,然后从服务器端下载变更。此方式最大的特点是服务器端和系统使用端都有权更新同一数据。

(3)服务器推送同步:是由同步服务器发起的数据同步过程,允许系统使用端自行定制同步计划,使得同步服务器能够在特定时间通知各使用端设备执行数据同步以保证数据的实效性,并允许多个同步使用端根据指定的同步策略执行并发的数据同步。

1.2 常见数据同步策略

目前常见的数据同步协议有Palm HotSync策略、Intellisync、SyncML和CPISync。其中SyncML是现有的协议中使用最广,通用性最好的数据同步协议,已被认定为行业通用标准。首先,SyncML基于XML定义,继承了XML语言开放、可扩展的特点,使得整个SyncML策略具有高度的灵活性和扩展性,从而基于SyncML策略的数据同步操作传输网络环境可以是各种有线、无线网络,同步操作所携带的数据可以是各种数据类型;其次,SyncML策略可以适用于各种终端设备和网络设备,在数据同步开始前,系统使用端和服务器端进行设备信息的交互,以确定客户端设备所支持的数据类型以及其他信息,这一过程保障了对各种终端设备的最大支持;最后,SyncML策略简单灵活且易于实现[4]。

综上所述,采用双向同步的数据同步方式以及SyncML数据同步策略,适用于现场灾情调查评估系统的数据同步问题的解决,需要在此基础上建立具体的、完善的现场灾情调查评估系统“三方”数据同步策略。

1.3 现场灾情调查系统“三方”同步方案

同步策略的研究需基于完善的“三方”同步方案。同步方案的建立分为在线和离线两种情况。在线情况下,灾情调查人员获得第一灾情数据并上传,与指挥部及时沟通,现场指挥部对外部接入的数据和智能移动终端调查数据进行半自动化的交互分析处理后录入到数据库中,可以为其它评估系统(如地震现场损失评估系统等)提供数据支持,也可为现场调查人员推送实时震情信息和发送指令信息;离线状态下,调查人员通过第三方数据推送接口,以短信等形式获取任务、指令、推送消息等信息,并基于离线地图获取除实时更新数据以外的数据,可正常开展灾情数据调查工作,调查结果保存到本地数据库,待网络畅通时同步。“三方”同步方案如图1所示。

图1 “三方”同步方案Fig.1 The synchronisation program of three sides

表2 道路调查表

表3 标注信息表

1.4 现场灾情调查系统中的数据同步冲突类型

现场灾情调查系统无论在有网络还是离线状态下,会产生数据同步冲突,在此基础上如何有序、高效地进行现场调查工作,需在变化捕获、分发、冲突检测与解决三个阶段中建立数据同步策略,避免或消除数据同步冲突。数据冲突主要有以下三种类型:

(1)更新冲突:同步时,如果其它移动端子系统比启动当前同步过程的移动端子系统更早提交了对同一数据对象的上传及修改,则此时会发生更新冲突。

当移动端所作的更新及修改不能提交到数据库中,这时就需要对同一数据对象的生成时间已不同的ID进行唯一标识,根据唯一ID系统针对同一数据对象的多条数据不作为数据冲突来处理。

(2)删除冲突:如果一个移动端删除了某个信息并进行了同步处理,即此删除操作已经反映到主数据库中,而另一个移动端同时做了相同的删除操作或者对这个已经删除了的信息做了更新操作,进行同步处理时,将产生删除冲突。

此时,当移动端对某一信息进行了删除操作但未更新,系统数据库不做任何操作;若对信息删除并更新,系统数据库直接进行删除操作,后续移动端将无法进行此项操作。

(3)结构冲突:“三方”数据库数据进行同步时,各服务器端均维护着一张映射表,确定数据库中和数据项的对应关系,通常这张表会在一次同步结束后进行更新。移动端采集数据后进行更新,若与现场端和省中心端数据库数据格式不同,会产生数据同步失败。因此,现场灾情调查评估系统对全局40余种数据格式进行了定义,本文以房屋调查、标注信息、道路调查等举例进行说明(表1-3)。

表1 房屋破坏调查表

2 “三方”数据同步策略

“三方”数据同步策略的核心思想是以省中心支撑平台(以下简称“省中心”)作为Web服务应用,在现场中心处理系统与移动端子系统(以下简称“现场中心”、“移动端”)网络畅通的情况下,通过判定同步冲突类型,建立同步冲突规则,根据同步冲突处理流程,实现与省中心在规定更新时间内进行完整的数据交换。

2.1 冲突规则

根据前文所提三种同步冲突,现场灾情调查系统研发过程中制定了冲突规则,并为每种冲突定义了相应的代码,在冲突处理时先进行冲突检测,然后根据返回的冲突代码对不同冲突进行消解。在数据的修改日志中每个记录都设置一个修改状态:N新增记录,U记录被更新,D记录被删除,S记录已被同步。当同步开始时,系统中所有修改状态不为S的记录均为修改记录;同步结束后,系统将所有同步过的记录的修改状态改为S,并将状态标志为D的记录从数据库中删除,针对不同的修改状态其冲突规则也不同。

当移动端数据库、现场中心数据库和省中心数据库相互的数据操作发生冲突时,可以根据以下两种规则进行处理:(1)主数据库优先规则:当冲突发生时,根据省中心数据库>现场中心数据库>移动端数据库的优先原则进行同一数据的更新同步。(2)无动作:当冲突发生时,不采取任何动作,只是简单地记录冲突的发生、引起冲突的操作等信息,操作人员可以通过系统提供的程序日志查询上一次同步后的冲突情况,然后进行人工干预处理。

移动端数据库、现场中心数据库和省中心数据库相互之间的数据同步冲突处理规则如表4、表5所示。

表4 冲突检测及处理规则(移动端-现场中心端)

表5 冲突检测及处理规则(移动端-省中心)

2.2 数据同步冲突处理流程

“三方”数据同步过程中遇到数据同步冲突,在处理冲突之前加入冲突检测过程。当完成一次同步后,“三方”在处理冲突时的交互过程如图2所示。

图2 冲突处理流程Fig.2 The flow of conflict resolution

3 结论与分析

本文通过对同步冲突进行分类,定义冲突规则并解决同步冲突,建立完整的“三方”数据同步策略,并应用于现场灾情调查系统。灾情调查人员通过移动端获得第一时间灾情数据并上传至数据库;现场端对外部接入的数据、移动端调查数据、省中心端下载的数据进行半自动化的交互分析处理后录入至数据库中,为其它评估系统(如地震现场损失评估系统等)提供数据支持,也可为现场调查人员推送实时震情信息和发送指令信息。在此同步过程中判断冲突类型、解决同步冲突,与现场中心、省中心实现实时数据交换。大量的现场调查数据完整、实时同步后,便可筛选整合其中烈度初评定结果,数量越多结果越精准,并结合现场多媒体记录加以修正。目前现场灾情调查评估系统在“三方”数据同步过程中,仍存在由于未考虑到的数据同步情景,而存在的同步冲突问题。因此,在后续工作中将着重研究网络在线和离线情况下同步冲突的分类和解决办法。

猜你喜欢

灾情冲突数据库
基于合作博弈的多机冲突解脱算法
耶路撒冷爆发大规模冲突
考虑属性和空间逻辑的地震灾情数据清洗器设计与实现
冲突水平的变化诱发冲突适应*
回避冲突不如直面冲突
“灾情”
1917年天津水灾与赈济情况略述
数据库
数据库
数据库