通用物联网数据采集与分析平台的研究与探讨
2022-05-06范东宣丁宝川柴家琦
范东宣 丁宝川 柴家琦
中国冶金地质总局青岛地质勘查院信息工程事业部 山东 潍坊 261021
引言
在物联网技术快速发展的背景下,其使用频率和范围呈明显上升趋势,作为一种信息技术,通过运用智能采集设备和通信系统等,能够实现对目标信息数据的快速采集、传输、分析、处理与存储等一系列行为,满足平台用户的使用需求。因此,为更好地挖掘数据价值,研究与探讨通用物联网数据采集与分析平台是必要的。
1 物联网相关概述
所谓物联网,主要是指将信息化技术、人工智能等现代化技术进行整合,利用信息传感设备在约定的基础上实现网络与任何物体的连接,进而通过信息传播媒介进行物体信息的交换和通信,满足智能化识别、信息采集、定位跟踪等功能使用需求[1]。
2 研究搭建通用物联网数据采集与分析平台的有效途径
在对通用物联网数据采集与分析平台进行搭建时,主要利用基于物联网技术的数据模型对感知设备采集到的信息数据进行表示,之后通过Web进行信息数据与服务的整合,将其处于Web信息空间,从而满足不同平台用户对数据与服务的访问使用需求。
2.1 平台架构设计
以物联网技术为基础的通用数据采集与分析平台集成了ECA规则模块,用户通过对规则进行预设,该平台能够以自动化的方式对上传至平台服务端的数据进行分析,判断是否存在问题并作出相应响应,以此实现对目标对象与数据的控制。为此,在对通用物联网数据采集与分析平台架构进行设计时,主要将其整个体系架构分为3部分,分别为通用物联网数据分析平台、物联网数据采集端以及各类物联网应用,即信息数据采集端、分析端与应用端。其中,信息数据采集端由多个不同类型的物联网感知设备组成,主要负责信息数据采集,来源则是感知设备,在采集好数据后将其打包,之后通过设备网络控制器将其上传至分析端,供相关人员使用或是由平台自动开展信息数据分析工作。当服务器接收到感知数据后,分析平台会将其存储至数据库中,采取的存储形式为物联网数据模型,便于数据的分析与处理。除此之外,在ECA规则的结合运用下,通用物联网数据采集与分析平台还可以进行自动化作业规则的预设,若是平台在运作过程中遇到触发规则的事件且该事件满足特定条件后,平台将会自动监测和预警特定事件[2]。
2.2 构建物联网数据模型
作为通用物联网数据采集与分析平台中的关键功能模块,物联网数据模型直接影响到平台接口、数据可视化、ECA规则以及信息数据存储等方面。在通用的物联网信息数据采集与分析平台上,数据模型主要将感知设备采集到的信息数据存储至数据库中,所依仗的方式就是物联网数据模型格式,即类的形式。在通用物联网数据模型UML类图中,感知设备所采集到的基本数据模型为Sensor Device(父类),在这个类中,最为重要的方法之一就是Add Sensor Node,在该方法的使用下,可以将不同Sensor Node(属性)添加至平台上,再结合Web界面可以很好地满足用户对属性、属性值的具体需求。比如,用户在使用通用物联网数据采集与分析平台时,可能会根据自身需求添加属性并选择属性值类型,使其成为新的子类。在通用物联网数据采集与分析平台具体应用过程中,子类都具有其对应的设备,其属性也一一对应着传感器节点,但是,传感器设备内部涵盖的传感器节点较多,类型也较多,所以子类包含多个属性。在这种物联网数据模型下,无论是Web Services、ECA规则还是数据可视化、数据存储设计,都无须对信息数据的格式以及感知设备数据的类型进行考虑,仅从功能使用目标的角度开展设计即可。
除此之外,该平台数据库在具有良好拓展性的同时,还应具有一定灵活性,这是因为物联网技术发展迅速,传感器种类规模较多。在该使用要求下,平台可以引入node(节点)概念,通过让节点与子类对象进行一一对应,可以将子类对象以node形式存储在数据库表中。对于该通用平台的数据模型而言,其在数据库中的存储形式由数据库表构成,其中包括3个基本的和多个拓展形式的,其中,Sensor Device基本属性为user、device_id/name、time,存储于基本数据库表中,这3个属性分别对应的是node_type表的author、node_type和tid、time字段。相较于该属性的存储与对应,子类增加的sensor_node存储复杂性更高。
在该数据模型构建下,node_type表的tid与node表的tid字段相对应,其含义是相关设备id,此外,fid字段与field_config表中的fid字段相对应,意味着传感器节点对应属性id,而field_name字段代表着节点对应属性名称。Field_config、field_name和field_data_type分别对应着传感器节点对应属性的名称以及属性值的数据类型,比如文本、整型、图片等。filed_table_name则是属性值所在的数据库表名称,一般情况下,记为“field_data_field_”+“field_name”字段对应的值。值得注意的是,拓展后的数据库表结构存储于field_config表,在实际拓展与存储后,该表中将会有一条记录,其中涵盖着拓展表的结构数据,名称为field_table_name字段值,字段包括3个,分别为fid、nid和filed_value。这3个字段之间具有一定关系,即:nid为node表外键,表field_config外键为fig,field_value意味着在相对父类添加的情况下,子类的属性值,而属性值的类型则是field_config表的dield_data_type字段的值。因此,在搭建通用物联网数据采集与分析平台时,为实现扩展表创建的自动化,可以直接通过编程在表field_config中添加记录[3]。
2.3 平台数据接入与访问设计
2.3.1 以XMPP为基础的信息数据传输。通用物联网数据采集与分析平台的构建要注重其通用性的实现,因此,该平台应支持XMPP通信,那么在设计数据的接入与访问环节时,应以XMPP为基础进行设计。为细化设计流程,以家庭能源管理下的通用物联网数据采集与分析平台使用为例,若是所应用的是插座客户端,那么可以将其替换为智能插座,从而对电流、电压等家庭用电数据进行检测与采集,并将采集好的数据通过XMPP服务平台发送给客户端,满足人们的家庭用电信息获取需求。在实际设计过程中,应对插座客户端、服务平台、插座客户端、服务平台、插座客户端、服务平台的流程进行设计,从而保证其作用的顺利实现。
2.3.2 以Web Services为基础的信息数据传输。通常状况下,无论哪种物联网感知设备在进行信息数据的传输时,都需要借助平台接口,在健全的通用物联网数据采集与分析平台中,应对Web Services接口所支持的格式与数据类型进行规定,保证数据接收端口的通用性。在Web Services接口接收到信息数据后,将会自动化处理数据,充分发挥数据处理功能模块的作用,最后将处理结果反馈给客户端,若是在信息数据处理过程中发生错误,将会直接给出错误提示信息。除此之外,用户通过客户端可以直接通过Web Services端口查看所需阶段或时间段的历史数据,而且,该平台可以通过可视化的方式将数据展示给用户,让用户以明确、准确以及直观的方式获得节点状态,从而更好地对日后数据变化进行预测,保证后续措施采取的科学有效性。在实现该接口的数据接入与访问功能后,各类信息数据主要通过node.create的方式接入实现,而数据访问则依托于node.get实现,这两个接口函数分别是一个对象和一个int型的变量nid,前者是通用物联网数据模型的实例,后者则是变量nid,意味着node的id。比如,某客户在使用通用物联网数据采集与分析平台进行数据采集后,那么平台将会调用node.create将数据上传,并为其分配nid,之后进行所属用户的判断,明确后将user和nid属性添加至对象参数中。然后,调用另一个函数进行node保存,以此实现数据接入。与此同时,通用物联网数据采集与分析平台的客户端也会调用node.get对某项或某条数据进行采集,参数为数据nid,之后平台将数据发送至客户端,主要以对象的形式进行,从而完成数据访问。
为进一步增强通用物联网数据采集与分析平台的通用性,该平台还支持多种数据传输格式,比如JSON和XML,不同格式下的信息数据具有不同表达格式,相较于JSON,XML格式相对烦琐,JSON整体灵活性更高,便于用户对其进行阅读与编写以及客户端的解析与生成,相较于XML,JSON下的数据访问流程更为简单。因此,在搭建通用物联网数据采集与分析平台时,数据加入与访问设计尽量采用JSON格式[4]。
2.3.3 以RSS为基础的数据访问。所谓RSS,主要是指简易信息聚合,即Really Simple Syndication,属于一种消息来源格式规范。在该格式规范下,无论是信息数据的获取还是订阅,均由聚合器实现。通过在平台中使用RSS,线上用户可以在不打开网站内容页面的情况下,阅读支持RSS输出的网站内容。其工作机制为:访问数据库提取频道列表-RSS文件/RSS页面-RSS阅读器-更新频道列表/显示频道列表-页面-页面链接提供RSS订阅功能)-页面获取频道信息-访问数据库提取频道列表-数据库。其中,RSS订阅功能的实现主要依托于RSS链接的添加,RSS链接传递网站内容信息,而该链接URL具有两种指向,分别是空内容页面和静态xml文件。空内容页面主要依托于统一的后台处理,RSS频道列表的生成以频道信息访问数据库为基础,一般情况下,访问频率没有静态xml文件高;而静态xml文件则是以自动化的方式由平台服务器端程序生成,且跟随服务器和数据库内容的增加自动更新,在对其进行访问获取时无须访问数据库,所以整体访问效率更高。因此,在通用物联网数据采集与分析平台的构建中,主要采用第二种指向,一方面提高数据访问效率,另一方面增强平台自动化水平。
3 结束语
综上所述,通用物联网数据采集与分析平台对数据价值挖掘具有重要意义。因此,组织内部都应认识到物联网技术的重要性,以此为基础从平台架构、数据模型构建、数据接入与访问等方面设计平台,增强其通用性,从而充分发挥物联网技术作用。