APP下载

海洋站观测资料监控可视化及系统设计研究

2017-03-13刘思晗唐晨海张龙庆陈哲

海洋预报 2017年1期
关键词:视图报文站点

刘思晗,唐晨海,张龙庆,陈哲

(国家海洋环境预报中心,北京100081)

海洋站观测资料监控可视化及系统设计研究

刘思晗,唐晨海,张龙庆,陈哲

(国家海洋环境预报中心,北京100081)

面向海洋站各类报文的监控统计,解除前台可视化与数据提取的紧耦合关系,提供统一部署、统一维护的解决方案。系统基于asp.net MVC框架搭建,建立报文监控数据库,将监控的各类报文接收状态及统计信息入库,解决单一种类报文统计效率较低的问题。通过asp.net MVC技术实现前台页面的搭建,实现业务逻辑、数据实体以及视图的分离。通过面向接口的编程方式提高系统的灵活性,降低各层之间的依赖程度。使用EntityFramework实现领域模型的设计方式。通过spring.net技术实现面向切面编程,在实现MVC架构的前提下简化开发。

海洋观测;海洋数据;MVC;领域模型

1 引言

近年来,我国风暴潮、海浪、海冰、海雾、台风、地震海啸及赤潮、绿潮、海水入侵等突发性的海洋灾害及海上溢油等海洋环境污染事件频发,给沿海地区造成了严重的生命财产损失。这凸显了海洋环境监测和预报的重要性,也对其提出了更高的要求。我国各级政府对海洋防灾减灾给予了极大的重视,并投入了大量的人力和物力开展海洋观测网和预报系统等方面的建设[1]。

海洋观测站是我国海洋观测网的主要组成部分,负责开展海洋气象、潮汐、海浪、表层水温、盐度、海流、海冰等要素的常规观测[2]。现有的报文收集方式为海洋站通过水文、气象观测设备的自动化录入或人工观测后,形成各类格式的编码报文,再由通信机通过VSAT链路及地面专线将报文上传至上级节点。由于报文种类繁多,同时各级节点肩负着数据接收转发的任务,所以报文的存储主要以文件的方式保存[3]。

旧有系统的统计模式是基于文件统计,对于批量数据统计较为困难,无法根据指定时间、要素类型批量统计[4]。且系统对于长时间序列的统计存在数据统计困难、效率较差等问题。同时,现有的报文监控平台主要是C/S架构,在不同的监控终端需要重新安装部署,也会造成软件版本可控性差等问题[5]。此外,通过远程映射的方式存在着多台终端同时访问增大原始报文存储服务器的系统开销的问题。

为了解决上述问题,更好的实现对各类海洋观测资源的监控,增加对长时间序列观测资料的有效统计,本系统在用户和功能分析的基础上,开展模块分析和设计,通过web服务技术,实现数据源与统计分离[6],解除前台可视化与数据提取的紧耦合关系,建立报文监控数据库,实现报文统计的持久化需要,解决之前多种统计报文查询效率低下的问题[7-9]。通过采用若干编程技术,提高了系统效率和灵活性,改善了人机交互体验[10]。

2 系统功能分析

本系统以监控展示为主要功能,实现海洋站观测报文的监控展示、数据监控报警、以及数据采集分析与监控数据管理。

本系统对分类存储后的报文文件进行解码、质控入库,并对解码后的各类观测数据进行分析、显示;获取系统服务器、数据库以及网络环境的运行状态进行状态监视;提供数据分析统计功能,能够根据需求进行各类统计报表的生成,并展示监控统计结果。

针对上面的功能分析,现将本系统的功能分类如下:

(1)报文文件接收状态入库统计:实现对已分类存储的报文文件状态标记入库;

(2)报文文件解码质控入库:实现原始报文文件按照对应的解码算法进行数据解码,对解码后的数据进行质量控制,将质量控制后的观测信息存入数据库中;

(3)报文文件传输统计:实现对报文文件传输信息的管理,对报文文件传输统计项的定义和报文文件传输统计报表的生成功能以及统计报表的导出功能;

(4)站点状态监视:实现对站点状态的监控功能;

(5)实时报警:实现对报文文件传输、站点状态、设备状态的报警;

