APP下载

基于云计算的舰船航行数据存储与备份系统设计

2023-09-01贾丽娜

舰船科学技术 2023年14期
关键词:计算技术舰船备份

贾丽娜

(武汉船舶职业技术学院, 湖北 武汉 430050)

0 引 言

随着互联网与计算机技术的发展,船舶的智能化技术、自动化技术不断发展,智能化船舶不仅仅是指硬件设备的自动化、智能化,也是船舶航行数据的自动化、智能化。云计算技术是基于计算机与互联网发展而来的一项新技术,在促进船舶智能化方面有巨大的作用,主要包括:

1)船舶数据管理。云计算技术可以提供强大的数据存储和管理能力,将船舶各种数据(如航行数据、机电设备数据、货物信息等)集中存储在云端,实现数据共享和统一管理,提高数据的安全性和可靠性。

2)船舶运营管理。云计算技术可以提供实时的船舶运营管理服务,包括船舶位置监控、航线规划、货物跟踪等,帮助船舶企业实现更高效的船舶运营管理。

3)船舶维修保养。云计算技术可以提供更加智能化的船舶维修保养服务,包括设备故障预测、维修计划制定、维修记录管理等,帮助船舶企业降低维修成本,提高设备可靠性和安全性。

4)船舶智能化控制。云计算技术可以实现船舶智能化控制,包括船舶自动驾驶、智能航行控制、智能货物管理等,提高船舶的自动化程度和智能化水平。

5)船舶安全管理。云计算技术可以提供更加全面的船舶安全管理服务,包括船舶安全监测、安全风险评估、安全预警等,帮助船舶企业提高安全管理水平,降低安全风险。

本文针对云计算在舰船航行数据存储与备份系统的应用进行研究,介绍了典型的Hadoop 云计算技术,搭建了数据存储与备份系统的基本框架,并详细介绍系统的关键构成。

1 Hadoop 云计算技术的研究与发展现状

Hadoop 是一项Apache 牵头开发的分布式计算框架,它的设计定位是一种连接大中型集群硬件设备与用户的平台,一方面为应用程序提供稳定可靠的接口,另一方面可以充分调用线下的大规模运算器和处理器资源[1]。

Hadoop 主要由HDFS 分布式文件系统和MapReduce 分布式计算模型两部分组成,HDFS 是一种分布式文件系统,可以在集群中存储大规模数据,并通过多个节点实现可靠性和容错性。而MapReduce 是一种分布式计算模型,可以对存储在HDFS 上的数据进行分布式处理和分析。这些组件共同构成了Hadoop 生态系统的核心,使得处理大规模数据变得更加高效和可靠。Hadoop 的基本原理架构如图1 所示。

图1 Hadoop 的基本原理架构图Fig. 1 Basic architecture diagram of Hadoop

Hadoop 的关键特性包括:

1)虚拟化

Hadoop 的虚拟化特征是实现计算资源可拆分与分配功能的基础,基于互联网技术,Hadoop 可以充分调用多核CPU 的计算资源,满足用户的计算需求。Hadoop 的虚拟化并不是计算资源的虚拟化,而是指接入计算资源的接口虚拟化,Hadoop 为每个用户分配了不同的ID,每个ID 背后都能调用线下的服务器集群,实现计算资源利用的最大化。

2)伸缩性

Hadoop 云计算平台具有良好的伸缩性,可以根据用户访问的数量,合理配置IT 资源。Hadoop 伸缩性也体现在HDFS 和MapReduce 模块的可扩展性:① HDFS 可以存储PB 级别的数据,而且可以轻松地扩展存储容量,只需要新增节点即可[2]。② Hadoop 的MapReduce 框架可以轻松地扩展计算能力,只需要新增计算资源节点即可。

3)多用户服务

Hadoop 云平台的核心是为用户提供服务,包括各类用户界面和可编程访问的接口,同时,Hadoop 平台需要考虑多用户并行技术,既要保持用户数据之间的相对独立性,又要能够充分调度用户资源,解决共性的问题。

2 舰船航行数据存储与备份系统设计

2.1 船舶航行数据存储和备份系统的基本框架设计

针对海上船舶的航行数据存储和备份问题,本文基于Hadoop 云平台技术,建立了舰船航行数据存储和备份系统,系统的功能框图如图2 所示

图2 舰船航行数据存储和备份系统功能框图Fig. 2 Functional block diagram of ship navigation data storage and backup system

舰船航行数据存储和备份系统的关键特性包括:

1.B/S 架构

舰船航行数据存储和备份系统在调用Hadoop 云计算资源时,采用基本架构为B/S 架构,由于船舶数据存储和备份系统是一种可视化平台,需要进行数据、应用的快速迭代,采用C/S 架构已经无法满足[3],因此,本文选用B/S 架构搭建系统平台。

B/S 架构的优势在于:

① 基于浏览器的工作模式,用户通过浏览器向服务器发送请求,只要携带浏览器的设备就能实现系统的访问,非常方便。

② 高效性。B/S 架构可以通过服务器端的负载均衡和分布式处理,实现高效的数据处理和资源利用,提高系统的响应速度和吞吐量。

③ 安全性:B/S 架构将应用程序的核心逻辑和数据都放在服务器端,客户端只是通过浏览器等工具与服务器进行交互,可以有效避免客户端的非法操作和攻击,提高系统的安全性。

④ 可维护性:B/S 架构将应用程序的核心逻辑和数据都放在服务器端,客户端只是通过浏览器等工具与服务器进行交互,可以方便地对服务器端进行维护和升级,不需要对客户端进行大规模的更新和维护,降低了维护成本和难度。

B/S 架构的工作流程图如图3 所示。

图3 B/s 架构的工作流程图Fig. 3 Flowchart of the B/s architecture

