首页 / 专利库 / 电脑零配件 / 计算机系统 / 硬件 / 中央处理器 / 在物联网平台中的数据处理方法、装置及物联网平台

物联网平台中的数据处理方法、装置及物联网平台

阅读:830发布:2020-05-11

专利汇可以提供物联网平台中的数据处理方法、装置及物联网平台专利检索,专利查询,专利分析的服务。并且本 申请 实施例 公开了一种在 物联网 平台中的 数据处理 方法、装置及物联网平台,属于物联网领域。该方法包括:接收目标物联网设备发送的原始设备数据,原始设备数据采用第一数据格式;获取目标物联网设备对应的目标脚本,通过目标脚本对原始设备数据进行解析,生成目标设备数据,目标设备数据采用第二数据格式,第二数据格式为预先定义的统一数据格式;对目标设备数据进行处理。无需物联网设备对上传的设备数据进行处理,可以减少物联网设备端的逻辑运算,且可以保证物联网平台对统一数据格式的设备数据进行后续处理,避免处理不同数据格式的设备数据,减少物联网平台的逻辑运算。,下面是物联网平台中的数据处理方法、装置及物联网平台专利的具体信息内容。

1.一种在物联网平台中的数据处理方法,其特征在于,所述方法用于物联网平台,所述方法包括:
接收目标物联网设备发送的原始设备数据,所述原始设备数据采用第一数据格式,所述第一数据格式与所述目标物联网设备使用的数据传输协议有关;
获取所述目标物联网设备对应的目标脚本,所述目标脚本用于对所述第一数据格式的数据进行数据格式转换;
通过所述目标脚本对所述原始设备数据进行解析,生成目标设备数据,所述目标设备数据采用第二数据格式,所述第二数据格式为预先定义的统一数据格式;
对所述目标设备数据进行处理。
2.根据权利要求1所述的方法,其特征在于,所述通过所述目标脚本对所述原始设备数据进行解析,生成目标设备数据,包括:
根据所述目标脚本的脚本语言确定所述目标物联网设备对应的目标脚本引擎,所述物联网平台中设置有至少一种脚本引擎,且不同脚本引擎对应不同脚本语言;
通过所述目标脚本引擎执行所述目标脚本,对所述原始设备数据进行解析,生成所述目标设备数据。
3.根据权利要求2所述的方法,其特征在于,所述目标脚本包括第一接口,所述第一接口指示将所述第一数据格式转化为所述第二数据格式;
所述通过所述目标脚本引擎执行所述目标脚本,对所述原始设备数据进行解析,生成所述目标设备数据,包括:
通过所述目标脚本引擎调用所述目标脚本的所述第一接口,对所述原始设备数据进行解析,生成所述目标设备数据。
4.根据权利要求2所述的方法,其特征在于,所述目标脚本还包括第二接口,所述第二接口指示将所述第二数据格式转化为所述第一数据格式;
所述方法还包括:
生成下发数据,所述下发数据采用所述第二数据格式,所述下发数据至少用于指示所述原始设备数据是否上传成功、所述原始设备数据的处理结果以及所述目标物联网设备执行预设操作中的至少一种;
通过所述目标脚本引擎调用所述目标脚本的所述第二接口,对所述下发数据进行解析,生成目标下发数据,所述目标下发数据采用所述第一数据格式;
向所述目标物联网设备发送所述目标下发数据。
5.根据权利要求2所述的方法,其特征在于,所述通过所述目标脚本引擎执行所述目标脚本,对所述原始设备数据进行解析,生成所述目标设备数据,包括:
创建目标线程,所述目标线程设置有线程限制,所述预设脚本集合中包含所述物联网平台开发者设置的脚本,所述线程限制包括中央处理器CPU运行时间限制、内存占用量限制、脚本语言方法使用限制和脚本引擎框架使用限制中的至少一种;
在所述目标线程中,通过所述目标脚本引擎执行所述目标脚本,对所述原始设备数据进行解析,生成所述目标设备数据。
6.根据权利要求1至5任一所述的方法,其特征在于,所述接收目标物联网设备发送的原始设备数据之前,所述方法还包括:
获取测试脚本和测试数据;
通过所述测试脚本对所述测试数据进行解析,生成测试结果;
若所述测试结果指示所述测试脚本正确,且接收到脚本上传指令,则将所述测试脚本作为所述目标脚本存储至脚本数据库中。
7.根据权利要求6所述的方法,其特征在于,所述通过所述测试脚本对所述测试数据进行解析,生成测试结果,包括:
若所述测试数据采用所述第一数据格式,则调用所述测试脚本的第一接口对所述测试数据进行解析,得到第一测试结果,所述第一接口指示将所述第一数据格式转化为所述第二数据格式;
或;
若所述测试数据采用所述第二数据格式,则调用所述测试脚本的第二接口对所述测试数据进行解析,得到第二测试结果,所述第二接口指示将所述第二数据格式转化为所述第一数据格式。
8.根据权利要求1至5任一所述的方法,其特征在于,所述获取所述目标物联网设备对应的目标脚本,包括:
根据所述目标物联网设备的设备标识,确定所述目标物联网设备所属的目标设备组,其中,同一设备组中的物联网设备采用使用相同的数据传输协议;
将脚本数据库中所述目标设备组对应的脚本确定为所述目标脚本。
9.一种在物联网平台中的数据处理装置,其特征在于,所述装置用于物联网平台,所述装置包括:
接收模,用于接收目标物联网设备发送的原始设备数据,所述原始设备数据采用第一数据格式,所述第一数据格式与所述目标物联网设备使用的数据传输协议有关;
第一获取模块,用于获取所述目标物联网设备对应的目标脚本,所述目标脚本用于对所述第一数据格式的数据进行数据格式转换;
第一解析模块,用于通过所述目标脚本对所述原始设备数据进行解析,生成目标设备数据,所述目标设备数据采用第二数据格式,所述第二数据格式为预先定义的统一数据格式;
处理模块,用于对所述目标设备数据进行处理。
10.一种物联网平台,其特征在于,所述物联网平台包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至8任一所述的在物联网平台中的数据处理方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1至8任一所述的在物联网平台中的数据处理方法。

