浅析基于云计算的物联网开放平台设计与实现

(整期优先)网络出版时间:2022-04-19
/ 3


浅析基于云计算的物联网开放平台设计与实现

韦常宇

广西通信规划设计咨询有限公司 广西南宁 530007

摘 要:近年来,随着5G技术、分布式计算、负载均衡等技术的不断成熟以及其向商用领域的推广,物联网技术具备极大的发展潜力,应用空间业十分广泛。智慧城市、智能家居等概念对于人们来说并不陌生。而建设物联网的过程之中开发者往往需要在同一时间智能化管理与分析成千上万的物品。面对如此庞大的操作对象群体以及群体在交互过程中产生的海量数据,如何对其进行妥善的管理则显得十分重要。而云计算技术则我这一切提供了可能性。在本文中,笔者以ASSM模型为核心,设计了一种基于云计算的物联网开发平台。其目的在于试图将原本处于孤立状态的独立应用软件云化,满足企业共同面临的高并发通信、高效率存储等数据处理需求。

关键词:物联网;开放性平台;云计算

前 言

物联网技术的核心优势在于打破了原本存在于人与物、物与物之间的通信壁垒,建立起了万物互联的通信桥梁。在物联网建设过程中,最重要的零件是各种传感器。这些传感器犹如人的“五感”,能感知到周围环境的变化并对这种变化做出反应,将其转化为数字信号。物与物之间、人与物之间就是通过这种信号进行通信的。然而,通信的过程并不容易实现,且存在很多数据风险。由于传感器的种类繁多,且用于通信的协议复杂,因此目前仍然缺乏一种通用性高的开放式平台来实现不同传感器之间各类数据的接入、存储以及管理。也正是由于这个原因,目前物联网应用普遍存在开发周期长、设备接入兼容性差、数据故障严重等问题。而云计算具有非常优越的性能,其超大规模、虚拟程度高、安全性强等特点能够解决这些存在的问题。借助云计算开发出共享性好、安全性高的开放式平台具有一定的现实意义。

  1. 相关技术概述

1.1物联网技术

物联网的英文名字为INTERNET OF COMMODITIES,从其英文名字的角度来看,其重心在于实现物体之间的网络连接,使得“万物互联”成为现实。物联网技术是一系列技术组成的集合,如射频识别、红外感应、GPS等。在这些技术的支持下,遵守有关的通信协议原则,通过互联网实现物品之间的连接。在过去,互联网的服务对象只有人,而物联网则将其服务对象拓展到了物,这样一来人与人、人与物、物与物之间就形成了一个闭合的通信网络。而物联网的技术架构主要有一下三个层次。第一层是感知层,第二层是网络层,第三层是应用层。

(1)感知层。此层是三层网络体系当中最基本的一层,负责物体信息的采集、捕获、识别。在此过程中射频识别技术发挥了重要的作用,它可以读取传感器中的相关信息并进行识别。

(2)网络层。这一层的作用是:将信息从感知层传递到应用层,承担一个“上传下达”的功能性角色。

(3)应用层,应用层是整个三层架构的最上层。其设计目的在于实现数据的存储、分析并在此基础上进行决策,实现物联网的各种智能化应用。在此分析和决策的过程中,云计算则为核心技术。下图1为物联网层次结构图:

625e4b9ce7465_html_afe8cc84e7e68e8b.png

1 物联网层次结构图

1.2云计算技术

云计算是一种运算方式,其具备以下特点:(1)计算规模大;(2)数据分散;(3)多个计算同时进行。该种计算方式以互联网为基础,不仅拓展型强,而且虚拟程度高。原因在于云计算摆脱了传统计算中的物理节点限制。就其部署的模式看来,云计算的部署模型可以分为以下三类:

(1)私有云,私有云为个体用户或者企业用户提供独立的基础设施,用户可按照自身的需求来部署开发的小程序、网站等。目前私有云在数据安全、服务质量、系统管理等方面有明显的优势和广阔的发展前景。

(2)公有云,公有云的最大特征在于其共享性明显。用户通过现有的互联网系统访问所需的服务,第三方则负责构建和维护网络。

(3)混合云。公有云和私有云的混合形式即为混合云,这种部署方式既保留了私有云的安全性,同时也可以利用公有云的计算资源。

2.基于ASSM模型的平台架构方案

物联网平台的数据流自下而上分为数据采集(Acquisition)、数据存储(Storage)、数据服务(Services)、数据管理(Management)。这四个维度即为ASSM模型。为了确保数据流的完整性,该平台的设计也将从这四个方面来进行。

2.1基于数据流的ASSM模型

层次模型的优势在于,各个层次之间并不是相互孤立的,层与层之间能够进行交流,每一层在为上层提供服务的同时还能够为下一层提供必要的功能。在这种模式下,原本复杂的数据流被划分为四个相互关联的层次,复杂性显著降低。因此,层次模型中四个层次之间既有独立性,也有系统性。基于这种架构的开放式平台的设计,其重点也在于如何实现这两个性质。(1)独立性:对各个层次之间的主要功能进行划分,几个功能进行封装并定义合适的接口,要符合“低耦合、高内聚”的基本原则。(2)系统性问题。系统分层必然导致性能上的损耗,但是要尽可能降低这种损耗。在处理好层与层之间的关系之后,下一步的重点则在于如何正确把握每一层的主体功能。针对企业的应用,应该分层组织每一个子系统,并且在整个企业的系统范围之内实现应用的分层,并根据系统之中各个组件的特性,尤其是其具备的物理特性与逻辑特性,进行系统范围之内的水平分层。

2.2基于ASSM的云平台部署