2)通信卫星的选取

舰船航行数据存储和备份系统采用B/S 架构,因此对数据链路的传输稳定性有较高的要求,本文采用海事卫星 (INMARSAT)通信系统进行数据传输, Inmarsat 第五代卫星系统能够实现全球范围内的高速移动宽带业务,满足系统的通信需求。

2.2 舰船数据存储与备份系统的云服务器设计

由于舰船航行数据量大且源源不断的产生,因此在设计云服务器时,遵循下述原则:

1)软件即服务SaaS

船舶数据系统基于云平台开发时,是将数据存储和备份应用程序作为服务提供给客户,而不是将软件安装在船舶客户本地的计算机上。SaaS 模式下,船舶终端用户可以通过通信网络随时访问软件应用程序,而不是下载和安装软件。SaaS 模式的优点包括灵活性、可扩展性、易于使用、低成本和无需维护等。

2)平台即服务PaaS

船舶数据存储和备份系统服务器开发时,遵循平台即服务(PaaS)的原则,云计算为用户提供一个完整的应用程序开发和部署平台,比如操作系统、数据库、Web 服务器、开发工具和应用程序框架等,使得船舶用户可以专注于应用程序的开发,而无需关注底层的基础设施和管理工作,基于PaaS 原则,船舶数据库系统可以更快的构建、部署和扩展,也能降低程序开发的成本。

3)设施即服务IaaS[4]

运用IaaS 原则建立船舶数据存储与备份系统,通过IaaS 获取云服务器的硬件资源,比如阿里云资源,不仅能够降低云服务器和平台的开发难度,还能大幅度降低系统云服务器的开发成本。

基于云计算的舰船数据存储与备份系统的云服务器功能框架如图4 所示。

图4 舰船数据存储与备份系统的云服务器功能框架Fig.4Cloud server functional framework of ship data storage and backup system

2.3 船舶航行数据存储和备份系统的数据库开发

数据库是船舶数据存储与备份系统的核心,结合云计算技术,系统并不在本地设备上开发数据库,而是采用云端数据库SQL Azure 技术。

SQL Azure 云端数据库引擎是基于网络的关系型数据库引擎,也是基于SQL Server 数据库技术开发而来的一种数据库技术,具有并行性、可扩展性、实用性高等优点。

SQL Azure 数据库引擎的功能图如图5 所示

图5 SQL Azure 数据库引擎的功能图Fig. 5 Function diagram of SQL Azure database engine

可知,SQL Azure 数据库引擎主要有3 种层次架构:

1)服务层

服务层是SQL Azure 数据库引擎的前端服务接口,负责接收来自不同用户、不同场景的数据请求,包括SSL、TDS 、连接与指令、Http 等,服务提供层将数据通过gateway 分发到不同用户IP[5]。

2)平台层

平台层是SQL Azure 数据库的虚拟机所在位置,每个虚拟机负责管理指定用户数量的数据库,并具有服务请求管理的权限。

3)基础层

基础层是SQL Azure 数据库引擎的计算单元和网络基础,在访问SQL Azure 数据库引擎时,需要对每一个Windows Azure 账户进行ID 验证。。

3 舰船航行数据存储与备份系统软件开发

针对船舶航行数据存储与备份系统的软件程序开发,本文选用的编程语言为Ajax 语言[6],Ajax 是一种基于Web 的Java Script 技术,应用潜力巨大。

Ajax 的优势在于:

1)减轻服务器负担

使用Ajax 可以将部分数据的获取和处理交给客户端完成,对于减轻船舶数据存储与备份系统服务器的负担有明显效果,同时也能提高服务器的分时复用性能。

2)提高响应速度

使用Ajax 可以实现局部更新,减少了网络传输的数据量,传统的Web 应用采用填写表单的数据访问模式,用户提交一个Web 服务器请求后,Web 服务器会返回针对用户请求的页面。这种访问模式的响应速度慢,且大量占据服务器的通信带宽。Ajax 技术在面对服务请求时,可以直接在客户端采用JavaScript 生成用户所需的答复,省去了服务器和浏览器之间的通信流程。

3)提高交互性

使用Ajax 可以实现动态交互效果,如实时搜索、自动补全等,可以在客户端的机器上进行需求和答复的交互,不需要增加浏览器插件,提高了页面的交互性。

4)提高可维护性

使用Ajax 可以将页面的逻辑分离,使得代码更加清晰,易于维护。

5)提高可扩展性

使用Ajax 可以实现模块化开发,使得系统更加灵活,易于扩展。

下图为基于Ajax 的舰船航行数据存储与备份系统工作流程:

系统首先进行初始化,然后进行SQL Azure 服务器的初始化,系统自动判断数据传输需求,然后调用Ajax 程序调用,经过B/S 架构数据传输,实现整个舰船航行数据存储与备份系统的工作。

4 结 语

为了提高船舶航行数据的采集、分析和处理水平,本文设计开发了舰船航行数据存储与备份系统,该系统充分采用Hadoop 云计算技术和SQL Azure 数据技术,采用B/S 架构搭建,能够满足船舶终端用户对数据采集、访问、上传、请求等不同使用场景的需求,具有十分重要的价值。

猜你喜欢

计算技术舰船备份
“备份”25年:邓清明圆梦
《计算技术与自动化》2022年总目次索引
舰船通信中的噪声消除研究
舰船测风传感器安装位置数值仿真
创建vSphere 备份任务
基于云计算技术的FLAC3D软件计算平台的研发
《物探化探计算技术》2016年1~6期总要目
旧瓶装新酒天宫二号从备份变实验室
舰船腐蚀预防与控制系统工程
基于云计算技术的虚拟实训室设计与实现