APP下载

储罐区重大危险源数据流异常检测技术框架研究*

2018-08-08郭晓明

科技与创新 2018年15期
关键词:数据流储罐危险源

郭晓明,梅 鹏

(中国电子科技集团公司第三十八研究所,安徽 合肥 230088;安徽省公共安全应急信息技术重点实验室,安徽 合肥 230088)

储罐广泛应用于石油化工行业,存储的化学品普遍具有毒性、易燃易爆、易挥发、受热易膨胀等特征,极易造成火灾、爆炸事故或环境污染。当一定范围内化学物品存储量超过临界量的储罐设施集合,即构成储罐区重大危险源。目前,安全生产隐患排查多依靠人力排查,难以明确界定安全和危险状态,且严重缺乏时效性。对储罐区重大危险源实时动态监测,然后对监测数据进行实时智能分析,能为企业安管人员及时发现异常情况提供科学依据。康荣学基于GIS提出建设重大危险源安全监测预警系统,实现传统视频监控和综合安全参数监控;蒋诚航等人基于组态系统建立了储罐区液位、压力等参数监测预警系统,实现动态参数和视频监控。前人多将研究焦点聚集在重大危险源智能监控领域,较少考虑如何高效处理所得数据并快速发现异常模式。这方面可以借鉴互联网海量大数据处理及智能电网大数据处理方法:陈付梅等人提出利用分布式数据流处理系统解决大数据环境下的数据流处理问题;王桂兰等人基于分布式流式处理平台Spark Streaming研究了大规模用电数据流的快速聚类和异常检测问题。本文引入大数据流式处理技术,提出利用Storm流式计算平台对储罐区重大危险源实时监测数据流进行异常检测的技术处理框架,实现实时数据采集、数据接入、数据处理、结果输出与存储。

1 数据处理框架

储罐区重大危险源异常检测处理框架如图1所示。

基于大数据流式计算系统,对实时监测系统产生的数据流进行异常检测。图1中,数据采集是通过对储罐区新建感知设备采集装置、贮存物状态以及环境参数;数据接入是通过数据接口连接感知设备采集到的各类监测数据,并读取至流式处理系统的数据处理组件;流式处理对数据不预先存储而是直接进行阈值判断;最后输出并存储异常结果。

图1 储罐区重大危险源异常检测处理框架

2 数据采集模块

2.1 数据采集需求

本文针对储罐区重大危险源可能的风险点,确定需要监测采集的参数包括温度、可燃气体浓度、压力、液位等。该环境下传感器采集到的数据类型主要是时间序列数据,既要将不同传感器采集到的数据分隔开,又要保证同一传感器采集到的数据能按照时间先后顺序有序处理。

2.2 数据采集模块设计

数据采集模块如图2所示。本文设计了一种基于Kafka分布式发布订阅消息系统的数据采集系统架构,如图2所示。基于Kafka的数据采集过程如下:通过温度传感器、浓度传感器、压力传感器、液位传感器及其他安全参数监测传感器采集储罐区设备参数、危化品状态、环境状况等信息;传感器将采集到的数据经过TCP/UDP通讯协议传送至数据采集节点;数据采集节点处理接收到的数据并进行封装发送至消息调度分发模块;消息调度分发模块对数据进行简单处理后分发至Kafka集群的各个主题分区,Kafka集群继续将数据转发至数据接入模块。

图2 数据采集模块

3 数据接入模块

Storm框架下的数据接入模块设计如图3所示,Spout组件作为Storm框架下的数据源,外部数据通过IRichSpout接口实现接入;接着将原始外部数据封装成Tuple元组发送至待处理队列,由Bolt组件进行数据处理。为了保证时间序列数据处理的顺序性,每个Tuple元组封装完成后会有唯一的ID标识,用以根据ID顺序对计算结果进行汇总。

4 数据处理模块

4.1 滑动窗口模型

滑动窗口模型能满足数据实时、高效批量处理的计算要求。滑动窗口模型的滑动窗口大小始终固定不变,滑动窗口中始终保存的是最新批次的数据。时间滑动窗口模型是通过窗口使用的起始时间点与终止时间点之间的差值表示窗口大小,这种方法更适用于本文重大危险源监测场景中时间序列数据类型的异常检测需求。图4所示的时间滑动窗口,滑动窗口大小为D,滑动距离为d,即有D/d个时间基本窗口,这些基本窗口可以同一时间并行计算,每隔时间d得到最近D时间进程内的异常数据。

4.2 异常检测

储罐区重大危险源实时监测采集的参数类型包括设备温度、压力、液位、可燃气体浓度等。在正常情况下,这些参数的波动范围应当处于一定合理区间内,通过设定并输入各个参数的合理变化区间可以实现阈值判断,超过系统设定阈值后则视为异常数据。

图3 数据接入模块

图4 滑动窗口模型示意图

图5 数据处理模块

4.3 Storm框架下的数据流异常检测处理

数据处理模块设计如图5所示,数据元组Tuple接入Storm系统的待处理队列后,分别经过滑动窗口模型、字段分割、阈值判断步骤实现异常检测处理,最后输出异常数据。滑动窗口模型通过RollingBolt实现,利用RollingBolt定义滑动窗口大小D及滑动距离d,即有D/d数量的窗格接收数据元组等待处理;字段分割则通过SplitBolt实现,利用SplitBolt分割窗格发送的数据元组字段,得到符合阈值处理要求的字段形式;阈值判断通过ThresholdBolt实现,定义各参数数据的合理区间,检验各字段的数值是否在合理区间内,超过合理区间则视为异常数据;最后输出异常检测结果。

5 数据存储

Storm框架本身不涉及对数据处理结果进行存储,但是可以通过自行定义Bolt组件实现对检测结果的存储。可以定义DatabaseBolt实现将检测结果保存至数据库,便于后期的查询和检索;或是定义FileBolt实现直接将检测结果保存至数据文件,便于后期的备份和转移;或是直接保存至云平台HDFS中。视后期对异常检测结果的处理需求而定。

6 结束语

本文围绕储罐区重大危险源的异常检测问题,提出基于Storm流式处理平台,对实时监测数据流进行异常检测的处理框架,实现数据采集、数据接入、数据处理、结果输出和存储的全过程。本文的技术框架对工业大数据环境下重大危险源的异常模式快速检测问题具有参考和应用价值。

猜你喜欢

数据流储罐危险源
优先级驱动的泛化航电网络实时性能分析
大型LNG储罐珍珠岩在线填充技术实践
大型储罐设计标准体系的对比
危险源与隐患关系的辨析
高速公路机电交安施工危险源分析及防范
地质灾害治理施工危险源的辨识与控制措施
汽车维修数据流基础(上)
港口大型原油储罐池火灾事故后果分析
汽车维修数据流基础(下)
数据流安全查询技术综述