说明书全文

物联网平台中的数据处理方法、装置及物联网平台

技术领域

[0001] 本申请实施例涉及物联网领域,特别涉及一种在物联网平台中的数据处理方法、装置及物联网平台。

背景技术

[0002] 随着物联网技术的迅速发展,越来越多不同类型的物联网设备接入物联网平台,由于不同类型的物联网设备所使用的数据传输协议不同,导致物联网设备传输的数据格式也存在差异。
[0003] 相关技术中,为支持使用不同数据传输协议的物联网设备的接入,通常有两种方式可以实现,一种是物联网设备端归一化,指物联网设备端将上报的数据处理成物联网平台要求的统一格式的数据;一种是物联网平台归一化,指设备端上传原始数据,即物联网平台接收到不同格式的数据,但是物联网平台具有处理不同格式数据的能
[0004] 然而采用相关技术中的数据处理方法,存在物联网设备端可能不具有设备数据的处理能力,或物联网平台需要处理不同格式的数据,导致物联网平台的逻辑运算复杂。发明内容
[0005] 本申请实施例提供了一种在物联网平台中的数据处理方法、装置及物联网平台。所述技术方案如下:
[0006] 一方面,本申请实施例提供了一种在物联网平台中的数据处理方法,所述方法包括:
[0007] 接收目标物联网设备发送的原始设备数据,所述原始设备数据采用第一数据格式,所述第一数据格式与所述目标物联网设备使用的数据传输协议有关;
[0008] 获取所述目标物联网设备对应的目标脚本,所述目标脚本用于对所述第一数据格式的数据进行数据格式转换;
[0009] 通过所述目标脚本对所述原始设备数据进行解析,生成目标设备数据,所述目标设备数据采用第二数据格式,所述第二数据格式为预先定义的统一数据格式;
[0010] 对所述目标设备数据进行处理。
[0011] 另一方面,本申请实施例提供了一种在物联网平台中的数据处理装置,所述装置包括:
[0012] 接收模,用于接收目标物联网设备发送的原始设备数据,所述原始设备数据采用第一数据格式,所述第一数据格式与所述目标物联网设备使用的数据传输协议有关;
[0013] 第一获取模块,用于获取所述目标物联网设备对应的目标脚本,所述目标脚本用于对所述第一数据格式的数据进行数据格式转换;
[0014] 第一解析模块,用于通过所述目标脚本对所述原始设备数据进行解析,生成目标设备数据,所述目标设备数据采用第二数据格式,所述第二数据格式为预先定义的统一数据格式;
[0015] 处理模块,用于对所述目标设备数据进行处理。
[0016] 另一方面,本申请实施例提供了一种物联网平台,所述物联网平台包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如上述方面所述的在物联网平台中的数据处理方法。
[0017] 另一方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述方面所述的在物联网平台中的数据处理方法。
[0018] 本申请实施例提供的技术方案带来的有益效果至少包括:
[0019] 当物联网平台接收到目标物联网设备发送的原始设备数据之后,通过获取与该目标物联网设备对应的目标脚本,对该原始设备数据进行解析,生成采用统一数据格式的目标设备数据,再对该目标设备数据进行处理。无需物联网设备端进行数据格式转换,可以减少物联网设备端的逻辑运算,在物联网平台进行数据处理之前,首先通过目标脚本将原始设备数据的数据格式转换为统一格式数据,可以避免物联网平台处理不同数据格式的设备数据,减少物联网平台端的逻辑运算。附图说明
[0020] 图1示出了本申请一个示例性实施例提供的实施环境的示意图;
[0021] 图2示出了本申请一个示例性实施例提供的在物联网平台中的数据处理方法的流程图
[0022] 图3示出了本申请另一个示例性实施例提供的在物联网平台中的数据处理方法的流程图;
[0023] 图4示出了本申请一个示例性实施例提供的脚本测试界面的示意图;
[0024] 图5示出了本申请另一个示例性实施例提供的在物联网平台中的数据处理方法的流程图;
[0025] 图6示出了本申请另一个示例性实施例提供的在物联网平台中的数据处理方法的流程图;
[0026] 图7示出了本申请另一个示例性实施例提供的在物联网平台中的数据处理方法的流程图;
[0027] 图8示出了本申请一个示例性实施例提供的在物联网平台中的数据处理装置的结构框图
[0028] 图9示出了本申请一个示例性实施例提供的物联网平台的结构示意图。

具体实施方式

