前兆数据自动化处理与信息推送技术研究
2019-12-20康晓姗纪娇阳孙素梅
张 琪,赵 倩,康晓姗,纪娇阳,孙素梅
(辽宁省地震局,辽宁 沈阳 110034)
0 引言
在地震监测的数据规模上看,地震观测仪器类型由模拟向数字化转变,资料数据存储量呈现指数增长,处理复杂程度显著增加,因此加速凸显出震情会商中前兆各学科数据分散、分析技术方法不规范、自动化程度不高等问题。目前使用的分析软件已无法满足震情监视跟踪和日常震情会商研判需求。
研发一套分布式运行、部署在云环境下具有自动化数据处理能力平台软件,满足各级、各类会商业务需求,实现自动提取各学科多种类型数据,自动生成、定时推送和交互查询各时间尺度数据观测报告、自动查询台站及各类仪器信息、数据、观测报告和解析仪器二维码获得其数据信息。
1 平台搭建及技术流程
Datist 数据专家为专项服务于大数据时代场景式(Context) 数据整合与融合的一款软件,能够处理多源数据,从多种数据源中获取多种格式数据。在流程集成方面,提供点、线、面、体的企业级业务重构方法,通过顶层设计与基层创新相结合、示范先行与成熟推广相结合,不断迭代更新的科研成果,旨在地震监测预报领域面向业务人员,营造一种开放、共享、协同的科研工作环境。
图1 Datist 数据专家整合多元化数据Fig.1 Datist data experts integrate diversified data
基于Datist 数据专家系统,自动读取学科仪器数据、绘制数据曲线,以实现自动汇总生成周/月三大学科的会商报告,进而能更好的为周/月会商的仪器数据统计提供服务,减轻学科组工作人员繁重的工作压力,提升工作效率,具体实现流程见图2。
图2 数据自动化信息化推送流程Fig.2 Data automation and informatization push flow
2 关键技术
2.1 连接行业数据库
目前,辽宁省地震局现使用的地震监测系统为Docker 应用虚拟化平台系统,完成由原来的传统虚拟机技术—以OS 为中心,升级为新时代容器技术以应用为中心。在相同运行环境、应用程序下利用更轻量的Docker 容器支持,使用更快速的宿主机操作系统直接运行在内核上,在硬件使用中无IO 转换负担、应用程序易安装,易使用、迁移方便,数据量小的优点。使用Linux 系统下运行的Oracle 关系型数据库,其具有性能稳定、功能强大、移植性好等特点,被广泛应用于各个行业领域。
2.2 整合现有数据信息
建立数据表时为防止数据冗余等情况出现,所需信息分散在不同数据表内,无法通过台站、仪器等基本信息,读取相关数据表绘制数据曲线。数据库没有视图和索引,需通过台站字典表、仪器测项字典表,数据采样率表等数据表共同确定该仪器数据存储位置[1]。为更高效实现需求,通过各个数据表内主键把相关信息整合至一张信息表内。
以整合仪器信息为例,在目前数据库中台站拥有仪器型号信息表(QZ_DICT_INSTRUMENTS)及台站拥有仪器信息表(QZ_DICT_STATIONIN STRUMENTS),使用INNER JOIN 进行关键字匹配,实现语句为:
Select * FROM QZ_DICT_STATIONINSTRU MENTS INNER JOIN QZ_DICT_INSTRUMENTS ON QZ_DICT_STATIONINSTRUMENTS.INSTRCO DE= QZ_DICT_INSTRUMENTS.INSTRCODE;
2.3 确定仪器数据表位置
仪器采样率分为:01(分钟值)、02(秒值)、60(小时值)、90(日值),数据类型分为:原始数据(DYS)、预处理数据(DYU)、产品值数据(CP)。数据表的命名规则为:机构代码_测项代码_表类型标识_采样率代码[2]。其中预处理及产品值数据为数据处理后采样率加1 时间尺度保存,少数特殊仪器为秒值采样,预处理后数据写入分钟值原始数据表及分钟值预处理数据表,即所有仪器均满足在采样率尺度加1 后的预处理表存在相应预处理数据规律。绘制不同时间尺度曲线图需选择不同类型仪器数据,由于日均值仪器未要求做预处理及产品值转换,其读取数据时读取其原始数据表,秒值、分钟值仪器仪器灵敏度较高,需使用预处理及产品值数据绘制数据曲线图,具体不同时间尺度绘制曲线采用数据类型见表1。
表1 绘制仪器曲线数据表位置
2.4 SQL 优化查询语句
Oracle 数据库是信息技术发展的重要产物,由于数据库中的数据量日渐庞大,对数据的处理速度提出了更高的要求,对数据库的查询进行优化,会节约大量的系统资源和提高数据的查询效率,所以读取数据表时应该重视数据库查询优化的重要性。
在Oracle 数据库中执行计划是SQL 优化最为复杂也是最关键的部分,因为它实际上代表了目标SQL 在Oracle 数据库内部的具体执行步骤[3]。在对仪器数据表查询过程中,当数据量很大时,使用Having 时,是先分组后条件判断,需要检索所有的记录再条件判断,而当使用Where 时先判断再分组,分组效率更高,从而查询的效率也有明显提高。
绘制数据曲线图为动态数据,若读取数据库中所有历史数据耗费时间较长效率较低,使用Where 对数据时间进行查询提取,例抽取前7 天的数据SQL 语句为:SELECT * FROM reportdata WHERE TO_DAYS (NOW ()) -TO_DAYS(START) <=7。
2.5 绘制数据曲线图
各种采样率的数据表的结构基本相同,区别在于“观测值序列”字段。对于日(均)值表,观测值序列只有一个数据;对于整点值表,观测值序列将一天24 个小时值数据按采样次序连接起来,数据之间用空格符分隔;秒值表的观测值序列字段则为86400 个数据连接起来[4]。在创建流程时需要设定变量将仪器数据表内信息与数据字典表信息对应,观测值OBSVALUE字段为CLOB 类型,其按时间顺序排列存储,在绘制曲线图时应根据其采样率增加相应时间函数形成点-数值格式,即AddMinutes、AddSeconds、AddHours。按仪器学科属性进行分类,以数组的形式进行多次循环绘制多套仪器数据曲线图。
表2 仪器数据表结构
3 优化创新
3.1 数据预处理操作
目前数字化前兆观测系统数据的采样率及精度有了进一步的提高,其数据量也随之呈指数增长,增加了前兆台站、前兆台网的数据及数据检查工作量。目前数据库中预处理数据由工作人员主观判断后处理,该过程未实现自动化处理,人为操作的主观性较大,不能保证其数据质量。大数据时代对于数据的精度和有效性要求更为苛刻,因此数据的预处理过程必不可少,只有科学规范的预处理过程,才能使数据分析深层挖掘的结论更为合理可靠。
使用MATLAB 程序对目前已有数据进行简单预处理操作,去除明显台阶及突跳,为数据的深层次挖掘提供更科学可行的数据信息。预处理操作主要包括对原始数据出现的缺数、突跳、台阶和超限等情况进行预处理。对少量缺数的数据可进行线性插值、多次样条插值或邻近内插处理;对于超出3 倍中误差的突跳值对其删除并进行插值,体应变数据预处理去台阶操作如图4 所示,自动预处理后的数据可以更直观的看出数据变化趋势,实现更好的数据挖掘研究。
图4 数据预处理前后对比图Fig.4 Contrast chart before and after data preprocessing
3.2 实现数据迁移,云环境存储
目前在运行数据库中存储内容包含前兆观测数据外,还包含与前兆观测数据有关的信息,包括前兆观测基础信息,如观测环境、观测场地、观测设施、观测仪器等方面的信息,前兆观测日志信息,有关的辅助观测数据,前兆台网运行信息,以及各个软件配置权限表,异常跟踪分析事件表等多种类型数据表。对于前兆数据自动化处理只需要包含仪器数据表、仪器运行日志表、少量仪器信息关联表。
为保证前兆数据库正常运行,实现对现有数据库实现数据迁移,在云环境下建立Mysql数据库,建立相关数据表,例如关联后的台站仪器信息表、仪器数据表及相关运行日志表,实现数据迁移。因台站仪器暂未实现实时数据交换至省局,现数据库保存数据为前一天数据。在设置实时数据增量交换至云服务器时,设定时间为0 时至12 时,保证数据及时性和同步性,实现云端化。
图5 数据迁移和实时交换Fig.5 Data migration and real-time exchange
4 成果展示
4.1 微信端窗口
现在是大数据时代,单一的传播方式已不再满足现代化的发展需要,微信的出现则成为人们获取大量信息的平台。目前地震行业数据推送仅存在于连接行业内网,为实现信息推送,使用Datist 软件与微信接口,设计窗口,推送相关仪器数据报告。利用智能手机的信息储存量大、网络共享资源方便、不限办公场地等优势,提升工作效率。一级菜单为“前兆管理”,二级菜单根据学科属性分为“流体学科”、“形变学科”、“电磁学科”。报告发送方式为每日10 点定时发送及工作人员交互。
采用了云储存原理,将数据库保存在云端服务器上。实行及时共享,实时维护,全天候等特点,有利于提高办公效率,可以实现随时随地办公、需要的信息可以及时共享、随时可以查、随时可用办公信息、办公资料。摆脱了传统的计算机查看数据的平台需求和纸质化数据的效率与便携的多重问题。
图6 微信端交互窗口界面Fig.6 Interface of interactive window on micro-message terminal
4.2 数据曲线报告
对于日常推送数据曲线报告,需要包括仪器数据曲线及仪器预处理日志。预处理日志主要记录仪器运行过程中外界发生的对仪器运行和数据产生影响的事件,如环境干扰事件、人工调整仪器等,以及对事件进行的处理信息等。观测日志主要由人工录入,并保存在数据库中。通过数据曲线及日志同步发送,可有效排除很多环境干扰和人为因素引起的数据变化,为数据仪器异常分析提供参考信息。
实现前兆仪器曲线报告,形成周、月、年及多年时间尺度的前兆数据自动处理和各学科观测报告。产出数据曲线及预处理日志、自动汇总学科报告推送至有需求的地震预报分析领域人员手中,实现前兆数据自动化处理及信息推送。
图7 仪器数据曲线图Fig.7 Instrument data chart
5 结论
该技术更好的实现掌上化办公及基本管理信息资源共享与管理,优化办公业务资源模型,更好的为周、月会商的仪器数据统计提供服务,实现前兆各学科数据库中不同产出类型数据的自动提取,实现周、月、年及多年时间尺度的前兆数据自动处理和各学科观测报告的自动生成,实现前兆学科观测报告定时推送和交互查询,实现前兆台站各类仪器信息、数据、观测报告和显著震情周边台站信息自动查询,推进地震分析会商技术平台日常会商功能模块建设,进而更好服务于日常震情会商,有效减少前兆学科预报人员繁琐的日常工作,实现地震分析预报技术平台的信息化。