(6)历史监控状态查询:实现按照起止时间对历史报文接收情况的统计分析功能,查询结果可以提供趋势图展示分析;

(7)系统配置管理:实现对系统的一些配置进行管理,提供例如添加、删除、修改、查询等功能服务。

3 技术路线

3.1 B/S架构

为了满足监控统计系统在局域网各电脑均可部署应用的实际需求,由于B/S部署、维护、功能扩展的统一性及便利性,系统采用B/S架构设计。

3.2 前端展示

采用jquery+easyUi编写前端显示,基于ajax技术实现浏览器与服务器之间异步请求功能,减少用户等待时间,减轻服务器的负担,提供良好的用户体验。

3.3 通过单例模式控制缓存对象

本系统在服务端定期从数据库中查询各海洋站点的监控状态信息,并存储至缓存,通过单例模式创建线程内唯一保存有站点状态的缓存,可实现不同用户在一定时间内访问服务端获取的查询结果唯一,且可实现浏览器短时间内多次访问查询站点状态时从缓存中读取站点状态信息,降低与数据库的连接,从而降低系统开销。

3.4 采用面向接口编程的编程思路

系统底层架构采用3层架构,在表现层(M+C)中,需要调用实现了业务逻辑接口层的业务逻辑层对象,通过spring.net实现通过配置创建具体的业务逻辑对象,降低了表现层与业务逻辑层的耦合程度。表现层通过调用业务逻辑接口层中对应的方法实现与数据库的交互,查询监控的相关内容。

3.5 领域模型

使用EntityFramework实现领域驱动设计(领域模型)。本系统中将各类监控报文在数据库创建对应的数据表,并由EF创建为具体的对像模型。并由该对像模型通过与数据库的交互,实现CRUD操作。

3.6 MVC框架设计

系统前台web网站采用.net MVC框架设计。MVC(Model-View-Controller)模型-视图-控制器,在分离应用程序内部关注点方面,MVC是一种强大而简洁的方式。

4 系统框架设计及流程实现

4.1 框架设计

海洋站观测资料监控可视化系统基于.net MVC技术开发,系统的总体框架为数据实体模型(基础设施层)、系统模型层(核心业务层)、监控站点业务视图(站点应用层以及可视化层)。系统总体架构图如图1所示。

图1 监控统计系统总体架构图

数据实体模型:基础设施层。实现了对接收到的报文文件解析、质控并入库的过程,以及监控统计系统中对数据库进行的各类CRUD操作。提供通用辅助操作功能,扩展方法,异常处理,日志记录等功能。并使用EntityFramework作为对象关系映射模型(ORM),提供对象操作,仓储操作。

系统模型层:提供与数据实体以及业务逻辑密切相关的业务功能。用于定义系统核心业务实现的数据模型的定义(与数据库表有映射关系);提供与业务相关的数据访问功能的实体映射、实体类型的配置,数据迁移,仓库操作(DBSession)的定义与实现。提交与web无关的业务逻辑的实现。

监控站点业务视图:站点应用层及可视化层。网站业务视图模型用于定义网站业务实现的视图模型。通过控制器(Controller)实现网站的相关操作,把从网站接收的业务视图实体转换为核心业务模型,传给核心层进行业务处理;处理与http密切相关的数据(session、cookie等),处理成与http状态无关后再交由核心层进行处理。通过视图(View)实现Web展现。页面展示使用easyui+jquery,实现了较好的页面展示效果。

网站业务通过过滤器(Filter)实现对业务执行权限进行检查,加强系统的安全性。

4.2 流程实现

本系统主要流程包括:数据分析入库,数据库查询提取,系统管理以及结果可视化。

本系统的主要业务流程如图2所示:海洋站通信机将报文文件以文件流的方式上传至文件服务器。在文件服务器端部署有分发存储子模块,通过将接收到的已分类存储的文件型报文解析,获取标准化质控后的水文、气象要素,并判断其是否正常,生成各类状态信息;同时监控服务器定时检测与海洋站通信机的连接状态,并监控文件服务器接收报文的情况,最终将报文及海洋站设备监控信息写入数据库。

统计统计模块处理,形成海洋站观测资料统计产品。