在云平台部署阶段,技术方案的选择至关重要。其对于系统功能的实现质量有着决定性的作用,同时对系统的建设成本以及维护成本都会产生直接的影响。因此,在进行技术部署方案选择的过程中,除了要考虑技术的先进性、实用性之外,还应该结合企业的实际情况综合考虑成本、运维和管理难度。在该开放平台的设计过程中,笔者综合诸方面因素的考虑,最终选择了多租户技术。该技术是云计算平台中的一项重要技术,应用该技术能够实现不同用户之间共享同一堆栈的各种资源(软件资源和硬件资源),且彼此之间不产生干扰。

3.数据模型设计与实现

3.1数据采集系统

该系统是整个物联网开发平台中数据驱动架构的起点。也是整个数据流的起点,以及数据的来源。物联网传感器在采集数据的过程中,很容易受到环境的影响,而采集到很多“脏数据”。这些数据并不具有分析的价值,如果将其纳入到分析过程中,并以分析的结果作为决策的依据,那么将会对最终的结果产生极大的干扰。因此,在信息采集模块中,首先要对数据进行过滤和处理,并进行适当的数据格式转换。

(1)数据接入服务器:采集终端上的数据经过删选之后将所有的合法数据上传到消息中间件服务器。而数据的接入系统则使用Apache MINA网络框架开发。

(2)分布式消息总线:作为整个数据采集系统的中枢,其主要功能在于实现数据的异步处理。Apache ActiveMQ是以个功能完善、可靠程度较高的开源总线框架。本平台的数据采集系统采用该框架进行设计,能够确保接入到服务器中的每一条数据都能被处理服务器唯一“消费”,而其他数据则进入存储器,通过这种方式来实现数据的完整性读取。

3.2数据存储系统设计

上文已经提到,在数据收集环节,未来得及“消费”的数据被“丢入”存储器中。本平台的数据存储系统有两种存储模式,一是面向MySQL的结构化存储方式,二是面向NoSQL的非结构化存储。这两种存储方式各有优缺点,分别适用于不同的存储需求。具体来说:(1)结构化存储。结构化存储是一种强关系型数据存储方式,适用于对用户信息、设备信息和网站管理信息等的存储。这种存储方式能够有效降低数据分析系统的分析难度。(2)非结构化存储。这种存储方式的存储对象一般是由物联网传感器采集到的数据,即上一节中提到的未来得及“消费”的数据。这些数据之间的关系性并不强,具有独立性。在本设计中,笔者使用了MongoDB数据库,用于处理数据模型简单、系统灵活性强、数据量大且性能要求较高的物联网数据。

3.3数据服务系统设计

数据服务系统为企业信息系统中的指挥官,主要用于连接平台与上层业务。通过对数据层和功能层的抽象借助面向服务体系架构将不同的功能单元之间连接起来。为各个功能单元之间的联系和沟通设置接口。本文中使用了基于Mongo-Hadoop方案的云计算平台。

数据服务系统肩负着对数据库中存储的所有数据进行处理和分析,为上层业务所需要常用的数据进行功能封装。本文设计的架构是以MONGODB作为数据源与数据结果的存储,而使用HADOOP来进行具体的计算。

3.4数据管理系统设计

数据管理系统建立在现有的跨域、异构软硬件设施的基础上。通过搭建统一的资源管理系统,为企业提供面向应用的运维管理服务。能够实现大规模业务自动化部署以及全周期管理,有利于对资源的实时监控以及对故障的自行排查。在本设计中,数据管理系统结合了分布式工作流、资源调度机制等的优势,确保资源的延展性和容错性。采用先进的B/S架构来实现数据管理系统的架构。

不同类型的数据,其来源不同,需要的管理方式也有所区别。因此,首先需要对数据进行分类,为不同的类别设置不同的接口,进行不同的管理。数据接口按照如下方式进行分类:设备接口、传感器接口、数据接口,以及用户接口。

不同的接口类型有不同的功能、动作以及参数,以传感器接口为例,其具体参数如下表1所示:

1 传感器接口

序号

功能

动作

参数(部分)

1

传感器列表

GET

Key,did

2

查看

GET

Key,did,sid

3

删除

DELETE

Key,did,sid

4

增加

POST

Sname,sinfo,stype

5

修改

PUT

Stag,did,sname

本设计中的数据管理系统以JAVA语言作为基础的开发语言,采用了J2EE三次架构模式,将客户端产生的大量逻辑处理单元以及数据存储过程纳入到控制层来实现。大大减轻了数据库的数据访问频率,在提高数据存储效率以及稳定性的同时,优化客户端的响应速度。

结 语

随着时代的进步,人们心中所畅享的“万物互联”的美好愿景必将逐步变为现实。互联网体系的建立过程具备一定的系统性、长期性与复杂性。在此过程中,有很多难题尚需解决。其中,数据的获取、存储、分析、管理是整个数据流的几个基本功能单元。数据流作为物品之间通信的基本方式,有对于维持整个物联网的畅通性和稳定性有着重要的作用。在未来,云计算技术能够应用到许多日常场景,其中较为典型的场景是基于云计算技术的物联网开放式平台,而这一应用方向有待相关从业者进一步开发。

参考文献:

  1. 沈建华.基于物联网的车联网技术[A].中国通信学会2018年光缆电缆学术年会论文集[C].成都:中国通信学会通信线路委员会,2018,90-97.

  2. 续晓燕,丛雪.浅谈云计算与物联网的融合发展[J].电脑知识与技术,2019, 08 (24): 1009-3044.

  3. 徐琳莹.基于云计算的物联网运营管理平台研究[D].吉林:吉林大学,2018.