多源异构地震数据的一体化编码和接口技术的设计与实现
2022-02-03韩万江韩卓言田怡凡韩睿邱雅颖
韩万江 韩卓言 田怡凡 韩睿 邱雅颖
北京邮电大学,计算机学院(国家示范性软件学院),北京 100876
0 引言
目前,国内有关防灾减灾方面的统计数据尚不完善。地震灾情信息的收集是一件繁杂的工作,现有的灾情收集方式仍存在不足,2008年汶川8.0级地震中发现的一些重大科学和技术问题,如灾情获取困难、评估误差很大、缺少决策支持、灾情服务匮乏、应急产出与社会需求之间存在差距等问题,依然未得到彻底有效解决。国家重点研发计划“重大自然灾害监测预警与防范”专项的“地震应急全时程灾情汇聚与决策服务技术研究”项目,针对灾前灾情难以预估、灾后灾情获取缓慢且碎片化、灾情评估误差较大、决策支持不到位、灾情服务缺位等科学问题,从震前、震后的全时程角度,提出了灾情的获取、汇聚与灾情服务产品等研究内容。为展开相关研究,需要探索地震灾情信息分类编码与整合技术规范、灾情信息共享与发布技术规范等。在此背景下,本文针对公众涉灾信息数据异构、多维、数据格式差异大、部分数据维度缺失导致的数据无法得到综合利用的现状(曹彦波等,2010),研究基于异构公众涉灾信息的一体化编码和实时动态管理技术,实现灾情数据统一管理和高效合理利用,从而为灾后应急救援提供方案。
本文研究了多源异构数据的一体化编码和开放接口技术规范,在此基础上构建基于微服务(Aderaldo et al,2017)的多源灾情数据管理服务系统(韩万江等,2021),实现灾情数据全生命周期的动态管理,为灾情影响范围、空间分布等决策支撑系统提供数据支持。通过开放式接口在最短的时间内对数字、文本、语音、图片及视频等灾情数据信息进行采集,实现灾情数据全生命周期的动态管理,有利于相关部门组织评估灾害损失(中华人民共和国国家质量监督检验检疫总局等,2011),并实施快速有效的应急救援。
1 多源异构地震数据分类
多源异构地震数据分类是以灾情指标为基本单元,根据地震事件的划分和指标类型,将地震灾情信息按一定的原则和方法进行区分和归类,并建立起一定的分类体系和排列顺序。多源异构地震数据分类符合GB/T7027-2002《信息分类和编码的基本原则与方法》(中华人民共和国国家质量监督检验检疫总局,2002)的规定,遵循科学性、系统性、可扩展性、兼容性、综合实用性等原则。
1.1 数据类型分类
多源异构地震数据采用分层与组合的分类法(中华人民共和国国家质量监督检验检疫总局等,2016a),按地震事件分为数据来源、载体形式、灾情信息,如图1所示。其中,数据来源包括业务报送数据、泛在感知数据等;载体形式包括文字、图像、音频、视频等;灾情信息分类针对地震事件,分为人员伤亡及失踪信息、房屋破坏信息、生命线工程灾情信息、次生灾害信息等。
图1 多源异构地震数据分类方法
1.2 数据结构分类
多源异构地震数据结构分类是以灾情数据格式为基础,将多源异构地震数据接口格式按一定的原则和方法进行区分和归类,并建立起一定的数据接口存取格式和管理模式。为了进行数据融合接口设计,将多源异构地震数据结构分为结构化数据、非结构化数据、半结构化数据,如图2所示。其中,结构化数据可以用二维表结构来逻辑表达的数据,可采用关系数据库、电子表格存储;非结构化数据不方便用二维逻辑表来表现的数据,数据不规则或者不完整,包括所有格式的办公文档、文本、图片、XML、HTML、各类报表、图像、音频、视频等信息数据,可采用文件直接读取;半结构化数据是结构化数据的一种形式,但不符合关系数据库的形式关联模型结构,包含相关标记,用来分隔语义元素,可采用XML、JSON形式存储和管理。
图2 多源异构地震数据接口规范分类
2 多源异构地震灾情数据编码设计
多源异构地震灾情数据编码设计将地震信息和指标赋予具有一定规律、易于计算机和人识别处理的符号,形成代码元素集合。代码元素集合中的代码元素为赋予编码对象的符号,即编码对象的代码值。
多源异构地震灾情数据编码包含的内容有:信息表达成代码的方法、信息的代码表示形式、代码元素集合的赋值。多源异构地震灾情数据编码的主要作用为:标识、分类、整合。标识的目的是将编码对象彼此区分开,在编码对象的集合范围内,编码对象的代码值是其唯一性标识;信息编码的分类作用实质上是对分类进行标识;信息编码的整合作用体现在将编码对象按照一定规则聚合成针对地震灾害事件的信息有序集合(中华人民共和国国家质量监督检验检疫总局等,2013)。
2.1 编码层次
多源异构地震灾情数据编码设计采用分层和组合编码方法,分为4段,依次为震情码、来源码、载体码、灾情码。其中,第一段震情码用于描述地震灾害事件属性信息,用26位阿拉伯数字标识;第二段来源码用于描述灾情报送单位,用3位阿拉伯数字标识;第三段载体码用于描述灾情载体类型,用1位阿拉伯数字标识;第四段灾情码描述灾情数据的具体信息,用6位阿拉伯数字标识。编码结构如图3所示。
图3 多源异构地震灾情数据编码层次结构
2.2 震情编码
震情编码采用分层组合编码方法,依次为地理信息编码(中华人民共和国国家质量监督检验检疫总局等,2011)和时间编码(中华人民共和国国家质量监督检验检疫总局等,2005)。其中,第一段地理信息码用于描述基础地理信息,用12位阿拉伯数字标识;第二段时间码用于记录地震发生的具体时间和具体时刻,用14位阿拉伯数字标识。编码结构如图4所示。
图4 震情信息编码层次结构
2.2.1 地理信息编码
地理信息编码采用组合码,分为2段,编码结构见表1和图5。其中,第一段表示省、市、县(市、区),由6位阿拉伯数字表示,采用层次法编码,前两位表示省、直辖市、自治区行政区划代,中间两位表示地市行政区划代码,后两位表示县区行政区划代码,采用《中华人民共和国行政区划代码》(GB/T2260-2007)(中华人民共和国国家质量监督检验检疫总局等,2008)中规定的代码;第二段表示具体的街道和社区,前三位表示乡、镇或街道办事处代码,采用《县以下行政区划代码编制规则》(GB10114-88)的编码方法,001~099表示街道办事处,100~199表示镇,200~399表示乡,后三位表示行政村、社区代码。字段为空时将以若干个0代替。
表1 地理信息编码结构
图5 地理信息编码层次结构
2.2.2 时间编码
时间信息表示震情发生的时间和时刻,采用组合码,分为两段,由14位阿拉伯数字组成。编码结构见表2和图6。其中,第一段表示具体时间,将地震发生的时间具体到天,由8位阿拉伯数字表示,前4位表示年份,中间4位表示月份与日期;第二段表示具体时刻,精确到秒,由6位阿拉伯数字表示,前2位表示小时,中间2位位表示分钟,后2位表示秒钟。
表2 时间编码结构
图6 时间编码层次结构
以2008年5月12日14时28分4发生的汶川8.0级地震为例,汶川县编码513221000000,则基本震情编码为51322100000020080512142804。
2.3 来源编码
数据来源分为业务报送数据、泛在感知数据和其他数据三大类,采用组合码,分为两段,由3位阿拉伯数字组成,如表3所示。
表3 来源分类编码
第一段表示大类代码,由1位阿拉伯数字表示,分别对应3种数据来源。其中,1代表业务报送数据,由各种能够收集或产生地震相关数据的生产部门或隶属于部门的系统上报;2代表泛在感知数据,来自大量的各类联网终端中收集而来的数据;3代表其他未分类或难以分类的数据。第二段表示子类代码,由2位阿拉伯数字表示,采用系列顺序码,在各类别代码取值范围内对编码对象顺序地赋予代码值。
对于第一大类业务报送数据中的子类,按照产生数据的生产部门及隶属于部门的系统分为5小类,其中,00~19表示抗震救灾指挥机构;20~39表示全国统一部署的地震应急信息服务相关技术系统;40~59表示中国地震局司室及直属单位成立的应急信息服务技术支持工作组;60~79表示中国地震局直属单位建设的地震应急信息服务相关技术系统;80~98 表示各省地震局建设的地震应急信息服务相关技术系统。该分类方法参考《地震应急信息产品分类编码研究》(张翼等,2016)并改进,子类再根据各个部门或隶属于部门的系统进行分类,方便对来自职能相似的生产部门或系统的数据进行统一、快速的处理。根据实际应用情况中各个不同职能的部门及隶属于部门的系统数量的不同,该代码可略微进行变动以适应各种情景。
对于第二大类泛在感知数据种的子类,按照收集的感知数据的来源分成若干类,例如互联网感知、通信网感知、舆情网感知、电力系统感知、交通系统感知以及其他感知系统。
对于第三大类,子类代码默认为00。
2.4 载体编码
数据载体编码用于描述灾情数据载体类型,用1位阿拉伯数字标识,如表4所示。
表4 载体形式编码
2.5 灾情编码
灾情信息码编码采用组合码,分为3段(中华人民共和国国家质量监督检验检疫总局等,2018),编码结构见表5和图7。其中,第一段表示灾害大类代码,由1位阿拉伯数字表示,具体编码见表6;第二段表示灾害子类代码,由2位阿拉伯数字表示,具体编码见表6;第三段表示灾情指标代码,由3位阿拉伯数字表示,指标代码见表7、表8。例如,发生了次生灾害中的岩溶塌陷,编码为444004。
表5 灾情信息编码结构
图7 灾情等级编码层次结构
表6 灾情信息分类
表7 灾情指标分类类别代码
表8 灾情指标代码
灾情信息(中华人民共和国国家质量监督检验检疫总局等,2011)主要分为震情、人员伤亡及失踪、房屋破坏、生命线工程灾情以及次生灾害5种(中华人民共和国国家质量监督检验检疫总局等,2016b),具体编码见表6。
灾情指标则对上述5种灾情信息的具体情况进行细分,地震事件信息包括地震发生的地点、时间、深度以及震级(中华人民共和国国家质量监督检验检疫总局等,2017);人员伤亡及失踪信息包括受灾人数、受灾程度;房屋破坏信息包括不同种类房屋的破坏面积(中华人民共和国国家质量监督检验检疫总局等,2009a);生命线工程灾情信息包括不同种类生命线工程灾情的损失、范围以及严重程度(中华人民共和国国家质量监督检验检疫总局等,2009b);次生灾害信息包括不同种类次生灾害造成的损失、波及范围以及受灾程度(中国地质调查局,2004),具体编码见表8。
3 多源异构地震数据接口技术规范
多源异构地震数据的接口技术规范适用于震后多源异构地震数据的标准化接入,接口设计原则如下(韩万江等,2017):
(1)单一性:每个接口包含的功能单一,即一个接口只针对一种数据接入服务,返回对应的信息。
(2)可扩展性:接口具有可扩展性,考虑客户端的需求,一个接口可以被多个业务场景使用。
(3)兼容性:应采用通用的接口设计标准,保证与其他系统的互联互通,兼容灾情信息采集所采用的不同网络制式和操作终端。
(4)安全性:每个接口均明确用户权限,部分接口的调用需要进行验证。
(5)松耦合:应避免服务提供方的业务系统对接口实现的依赖。
多源异构地震数据接口是将不同数据来源、不同数据格式的地震事件灾情信息,以灾情指标为基本元素、灾情文件为基本单元,按照不同的数据结构进行数据读取和发送。将多源异构地震数据按照结构化数据、非结构化数据、半结构化数据的结构类型,设计三类数据接口形式,如图8所示。每类接口通过一体化编码实现数据的接入。
图8 数据接口分类规范
3.1 结构化数据接口规范
结构化数据接口通过一体化编码作为关键字进行索引,采用关系数据库接口形式或电子表格数据接口形式,实现与多源异构灾情数据管理系统的接入。例如,来自后方地震应急指挥部的房屋损失文字灾情信息,其关系数据库接口示例和电子表格数据接口示例如图9、图10所示。
图9 数据库接口格式示例
图10 电子表格接口格式示例
3.2 非结构化数据接口规范
非结构化数据接口采用文件读取方式,以一体化编码作为文件名字进行索引,直接读取Word及PDF文件、图片、音频、视频等信息数据,实现与多源异构灾情数据管理系统的接入。例如,来自后方地震应急指挥部的房屋损失图片灾情信息,其接口示例如图11所示。
图11 图片灾情数据接口格式示例
3.3 半结构化数据接口规范
半结构化数据接口采用XML、JSON数据格式读取数据。以一体化编码作为数据的第一个标签索引,实现与多源异构灾情数据管理系统的接入(中华人民共和国国家质量监督检验检疫总局等,2007)。
(1)XML报文规范示例如下:
第一层为disasterInfo标签,表示一条XML报文;第二层为info标签,每一对info标签代表了一条完整的灾情数据,info中的各个标签代表了该条数据的各种信息。
(2)JSON报文规范示例如下:
第一层为中括号,表示一条JSON报文;第二层为大括号,表示一条数据;大括号中包含了多个键值对,表示具体的数据信息。
[
{
“ID”:“632626200206202105220204001010222001”,
“province”:“青海省”,
“city”:“果洛藏族自治州”,
“country”:“玛多县”,
“town”:“黄河乡”,
“village”:“果洛新村”,
“category”:“房屋破坏砖木”,
“date”:“2021-05-2202:57:10”,
“location”:“青海省”,
“basicallyIntactSquare”:“198.4”,
“damagedSquare”:“4.9”,
“destroyedSquare”:“1.0”,
“note”:“轻微”,
“reportingUnit”:“中国地震台网”
}
]
4 编码和数据接口实现
根据上述多源异构地震数据一体化编码和接口技术规范,设计和实现多源异构地震灾情数据的一体化编码管理和数据的接口接入。将多源异构数据转化为具有一定规律、易于计算机和人识别处理的符号编码,同时根据不同的数据结构设计不同的数据接口融合方法,该接口将不同数据来源、不同数据格式的地震事件灾情信息,以灾情指标为基本元素、灾情文件为基本单元,按照不同的数据结构进行数据读取和发送。将多源异构地震数据按照结构化数据、非结构化数据、半结构化数据的结构类型,设计三类数据接口形式。同时,针对不同来源的数据,设计不同的大类子类代码,然后通过一体化编码来进行进一步的数据融合接入。通过这种方式,不仅可以减少不同结构数据中存在的信息冗余部分,也可以避免单一数据存在的信息缺失,尽可能保证地震灾情数据的完整性。采用多源也提高了系统数据获取的实时性。
结构化数据的一体化编码作为结构化数据的一项属性,对一条多源异构灾情数据进行标识。接口通过一体化编码作为关键字进行索引,采用关系数据库接口形式或电子表格数据接口形式实现与多源异构灾情数据管理系统的接入。一体化编码中的灾情码为数据入库分类提供依据,系统自动读取数据并实现存储,如图12所示。
图12 结构化数据的接入示例
半结构化数据的一体化编码同样作为半结构化数据的一项属性,对一条多源异构灾情数据进行标识。接口采用XML、JSON数据格式读取数据,以一体化编码作为数据的第一个标签索引,实现与多源异构灾情数据管理系统的接入。当数据连接ftp服务器进行存储时,服务器会自动读取该文件编码信息进行识别存储,如图13所示。
图13 半结构化数据的接入示例
非结构化数据的一体化编码作为该文件的名称,接口采用文件读取方式,以一体化编码作为文件名字进行索引,直接读取Word及PDF文件、图片、音频、视频等信息数据,实现与多源异构灾情数据管理系统的接入,如图14所示。
图14 非结构化数据的接入示例
5 结语
本文结合灾情数据管理存在的问题,参考相关规范标准提出了多源异构地震数据一体化编码和接口技术规范,同时设计和实现了多源灾情数据的一体化管理模式。将多源社会灾情数据通过接口规范输入到基于微服务(Balalaie et al,2016)的多源灾情数据管理服务系统平台,通过一体化编码实现了灾情数据接口输入、灾情数据一体化编码入库、灾情数据展示、灾情的一体化编码输出等全周期性统一管理(中华人民共和国国家质量监督检验检疫总局等,2014)。围绕“重大自然灾害监测预警与防范”重点专项,根据政府决策和社会公众服务的需求,针对多源异构灾情数据进行统一化管理,设计提出了多源异构数据的一体化编码和接口技术规范,同时开发完成了多源异构地震数据的一体化管理系统(韩万江等,2019)。系统具备可移植性和可扩展性,为准确、快速、及时地收集并上报地震灾情信息,评估地震烈度(张方浩等,2016),对各级政府决策指挥、抢险救灾提供一定的支持作用。