前台展示服务器部署本系统网站服务端,架设IIS,memcache分布式缓存等服务端程序。最终通过展示系统进行实时发布,向值班员提供各类实时数据的显示,并实现实时数据历史到报的趋势浏览及曲线绘制,异常警告记录等功能。系统效果图见图3。

图2 监控系统业务流程图

图3 监控系统主界面

5 结束语

本文研究的面相海洋站观测资料的监控系统解决了之前基于文件系统的监控平台统计长时间序列报文较为困难,且对于多种要素统计效率低下的问题。实现了对报文文件质控入库,增加了对历史资料的统计查询以及对站点、网络及硬件状态的监控功能。监控对象覆盖面较之前有了较大提升,可以全面深入的为预报及值班人员展现历史及实时的各类监控资料。

本系统在运行期间较为稳定,能够在汛期期间较好的完成监控统计的功能。显示界面友好,可针对不同的用户群体实现多种效果的展示。为值班员、预报员与各级管理人员提供了直观有效的展示平台。

该系统已部署并业务化运行一年以上,运行稳定可靠,用户反映良好。具有很大的推广价值和应用场景。

[1]靳熙芳,王硕.海洋环境数据智能化监控的现状与关键技术[J].海洋预报,2009,26(2):95-102.

[2]方长芳,张翔,尹建平.21世纪初海洋预报系统发展现状和趋势[J].海洋预报,2013,30(4):93-102.

[3]李晓婷,郑沛楠,王建丰,等.常用海洋数据资料简介[J].海洋预报,2010,27(5):81-89.

[4]袁雪梅,蒋永国,郭忠文.海洋数据信息共享平台关键技术研究与实现[J].中国海洋大学学报,2010,40(12):147-153.

[5]张明辉.基于JDBC技术的数据库连接和访问的研究[J].电脑与电信,2008,(6):49-51.

[6]朱树强.海量异构海洋数据集成系统的设计与实现[D].青岛:中国海洋大学,2014.

[7]魏红宇,张峰,李四海.海洋数据挖掘技术应用[J].海洋通报, 2008,27(6):82-87.

[8]Italy GODAE OceanView Science Team.GODAE OceanView National Reports 2011:Italy MFS[R].Paris:The 3rd Meeting of the GODAE OceanView Science Team,2011.

[9]NOAA Integrated Ocean Observing System(IOOS)program[R]. The United States National Oceanic and Atmospheric Administration.2007.

[10]孟娟,郭忠文,沈飞飞,等.海洋数据平台数据可视化查询系统设计方案[J].中国科技信息,2013,(2):80-81.

Monitor display and system design of observation data at ocean stations

LIU Si-han,TANG Chen-hai,ZHANG Long-qing,CHEN Zhe
(National Marine Environmental Forecasting Center,Beijing 100081 China)

This system implements the monitoring and statistics for received data from each ocean station.It provides an unified deployment and unified maintaining solution by removing the tight coupling relationship between the front page and data extraction.This system builds a packet monitoring database which can be used to record the relevant information of monitored packets base on asp.net mvc framework to improve the efficiency of single variety packet statistics.One core technology of this system is the separation of controller,model and view through building the front page by asp.net mvc.The second core technology is to improve the system flexibility and reduce dependent degree of each level through programming to an interface.The third one is the usage of EntityFramework model and design methods.The last one is simplify development through implementation aspect oriented programming under the premise of implementation the MVC architecture by spring.net.

ocean observation;ocean data;MVC;domain model

P717;TP311.521

A

1003-0239(2017)01-0077-05

10.11737/j.issn.1003-0239.2017.01.010

2016-04-26;

2016-06-21。

国家海洋局海洋公益性行业科研专项(201105017)。

刘思晗(1987-),男,工程师,学士,主要从事全国海洋实时数据通讯及.net相关项目开发工作。E-mail:evaseemefly@126.com

猜你喜欢

视图报文站点
基于J1939 协议多包报文的时序研究及应用
CTCS-2级报文数据管理需求分析和实现
浅析反驳类报文要点
基于Web站点的SQL注入分析与防范
2017~2018年冬季西北地区某站点流感流行特征分析
5.3 视图与投影
视图
Y—20重型运输机多视图
SA2型76毫米车载高炮多视图
首届欧洲自行车共享站点协商会召开