APP下载

基于PHP和MySQL的破坏性地震震例数据库设计与实现

2021-12-27,

山西地震 2021年4期
关键词:破坏性灾害损失

路 尧 , 梁 艳

(1.山西省地震局,山西 太原 030021;2.太原大陆裂谷动力学国家野外科学观测研究站,山西 太原 030025)

0 引言

地震应急数据库是地震应急指挥的基础,完善的数据库有助于提高政府的应急反应能力,减轻地震灾害损失。中国地震局在“十五”期间组织实施“地震应急指挥技术系统”建设,建成地震应急基础数据库。作为应急指挥系统的基础与核心,基础数据库自建成以来在地震应急工作中发挥出积极的作用[1-2]。地震应急基础数据库的各项数据,在整个地震应急总体流程中起着关键作用,支撑地震应急灾害损失评估系统震后快速估计灾损、伤亡,判定灾害发展趋势,做出灾害规模判断;为指挥决策者提供参考依据,有利于应急指挥体系的建立与完善;提供灾区历史地震、应急事例、背景数据等的定量化或图形化表达,提高地震应急救灾指挥工作的科学性与针对性[2]。林国良等基于我国历史地震资料,以SQL数据库存储属性系统,通过关键字段实现属性数据与空间数据间的连接,建立基于烈度点的中国历史地震资料数据库系统,其关注点是地震烈度[1];2013年中国地震局震灾应急救援司组织管理和科研人员,以《中国地震年鉴》提供的资料为主线,编撰出249次有灾震例的《1966-1989年中国地震灾害损失资料汇编》《中国大陆地震灾害损失评估》,丰富了中国历史地震资料库,不足是未建立系统的数据库,查询不便;姜立新研究员在2004年应用GIS技术,建立首都圈历史地震灾害数据库,给出地震灾害损失评估数据库结构。

我国是一个地震多发国家,有丰富的地震史料记载。20世纪50年代以来,进行过两次大规模的地震史料收集整理,目前很多资料仍以纸质形式保存[3]。从现有的历史地震文献来看,灾害评估报告内容涵盖地震构造背景、地震基本参数、震情、灾情、考察、救灾、重建等基础资料及应急措施、救灾工作流程、考察获得的重要科学认识等。若借助相似的历史地震资料作为参考,需翻阅大量的历史文献,影响响应速度和工作效率。如果从历史文献中提取相关内容,建立一个破坏性地震震例数据库,在发生破坏性地震时,可实现快速查找到相似的震例作为参考,提高响应速度和工作效率。

目前,地震灾害数据库是一个综合性数据库,对地震事件的记录缺少一些重要信息。如,震区自然环境情况、房屋结构分布、易损性信息等。因此,建立一个完善的数据库势在必行。该文通过对1966年以来中国大陆破坏性历史地震事件的文献资料,包括《中国震例》《中国大陆地震灾害损失评估汇编》《中国近现代重大地震事件考证》,及中国地震局官网等相关资料进行汇总,建立破坏性地震震例数据库,构建查询系统(以下简称系统)。

1 数据库的设计与实现

先对1966年以来中国大陆破坏性历史地震的文献资料进行筛选,按照表格形式进行分类录入,形成震例数据库,应用MySQL实现以破坏性震例数据为基础的查询系统。将震例分五部分建表,即地震灾害损失表、地震烈度表、地震主要特征表、应急救援表和建筑物破坏表。同一震例在五张表中具有相同的ID,五张表通过ID相互关联。ID格式由震中所在县/区的行政区划代码、发震日期与发震时间组合构成。如,大同-阳高地震ID为“1402211999110 1212458”。数据库表关系及各表结构如图1所示。

图1 数据库表关系