[0029] 为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
[0030] 在本文中提及的“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0031] 相关技术中提供了两种在物联网平台中的数据处理方法,一种是,物联网设备端将采集到的原始设备数据转换为统一格式的设备数据,再上传至物联网平台,以便物联网平台可以对统一格式的设备数据进行处理分析;另一种是,物联网设备将采集到的原始设备数据直接上传至物联网平台,由于不同的物联网设备使用的数据传输协议的不同,使得物联网平台接收到的原始设备数据的数据格式存在差异,物联网平台需要针对不同数据格式的设备数据进行处理分析。
[0032] 采用上述技术中的方法,一方面,若由物联网设备将采集到的原始设备数据转换为统一格式的设备数据,供物联网平台进行处理分析,需要物联网设备具有较高的数据处理能力,而有的物联网设备并不具有数据处理能力,比如,传感器;另一方面,若不需要对原始的设备数据进行格式转换,由物联网平台直接对不同格式的设备数据进行处理分析,物联网平台就需要针对每一种数据格式的设备数据,均提供相应的逻辑运算进行相关处理,当物联网设备使用的数据传输协议种类较多时,会增加物联网平台逻辑运算的复杂度,从而降低物联网平台的数据处理效率。
[0033] 为了解决上述问题,本申请实施例提供了一种在物联网平台中的数据处理方法。请参考图1,其示出了本申请一个示例性实施例提供的实施环境的示意图。该实施环境中包括物联网设备101和物联网平台102。
[0034] 物联网设备101是物联网系统中的信息采集设备,主要负责采集数据,其通常设置有传感器(如光伏传感器、速度传感器、压力传感器等),传感器可以将设备采集的信息按一定规律变换为电信号或其他所需形式的信息输出,除了采集和传输数据之外,物联网设备还需具备数据处理和存储功能,通常应用于工业、电网、智能家居、智能交通等领域。本申请实施例中,物联网设备101可以将采集到的原始设备数据发送给物联网平台102,可选的,物联网设备101也可以接受物联网平台下发的指令。
[0035] 物联网设备101可以通过网关设备(图中未示出)与物联网平台102之间进行通信。
[0036] 物联网平台102是物联网系统中的端设备,用于接收来自物联网设备101发送的设备数据,并对设备数据进行存储、处理、分析,从而进行业务发掘,提供业务查询功能,实现物联网应用业务逻辑,其可以是一台服务器,若干台服务器构成的服务器集群或云计算中心。本申请实施例中,按照功能可以将物理网平台102划分为连接中心103、脚本引擎104以及处理中心105;其中,连接中心103用于物联网设备101与物联网平台102之间建立连接;脚本引擎104用于执行对应的脚本,对物联网设备101上传的原始设备数据进行解析,实现数据格式的转换,也可以对处理中心下发的数据进行数据格式转换;处理中心105可以处理分析统一数据格式的设备数据,该统一数据格式的设备数据为经过脚本解析之后得到的。
[0037] 在一种可能的实施方式中,当物联网设备101上线,并通过连接中心103与物联网平台102建立连接之后,向物联网平台102发送采集到的原始设备数据,当物联网平台102接收到该原始设备数据之后,首先在脚本引擎104中根据目标脚本将该原始设备数据进行解析,生成采用统一数据格式的目标设备数据,再将该统一数据格式的目标设备数据发送给处理中心105,进行分析处理。
[0038] 采用本申请实施例的提供的在物联网平台中的数据处理方法,无需物联网设备端进行数据格式转换,减少物联网设备端的逻辑运算,方便更多不具有数据处理能力的物联网设备接入物联网平台;在物联网平台的处理中心进行数据处理分析之前,首先通过脚本引擎执行对应的脚本,将原始设备数据的数据格式转换为统一格式数据,可以避免物联网平台端处理不同格式的数据,减少物联网平台端的逻辑运算,从而提高物联网平台的数据处理效率。
[0039] 请参考图2,其示出了本申请一个示例性实施例提供的在物联网平台中的数据处理方法的流程图。本实施例以该方法用于图1所示的物联网平台为例进行说明,该方法包括如下步骤。
[0040] 步骤201,接收目标物联网设备发送的原始设备数据,原始设备数据采用第一数据格式,第一数据格式与目标物联网设备使用的数据传输协议有关。
[0041] 由于目标物联网设备所采用的数据传输协议不同,会导致目标物联网设备发送的原始设备数据采用的数据格式不同,比如,若目标物联网设备使用的数据传输协议为消息队列遥测传输(Message Queuing Telemetry Transport,MQTT)协议,则该目标物联网设备发送的原始设备数据可以为“0x0100000014010004000025f502000a6162636465666768696a0300083ff23d70a3d70a3d0400140000000100000003000000050000000700000009050005000001a703”。
[0042] 在一种可能的实施方式中,目标物联网设备使用MQTT协议上传原始设备数据至物联网平台,即物联网平台接收到该原始设备数据,该原始设备数据采用第一数据格式,即为十六进制数据。
[0043] 可选的,目标物联网设备也可以采用其他的数据传输协议,比如,受限制应用协议(Constrained Application Protocol,CoAP)等,本实施例对目标物联网设备采用的数据传输协议不构成限定。
[0044] 步骤202,获取目标物联网设备对应的目标脚本,目标脚本用于对第一数据格式的数据进行数据格式转换。
[0045] 其中,目标脚本是目标物联网设备的设备开发者预先存储在物联网平台中的,且与目标物联网设备关联。比如,物联网平台中包含存储目标脚本的脚本数据库,该脚本数据库中存储有至少一种脚本。
[0046] 在一种可能的实施方式中,当物联网平台接收目标物联网设备发送的设备数据之后,通过该目标物联网设备的设备标识,从脚本数据库中查找到与其关联的目标脚本。
[0047] 步骤203,通过目标脚本对原始设备数据进行解析,生成目标设备数据,目标设备数据采用第二数据格式,第二数据格式为预先定义的统一数据格式。
[0048] 其中,第二数据格式为物联网平台厂商预先定义的,即在该物联网平台的处理中心进行处理分析的数据均采用第二数据格式。比如,第二数据格式可以为JS对象简谱(JavaScript Object Notation,JSON)格式,也可以是可扩展标记语言(Extensible Markup Language,XML)格式,本实施例对第二数据格式的类型不构成限定。
[0049] 在一种可能的实施方式中,物联网平台在接收到目标物联网设备发送的原始设备数据之后,调用与其关联的目标脚本,通过运行该目标脚本,将原始设备数据转换为采用第二数据格式的目标设备数据。
[0050] 示意性的,将步骤201中的原始设备数据转换为JSON格式的目标设备数据可以是为:“
[0051]
[0052]
[0053] 可选的,目标脚本可以在对应的脚本引擎中运行。
[0054] 步骤204,对目标设备数据进行处理。
[0055] 在一种可能的实施方式中,通过脚本引擎运行目标脚本,解析原始设备数据,生成目标设备数据之后,会将该采用第二数据格式的目标设备数据发送给目标物联网平台中的处理中心,由该处理中心对该目标设备数据进行处理。其中,处理的方式可以是将该目标设备数据存储在数据库中,以便后续查询;或分析该目标设备数据,发掘出一定的业务规律等,本实施例对目标设备数据的处理方式不构成限定。
[0056] 综上所述,本申请实施例中,当物联网平台接收到目标物联网设备发送的原始设备数据之后,通过获取与该目标物联网设备对应的目标脚本,对该原始设备数据进行解析,生成采用统一数据格式的目标设备数据,再由处理中心对该目标设备数据进行处理。无需物联网设备进行数据格式转换,可以减少物联网设备端的逻辑运算,以便更多不具有数据处理能力的物联网设备接入物联网平台;在物联网平台的处理中心进行数据处理分析之前,首先通过目标脚本将原始设备数据的数据格式转换为统一格式数据,可以避免物联网平台处理不同格式的设备数据,减少物联网平台端的逻辑运算,从而提高物联网平台的数据处理效率。
[0057] 由于目标脚本编写需要一定的编写过程,且设备开发者在将目标脚本上传至物联网平台之前,需要确定该目标脚本能否实现数据格式转换功能,即运行该目标脚本是否可以将第一数据格式转换为第二数据格式,或将第二数据格式转换为第一数据格式等,因此,在一种可能的实施方式中,物联网平台为设备开发者提供编写及测试脚本的模拟环境。
[0058] 请参考图3,其示出了本申请另一个示例性实施例提供的在物联网平台中的数据处理方法的流程图。本实施例以该方法用于图1所示的物联网平台为例进行说明,该方法包括如下步骤。
[0059] 步骤301,获取测试脚本和测试数据。
[0060] 在一种可能的实施方式中,当目标物联网设备需要接入物联网平台时,首先会在物联网平台的前端界面进行设备注册、脚本编写及测试等。
[0061] 由于物联网平台进行数据处理时使用的是统一的数据格式,因此物联网平台厂商会定义一个脚本编写规范,由物联网设备的设备开发者根据该脚本编写规范,编写实现数据格式转换的详细逻辑代码,并将编写好的目标脚本上传至物联网平台,由统一的脚本数据库进行存储和管理,以便后续目标物联网设备上传原始设备数据时可以获取该目标脚本。
[0062] 示意性的,若物联网平台定义的统一数据格式为JSON格式,则脚本编写规范可以为:
[0063]
[0064]
[0065] 在一种可能的实施方式中,在物联网平台的前端界面中,提供有数据解析界面,以便目标物联网设备的设备开发者在该数据解析界面中,编写和测试脚本。
[0066] 示意性的,如图4所示,目标物联网设备的设备开发者可以在数据解析界面401中编写和测试脚本,其中,设备开发者可以在编辑脚本窗口402中输入测试脚本,在模拟输入窗口403中输入测试数据,相应的,物联网平台获取到该测试脚本和测试数据。
[0067] 步骤302,通过测试脚本对测试数据进行解析,生成测试结果。
[0068] 在一种可能的实施方式中,当设备开发者在输入测试脚本和测试数据之后,选择运行该测试脚本,则物联网平台会根据该测试脚本对测试数据进行解析,生成测试结果,并反馈给设备开发者,以便设备开发者可以确定该测试脚本是否可以实现数据格式转换。
[0069] 示意性的,如图4所示,当设备开发者输入测试脚本和测试数据之后,可以点击运行控件407,物联网平台即会根据该测试脚本解析该测试数据,并生成测试结果,显示在运行结果窗口404中。
[0070] 可选的,设备开发者也可以点击保存草稿控件406,可以暂时保存测试脚本,以便后续设备开发者可以继续在上一次编写的基础上,继续编写该测试脚本。
[0071] 由于物联网设备与物联网平台之间进行通信分为两个方向,即物联网设备上发设备数据和物联网平台下发数据,因此,测试脚本也应该包含两个方向(两个接口),第一接口是将第一数据格式转换为第二数据格式,第二接口是将第二数据格式转换为第一数据格式。
[0072] 在一种可能的实施方式中,如图5所示,步骤302可以包括:
[0073] 步骤302A,若测试数据采用第一数据格式,则调用测试脚本的第一接口对测试数据进行解析,得到第一测试结果,第一接口指示将第一数据格式转化为第二数据格式。
[0074] 在一种可能的实施方式中,设备开发者选择测试类型(模拟类型)为设备上发数据,即选择物联网设备向物联网平台发送原始设备数据,此时,设备开发者输入的测试数据为第一数据格式,则通过调用测试脚本的第一接口对测试数据进行解析,得到第一测试结果。
[0075] 示意性的,如图4所示,当设备开发者下拉模拟类型控件405,选择设备上发数据,并在模拟输入窗口403中输入采用第一数据格式的测试数据,再点击运行控件407之后,物联网平台即会调用测试脚本的第一接口,对该测试数据进行解析,若该测试脚本正确,则会在运行结果窗口404中显示采用第二数据格式的测试数据。
[0076] 步骤302B,若测试数据采用第二数据格式,则调用测试脚本的第二接口对测试数据进行解析,得到第二测试结果,第二接口指示将第二数据格式转化为第一数据格式。
[0077] 在一种可能的实施方式中,设备开发者选择测试类型(模拟类型)为物联网平台下发数据,即选择物联网平台向物联网设备发送数据,此时,设备开发者输入的测试数据为第二数据格式,则通过调用测试脚本的第二接口对测试数据进行解析,得到第二测试结果。
[0078] 示意性的,如图4所示,当设备开发者下拉模拟类型控件405,选择物联网平台下发数据,并在模拟输入窗口403中输入采用第二数据格式的测试数据,再点击运行控件407之后,物联网平台即会调用测试脚本的第二接口,对该测试数据进行解析,若该测试脚本正确,则会在运行结果窗口404中显示采用第一数据格式的测试数据。
[0079] 步骤303,若测试结果指示测试脚本正确,且接收到脚本上传指令,则将测试脚本作为目标脚本存储至脚本数据库中。
[0080] 在一种可能的实施方式中,当测试结果指示该测试脚本正确,设备开发者可以提交该测试脚本,即物联网平台接收到脚本上传指令,可以将该测试脚本作为目标脚本存储在脚本数据库中。
[0081] 示意性的,如图4所示,当设备开发者确定该测试脚本正确,则可以点击提交控件408,相应的,物联网平台接收到脚本上传指令,可以将该测试脚本作为目标脚本存储在脚本数据库中。
[0082] 由于将测试脚本作为目标脚本存储至脚本数据库中,是为了后续目标物联网设备上传原始设备数据时,物联网平台可以调用该目标脚本解析原始设备数据,因此,应该将该测试脚本与对应的目标物联网设备关联存储。
[0083] 可选的,当测试结果指示测试脚本出现错误,则会在运行结果窗口显示错误信息,比如,参数错误(param error)、脚本服务内部错误(script service unavailable,internal error)、脚本执行失败(script exe failed)、脚本执行超时(script exe time)等,以便设备开发者可以对应修改测试脚本。
[0084] 步骤304,接收目标物联网设备发送的原始设备数据,原始设备数据采用第一数据格式,第一数据格式与目标物联网设备使用的数据传输协议有关。
[0085] 本步骤的实施方式可以参考步骤201,本实施例在此不做赘述。
[0086] 步骤305,根据目标物联网设备的设备标识,确定目标物联网设备所属的目标设备组,其中,同一设备组中的物联网设备采用使用相同的数据传输协议。
[0087] 对于使用同一数据传输协议的物联网设备,都可以根据相同的目标脚本对上传的原始设备数据进行解析,为了避免重复的目标脚本的出现,因此,设备开发者可以建立目标设备组来管理物联网设备。
[0088] 在一种可能的实施方式中,设备开发者可以在物联网平台的前端界面中注册目标设备组,该目标设备组下可以包含多个物联网设备,且该目标设备组下的物联网设备均使用相同的数据传输协议,对应的,同一目标设备组使用的解析脚本(目标脚本)相同。
[0089] 可选的,设备开发者在注册的同时可以将目标设备组与目标脚本关联,关联的方式可以采用将目标设备组的ID与目标脚本关联。
[0090] 在一种可能的实施方式中,当物联网平台接收到目标物联网设备发送的原始设备数据时,可以获取该目标物联网设备的设备ID,并根据该设备ID确定出该目标物联网设备所属的目标设备组,即获取到目标设备组的设备组ID。
[0091] 步骤306,将脚本数据库中目标设备组对应的脚本确定为目标脚本。
[0092] 在一种可能的实施方式中,当物联网平台获取到目标设备组的设备组ID之后,可以从脚本数据库中查找与其关联的目标脚本。
[0093] 步骤307,根据目标脚本的脚本语言确定目标物联网设备对应的目标脚本引擎,物联网平台中设置有至少一种脚本引擎,且不同脚本引擎对应不同脚本语言。
[0094] 由于脚本需要经过脚本引擎翻译之后,才可以被执行以实现相应的功能,且一种脚本引擎只能解析使用同一脚本语言编写的脚本,因此,在一种可能的实施方式中,物联网平台厂商会在物联网平台中设置至少一个脚本引擎,以便运行对应的脚本。
[0095] 由于不同的设备开发者使用的编写目标脚本的脚本语言不同,为了更准确地确定出目标脚本引擎来运行该目标脚本,因此,可选的,设备开发者在注册目标设备组时,也会将目标设备组与目标脚本引擎关联,以便该目标设备组所对应的上传数据都可以在该目标脚本引擎中进行解析。
[0096] 在一种可能的实施方式中,当物联网平台获取到目标设备组的设备组ID时,根据该设备组ID确定出对应的目标脚本引擎。
[0097] 示意性的,如图6所示,若物联网设备601采用MQTT协议,设备开发者采用爪哇脚本(JavaScript)语言来编写脚本,当物联网设备601与连接中心603建立连接之后,发送原始设备数据至物联网平台602,则确定出该物联网设备601所属的目标设备组对应的目标脚本为JavaScript脚本605,且对应的目标脚本引擎为JavaScript脚本引擎604。
[0098] 步骤308,通过目标脚本引擎执行目标脚本,对原始设备数据进行解析,生成目标设备数据,目标设备数据采用第二数据格式,第二数据格式为预先定义的统一数据格式。
[0099] 在一种可能的实施方式中,当确定出目标脚本引擎和目标脚本之后,目标脚本引擎可以将该目标脚本翻译成相应的可执行程序指令,并根据该可执行程序指令对原始设备数据进行解析,将该原始设备数据转化为采用第二数据格式的目标设备数据。
[0100] 示意性的,如图6所示,JavaScript目标脚本引擎604执行JavaScript脚本605,解析原始设备数据,将原始设备数据的数据格式转化为统一数据格式,即第二数据格式,并发送给处理中心606。
[0101] 示意性的,如图5所示,步骤308可以包括步骤308A。
[0102] 308A,通过目标脚本引擎调用目标脚本的第一接口,对原始设备数据进行解析,生成目标设备数据,第一接口指示将第一数据格式转化为第二数据格式。
[0103] 由于目标脚本包含两个方向,而目标物联网设备发送原始设备数据至物联网平台,其中,原始设备数据采用第一数据格式,因此,对应的是将第一数据格式转化为第二数据格式,即目标脚本的第一接口。
[0104] 在一种可能的实施方式中,当目标脚本引擎在执行目标脚本时,调用目标脚本的第一接口,对原始设备数据进行解析,生成采用第二数据格式的目标设备数据。
[0105] 步骤309,对目标设备数据进行处理。
[0106] 本步骤的实施方式可以参考步骤204,本实施例在此不做赘述。
[0107] 本申请实施例中,通过物联网平台提供的前端界面,目标物联网设备的设备开发者可以预先在该前端界面中进行脚本编写和测试,以便确定该测试脚本是否可以实现对应的数据格式转换的功能,并在测试结果指示该测试脚本正确时,可以提交并保存至脚本数据库中,以便后续目标物联网设备上传原始设备数据,或物联网平台向目标物联网设备发送数据时调用;此外,目标脚本根据数据传输的方向分为第一接口和第二接口,以便目标物联网设备上发原始设备数据时调用第一接口,实现由第一数据格式转换为第二数据格式。
[0108] 在一种可能的应用场景中,当物联网平台向物联网设备下发数据时,由于物联网平台生成的下发数据均采用第二数据格式,而物联网设备并不能直接利用该下发数据,因此,在一种可能的实施方式中,可以通过调用目标脚本的第二接口,将第二数据格式转化为第一数据格式,再发送给物联网设备。
[0109] 示意性的,物联网平台向物联网设备下发数据的过程可以包括以下步骤。
[0110] 一、生成下发数据,下发数据采用第二数据格式,下发数据至少用于指示原始设备数据是否上传成功、原始设备数据的处理结果以及目标物联网设备执行预设操作中的至少一种。
[0111] 在一种可能的实施方式中,由于目标物联网设备需要在确定上一原始设备数据上传成功之后,才会继续向物联网平台发送原始设备数据,因此,物联网平台在对接收到的目标设备数据进行处理之后,需要向目标物联网设备发送下发数据,该下发数据用于指示上一原始设备数据上传成功,以便目标物联网设备可以继续向该物联网平台上传原始设备数据。
[0112] 可选的,该下发数据也可以指示物联网平台对原始设备数据的处理结果,即物联网平台将接收到的原始设备数据转化为目标设备数据,并对该目标设备数据进行处理之后,可以将处理结果反馈给目标物联网设备,以便目标物联网设备获得该处理结果。示意性的,物联网设备向物联网平台发送一个请求数据,用于获取信息,比如,物联网平台的时间,当物联网平台对该请求数据处理之后,会生成下发数据,该下发数据中包含物联网平台的时间,即指示对该请求数据的处理结果。
[0113] 可选的,当物联网平台需要控制物联网设备执行某些操作时,需要生成相应的下发数据(即指令),该指令可以用来控制目标物联网设备执行预设操作。比如,该预设操作可以是向物联网平台上发数据,也可以是采集相关的数据等。
[0114] 二、通过目标脚本引擎调用目标脚本的第二接口,对下发数据进行解析,生成目标下发数据,目标下发数据采用第一数据格式,第二接口指示将第二数据格式转化为第一数据格式。
[0115] 由于下发数据为物联网平台向目标物联网设备发送的数据,且为第二数据格式,而目标物联网设备并不能直接识别采用该第二数据格式的下发数据,因此需要调用目标脚本对该下发数据进行解析,生成采用第一数据格式的目标下发数据。
[0116] 在一种可能的实施方式中,当物联网平台向目标物联网设备下发数据时,根据该目标物联网设备的设备ID,确定出该目标物联网设备所属的目标设备组,从而确定出目标脚本引擎和目标脚本,并通过目标脚本引擎调用目标脚本的第二接口,对该下发数据进行解析,生成采用第一数据格式的目标下发数据。
[0117] 示意性的,下发数据可以为
[0118]
[0119] 则该下发数据经过脚本解析之后得到的目标下发数据可以为“0x0000001400c8”。
[0120] 三、向目标物联网设备发送目标下发数据。
[0121] 在一种可能的实施方式中,物联网平台将经过目标脚本引擎之后,生成的目标下发数据发送给目标物联网设备。
[0122] 本实施例中,由于目标脚本根据数据传输的方向分为第一接口和第二接口,以便目标物联网设备上发原始设备数据时调用第一接口,实现由第一数据格式转换为第二数据格式;或当物联网平台下发数据时调用第二接口,实现由第二数据格式转换为第一数据格式,以便目标物联网设备可以直接识别该下发数据,从而执行相应的操作。
[0123] 由于目标脚本均是目标物联网设备的设备开发者编写的,可能会存在设备开发者编写恶意脚本非法获取物联网平台的某些资源,因此,当目标脚本引擎执行该目标脚本时,需要为该过程设置一些限制,从而保护物联网平台的资源信息。
[0124] 示意性的,在图3的基础上,如图7所示,步骤308可以被替换为步骤310和步骤311。
[0125] 步骤310,创建目标线程,目标线程设置有线程限制,预设脚本集合中包含物联网平台开发者设置的脚本,线程限制包括中央处理器(Central Processing Unit,CPU)运行时间限制、内存占用量限制、脚本语言方法使用限制和脚本引擎框架使用限制中的至少一种。
[0126] 其中,CPU运行时间限制即限制目标脚本的运行时间,若目标脚本的运行时间超过预设时间,比如,预设时间为10s,则停止运行该目标脚本。内存占用量限制为限制脚本线程使用的内存量,若目标脚本运行时占用的内存量超过阈值,比如,20MB,则停止运行该目标脚本。脚本语言方法限制指目标脚本中存在除实现数据格式转换的代码之外,还存在其他的比如“下载(load)”的相关代码,则停止运行该目标脚本。脚本引擎框架使用限制即若检测到目标脚本引擎在执行“退出(quit)”这一方法,则停止该目标脚本引擎。
[0127] 在一种可能的实施方式中,当物联网平台调用目标脚本时,由于该目标脚本为设备开发者上传的脚本,因此需要单独建立一个目标线程,在该目标线程中执行相应的任务。
[0128] 步骤311,在目标线程中,通过目标脚本引擎执行目标脚本,对原始设备数据进行解析,生成目标设备数据。
[0129] 在一种可能的实施方式中,在目标线程中,通过目标脚本引擎执行目标脚本,对原始设备数据进行解析,生成目标设备数据,以便实时监测目标脚本引擎的执行情况,从而保护物联网平台的相关资源。
[0130] 可选的,当物联网平台向物联网设备下发数据时,在调用目标脚本的同时,也需要创建目标线程,在该目标线程中,通过目标脚本引擎执行目标脚本,对下发数据进行解析,生成采用第一数据格式的目标下发数据。
[0131] 可选的,可以将上述线程限制的内容预先添加至脚本引擎中,以便脚本引擎在执行相应的脚本时可以实时监测到执行情况,并在违反线程限制时,停止运行相应的脚本。
[0132] 本实施例中,通过在调用目标脚本时,建立目标线程,增加相应的线程限制,来实时监测目标脚本引擎的执行情况,并在违反线程限制时,及时停止运行目标脚本,可以保护物联网平台的资源。
[0133] 请参考图8,其示出了本申请一个示例性实施例提供的在物联网平台中的数据处理装置的结构框图。该装置可以通过软件硬件或者两者的结合实现成为图1中物联网平台的全部或一部分,该装置包括:
[0134] 接收模块801,用于接收目标物联网设备发送的原始设备数据,所述原始设备数据采用第一数据格式,所述第一数据格式与所述目标物联网设备使用的数据传输协议有关;
[0135] 第一获取模块802,用于获取所述目标物联网设备对应的目标脚本,所述目标脚本用于对所述第一数据格式的数据进行数据格式转换;
[0136] 第一解析模块803,用于通过所述目标脚本对所述原始设备数据进行解析,生成目标设备数据,所述目标设备数据采用第二数据格式,所述第二数据格式为预先定义的统一数据格式;
[0137] 处理模块804,用于对所述目标设备数据进行处理。
[0138] 可选的,所述第一解析模块803,包括:
[0139] 第一确定单元,用于根据所述目标脚本的脚本语言确定所述目标物联网设备对应的目标脚本引擎,所述物联网平台中设置有至少一种脚本引擎,且不同脚本引擎对应不同脚本语言;
[0140] 解析单元,用于通过所述目标脚本引擎执行所述目标脚本,对所述原始设备数据进行解析,生成所述目标设备数据。
[0141] 可选的,所述目标脚本包括第一接口,所述第一接口指示将所述第一数据格式转化为所述第二数据格式;
[0142] 可选的,所述解析单元还用于:
[0143] 通过所述目标脚本引擎调用所述目标脚本的所述第一接口,对所述原始设备数据进行解析,生成所述目标设备数据。
[0144] 可选的,所述目标脚本还包括第二接口,所述第二接口指示将所述第二数据格式转化为所述第一数据格式;
[0145] 可选的,所述装置还包括:
[0146] 生成模块,用于生成下发数据,所述下发数据采用所述第二数据格式,所述下发数据至少用于指示所述原始设备数据是否上传成功、所述原始设备数据的处理结果以及所述目标物联网设备执行预设操作中的至少一种;
[0147] 第二解析模块,用于通过所述目标脚本引擎调用所述目标脚本的所述第二接口,对所述下发数据进行解析,生成目标下发数据,所述目标下发数据采用所述第一数据格式;
[0148] 发送模块,用于向所述目标物联网设备发送所述目标下发数据。
[0149] 可选的,所述解析单元还用于:
[0150] 创建目标线程,所述目标线程设置有线程限制,所述预设脚本集合中包含所述物联网平台开发者设置的脚本,所述线程限制包括CPU运行时间限制、内存占用量限制、脚本语言方法使用限制和脚本引擎框架使用限制中的至少一种;
[0151] 在所述目标线程中,通过所述目标脚本引擎执行所述目标脚本,对所述原始设备数据进行解析,生成所述目标设备数据。
[0152] 可选的,所述装置还包括:
[0153] 第二获取模块,用于获取测试脚本和测试数据;
[0154] 测试模块,用于通过所述测试脚本对所述测试数据进行解析,生成测试结果;
[0155] 存储模块,用于若所述测试结果指示所述测试脚本正确,且接收到脚本上传指令,则将所述测试脚本作为所述目标脚本存储至脚本数据库中。
[0156] 可选的,所述测试模块,包括:
[0157] 第一调用单元,用于若所述测试数据采用所述第一数据格式,则调用所述测试脚本的第一接口对所述测试数据进行解析,得到第一测试结果,所述第一接口指示将所述第一数据格式转化为所述第二数据格式;
[0158] 或;
[0159] 第二调用单元,用于若所述测试数据采用所述第二数据格式,则调用所述测试脚本的第二接口对所述测试数据进行解析,得到第二测试结果,所述第二接口指示将所述第二数据格式转化为所述第一数据格式。
[0160] 可选的,所述第一获取模块802,包括:
[0161] 第二确定单元,用于根据所述目标物联网设备的设备标识,确定所述目标物联网设备所属的目标设备组,其中,同一设备组中的物联网设备采用使用相同的数据传输协议;
[0162] 第三确定单元,用于将脚本数据库中所述目标设备组对应的脚本确定为所述目标脚本。
[0163] 本申请实施例中,本申请实施例中,当物联网平台接收到目标物联网设备发送的原始设备数据之后,通过获取与该目标物联网设备对应的目标脚本,对该原始设备数据进行解析,生成采用统一数据格式的目标设备数据,再由处理中心对该目标设备数据进行处理。无需物联网设备进行数据格式转换,可以减少物联网设备端的逻辑运算,以便更多不具有数据处理能力的物联网设备接入物联网平台;在物联网平台的处理中心进行数据处理分析之前,首先通过目标脚本将原始设备数据的数据格式转换为统一格式数据,可以避免物联网平台处理不同格式的数据,减少物联网平台端的逻辑运算,从而提高物联网平台的数据处理效率。
[0164] 需要说明的是:上述实施例提供的在物联网平台中的数据处理方法,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的在物联网平台中的数据处理装置与在物联网平台中的数据处理方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0165] 请参考图9,其示出了本申请一个示例性实施例提供的物联网平台900的结构示意图。所述物联网平台900包括CPU901、包括随机存储器(Random Access Memory,RAM)902和只读存储器(Read-Only Memory,ROM)903的系统存储器904,以及连接系统存储器904和中央处理单元901的系统总线905。所述物联网平台900还包括帮助物联网平台的各个器件之间传输信息的基本输入/输出系统(Input/Output,I/O系统)906,和用于存储操作系统913、应用程序914和其他程序模块915的大容量存储设备907。
[0166] 所述基本输入/输出系统906包括有用于显示信息的显示器908和用于用户输入信息的诸如鼠标键盘之类的输入设备909。其中所述显示器908和输入设备909都通过连接到系统总线905的输入输出控制器910连接到中央处理单元901。所述基本输入/输出系统906还可以包括输入输出控制器910以用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似地,输入输出控制器910还提供输出到显示屏、打印机或其他类型的输出设备。
[0167] 所述大容量存储设备907通过连接到系统总线905的大容量存储控制器(未示出)连接到中央处理单元901。所述大容量存储设备907及其相关联的计算机可读存储介质为物联网平台900提供非易失性存储。也就是说,所述大容量存储设备907可以包括诸如硬盘或者紧凑型光盘只读储存器(Compact Disc Read-Only Memory,CD-ROM)驱动器之类的计算机可读存储介质(未示出)。
[0168] 不失一般性,所述计算机可读存储介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读存储指令、数据结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括RAM、ROM、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存或其他固态存储其技术,CD-ROM、数字多功能光盘(Digital Versatile Disc,DVD)或其他光学存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员可知所述计算机存储介质不局限于上述几种。上述的系统存储器904和大容量存储设备907可以统称为存储器。
[0169] 根据本申请的各种实施例,所述物联网平台900还可以通过诸如因特网等网络连接到网络上的远程服务器运行。也即物联网平台900可以通过连接在所述系统总线905上的网络接口单元911连接到网络912,或者说,也可以使用网络接口单元911来连接到其他类型的网络或远程服务器系统(未示出)。
[0170] 所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序存储于存储器中,所述一个或者一个以上程序包含用于进行本申请实施例提供的方法中由物联网平台所执行的步骤。
[0171] 本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的在物联网平台中的数据处理方法。
[0172] 本申请实施例还提供了一种计算机程序产品,该计算机程序产品存储有至少一条指令,所述至少一条指令由所述处理器加载并执行以实现如上各个实施例所述的在物联网平台中的数据处理方法。
[0173] 本领域技术人员应该可以意识到,在上述一个或多个示例中,本申请实施例所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读存储介质中或者作为计算机可读存储介质上的一个或多个指令或代码进行传输。计算机可读存储介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
[0174] 以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