图1中,地震灾害损失表中的数据主要由地震基本参数和人员伤亡及经济损失构成,主要根据地震灾害评估第一时间所需了解参考的数据建立,也为研究地震风险提供地震损失数据的快速查询与提取;地震烈度表中的数据主要为地震烈度、影响范围等,为日后研究地震影响场模型提供数据的快速查询与提取;地震主要特征表的数据主要由地震造成人员死亡原因,地震对生命线工程、建(构)筑物造成破坏的特征数据构成,可为研究灾害损失提供参考与数据样本支撑;应急救援表的数据主要由地震应急救援的救灾投入、救援力量、物资等数据构成,可为决策者提供数据参考;建筑物破坏表的数据主要由筑、构造物的破坏程度数据构成,为统计房屋在地震灾害中的平均损失率时提供参考与提取,为快速判断地震规模提供依据。

2 系统设计与实现

2.1 系统架构设计

系统采用B/S三层架构。即浏览器/服务器结构(见第45页图2)。其中,数据层为最底层,应用MySQL数据库存储震例灾害损失、地震烈度、地震主要特征、应急救援、建筑物破坏的信息数据;业务逻辑层用于连接数据层与Web表现层,通过相关算法功能,对数据层抽取的数据进行逻辑运算,并将运算结果反馈给信息展示层,通过展示层将数据展现给用户;Web表现层直接面向用户,用来展示用户需要的相关数据信息。

图2 系统三层架构设计图

2.2 系统功能设计

系统功能模块采用PHP语言实现,两大模块分别为权限管理与震例查询(见图3)。在权限管理模块中,有用户管理、角色管理、菜单管理3个子模块。用户管理用来管理可操作系统的用户信息,角色管理用来为用户分配不同的角色(不同级别的用户拥有的权限不同),菜单管理用来管理页面菜单;在震例查询模块中,用户可根据时间,如,年、月、日、区域等条件对震例信息进行查询,也可通过Excel导入功能,批量导入震例信息所对应的地震灾害损失表、地震烈度表、地震主要特征表、应急救援表、建筑物破坏表等。同时,可通过模板导出功能,导出需要的内容。

图3 系统功能模块图

2.3 系统实现

破坏性地震查询系统的设计是将1966年以来的地震损失、地震烈度、地震特征、应急救援与建筑物破坏五张表的数据导入系统中,通过特定条件进行组合,为地震比对查询时快速获取有用信息,分两大模块,为地震查询模块与地震信息管理模块。

地震查询模块主要功能是通过地震名称、地震编号、震级、发震时间四项查询条件,实现对特定信息进行单独查或组合查,并将查询结果以Excel的形式导出,便于流转。

地震信息管理模块用于实现对地震损失、地震强度、地震特征、应急救援与建筑物破坏五张表信息的维护,主要通过模板批量导入、添加某张表及批量删除,针对大量或少量的数据变更进行人性化操作设计,提高工作人员对信息处理的工作效率。

系统完成后,主要内容及功能展示如图4至第46页图7所示。

图4 数据库表部分截图

图5 “云南盈江6.1级地震”查询结果截图

图6 导出功能示意图

图7 单条数据录入功能示意图

3 结语

通过对《中国震例》《中国大陆地震灾害损失评估汇编》《中国近现代重大地震事件考证》、中国地震局官网及相关文献资料等分析对比,整理1966年以来的破坏性地震震例360余条并形成数据表,应用PHP和MySQL建立破坏性地震震例数据库查询系统,对地震应急基础数据库的基础数据进行补充,使震例资料更加丰富、全面。

由此次地震震例的整理和最后形成数据库的结果来看,数据库内容可满足使用者的需求,数据库数据基本为结构化数据,缺少对非结构化数据的应用。如,烈度的矢量化数据,原始文献资料的数据等,这些非结构化的数据可使数据库更加完整,让使用者有更好的体验。因此,数据库的数据需要长期持续的更新、增减和完善。

猜你喜欢

破坏性灾害损失
河南郑州“7·20”特大暴雨灾害的警示及应对
胖胖损失了多少元
千年蝗虫灾害的暴发成因
蝗虫灾害的暴发与危害
玉米抽穗前倒伏怎么办?怎么减少损失?
地球变暖——最大的气象灾害
创业新闻:新闻人才培养的“破坏性”创新
菜烧好了应该尽量马上吃
筑起堤坝,拦住洪水
损失