IoT终端数据存储系统、方法、计算机设备及存储介质
文献发布时间:2023-06-19 10:27:30
技术领域
本发明涉及IoT终端数据上报存储技术领域,特别涉及一种基于网关的IoT终端数据上报存储系统、方法、计算机设备及存储介质。
背景技术
随着物联网技术的不断发展,将会有越来越多的终端设备接入到互联网中,海量的数据上报云端服务器使得及时有效的存储面临更大的挑战。
传统的iot终端数据上报存储的方法是:
1.iot终端设备将采集到的数据直接上报至云端应用服务器,然后云端应用服务器根据云端存储服务器类型处理上报数据,再进行存储。
此方法的缺陷在于所有iot终端上报数据都需要云端应用服务器接收处理,导致云端应用服务器的数据处理压力巨大,响应超时,甚至导致宕机数据丢失的问题。
2.iot终端设备将采集到的数据先以队列的形式暂存本地,根据云端应用服务器的负载状态,等待空闲时再上报。
此方法的缺陷在于不能及时有效的将上报数据存储至云端存储服务器。
造成这些问题的原因在于,数据处理都统一集中在了云端应用服务器,没有合理的把数据处理压力分散。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种基于网关的IoT终端数据上报存储系统、方法、计算机设备及存储介质,可有效解决上述iot终端上报数据不能及时有效的存储至云端存储服务器的问题。
为了达到上述的技术效果,本发明采取以下技术方案:
一种基于网关的IoT终端数据上报存储系统,包括若干IoT终端、若干网关、云端分布式存储服务器;所述网关分别与IoT终端及云端分布式存储服务器通讯连接;
所述IoT终端用于将采集的数据进行处理并上报至网关,IoT终端对数据的处理包括加入服务器类型信息标识;
所述网关内预设有服务器分配配置文件,所述服务器分配配置文件中记录有各服务器类型信息标识所对应的云端分布式存储服务器地址及各云端分布式存储服务器指定的数据存储格式,所述网关用于收到上报的数据后,读取所述服务器分配配置文件,并根据服务器类型信息标识确定数据需要被处理成的格式以进行数据处理并加密,并根据服务器类型信息标识将处理后的数据转发至对应云端分布式存储服务器;
所述云端分布式存储服务器用于对收到数据进行验证,并对通过验证的数据进行存储,所述验证包括格式验证。
进一步地,所述IoT终端对数据的处理还包括加入身份验证信息。
进一步地,所述云端分布式存储服务器对数据的验证还包括进行身份信息验证。
进一步地,所述云端分布式存储服务器对数据的验证具体为:
S1.云端分布式存储服务器先对收到的数据进行身份信息验证,若通过,则进入步骤S2,否则,进入步骤S4;
S2.对数据进行解密并验证数据是否已经被处理为指定格式,若是,则进入步骤S3,否则进入步骤S4;
S3.存储数据;
S4.返回存储失败的提示信息。
同时,本发明还公开了一种基于网关的IoT终端数据上报存储方法,通过上述基于网关的IoT终端数据上报存储系统实现,具体包括以下步骤:
步骤1.IoT终端采集需要上报的数据,并对数据进行包括加入服务器类型信息标识的处理后,将数据上报至网关;
步骤2.网关读取服务器分配配置文件,根据服务器类型信息标识确定数据需要被处理成的格式及其对应的云端分布式存储服务器地址;
步骤3.网关根据步骤2中获取的信息将数据处理成指定格式并加密,并将处理后的数据上传至对应的云端分布式存储服务器;
步骤4.云端分布式存储服务器对收到的数据进行包括格式验证的数据验证,并对通过验证的数据进行存储。
进一步地,所述步骤1中还包括IoT终端在数据中加入身份验证信息;所述步骤4中云端分布式存储服务器对数据的验证具体为:
S1.云端分布式存储服务器先对收到的数据进行身份信息验证,若通过,则进入步骤S2,否则,进入步骤S4;
S2.对数据进行解密并验证数据是否已经被处理为指定格式,若是,则进入步骤S3,否则进入步骤S4;
S3.存储数据;
S4.返回存储失败的提示信息。
进一步地,所述步骤3中还包括:
网关开启轮询任务,每间隔m分钟,网关轮询云端分布式存储服务器的负载状态并记录在本地配置文件,在需要向云端分布式存储服务器上传数据时,对于同一地址对应的云端分布式存储服务器,选择负载最小的进行数据上传。
同时,本发明还公开了一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述基于网关的IoT终端数据上报存储方法的步骤。
同时,本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述基于网关的IoT终端数据上报存储方法的步骤。
本发明与现有技术相比,具有以下的有益效果:
本发明的基于网关的IoT终端数据上报存储系统、方法、计算机设备及存储介质,采用了在IoT终端设备数据上报时,将数据进行分配云端存储服务器类型标识处理,再经由网关根据服务器类型经济学对应的格式化处理后转发至不同类型的云端存储服务器,即IoT终端设备通过网关和云端存储服务器建立点对点直接连接,避免了云端应用服务器统一处理数据再存储;极大的缓减了云端应用服务器的数据处理压力,同时也也提高了IoT终端数据上报存储的效率和及时性。
附图说明
图1是本发明的基于网关的IoT终端数据上报存储系统的示意图。
图2是本发明的基于网关的IoT终端数据上报存储方法的流程示意图。
图3是本发明的一个实施例中网关轮询云端分布式存储服务器的示意图。
具体实施方式
下面结合本发明的实施例对本发明作进一步的阐述和说明。
实施例:
实施例一:
如图1所示,一种基于网关的IoT终端数据上报存储系统,包括若干IoT终端、若干网关、云端分布式存储服务器;其中,网关分别与IoT终端及云端分布式存储服务器通讯连接。
具体的,IoT终端用于将采集的数据进行处理并上报至网关,IoT终端对数据的处理包括加入服务器类型信息标识;如mysql,redis等;本实施例中,IoT终端对数据的处理还包括加入身份验证信息。
网关内预设有服务器分配配置文件,服务器分配配置文件中记录有各服务器类型信息标识所对应的云端分布式存储服务器地址及各云端分布式存储服务器指定的数据存储格式。
网关用于收到上报的数据后,读取服务器分配配置文件,并根据服务器类型信息标识确定数据需要被处理成的格式以进行数据处理并加密,并根据服务器类型信息标识将处理后的数据转发至对应云端分布式存储服务器,以便于云端分布式存储服务器直接对收到的数据进行存储,IoT终端通过网关与云端分布式存储服务器建立点对点连接,以便网关将上报数据转发到云端存储服务器。
云端分布式存储服务器用于对收到数据进行验证,并对通过验证的数据进行存储,验证包括格式验证。本实施例中,云端分布式存储服务器对数据的验证还包括进行身份信息验证。
具体的,云端分布式存储服务器对数据的验证具体为:
S1.云端分布式存储服务器先对收到的数据进行身份信息验证,若通过,则进入步骤S2,否则,进入步骤S4;
S2.对数据进行解密并验证数据是否已经被处理为指定格式,若是,则进入步骤S3,否则进入步骤S4;
S3.存储数据;
S4.返回存储失败的提示信息。
实施例二
如图2所示,一种基于网关的IoT终端数据上报存储方法,通过实施例一的基于网关的IoT终端数据上报存储系统实现,具体包括以下步骤:
步骤1.IoT终端采集需要上报的数据,并对数据进行包括加入服务器类型信息标识及附加身份验证信息的处理后,将数据上报至网关。
步骤2.网关收到上报的数据后,读取服务器分配配置文件,根据服务器类型信息标识确定数据需要被处理成的格式及其对应的云端分布式存储服务器地址。具体的,本实施例中,此步骤采用C语言编写程序,具体利用cJSON库解析本地配置文件,并分配指定云端存储服务信息。
步骤3.网关把上报的数据根据服务器分配配置文件中不同类型云端分布式存储服务器指定的存储格式进行数据处理并加密,实现IoT终端通过网关与云端分布式存储服务器建立点对点连接,网关将处理后的上报数据转发到对应的云端分布式存储服务器,等待云端分布式存储服务器处理。
本实施例中,此过程基于tcp/ip协议栈,即根据上一步获取到的服务器地址等信息,网关与云端分布式存储服务器建立socket套接字连接,进行数据传输。
步骤4.网关开启轮询任务,如图3所示,每间隔1分钟,网关轮询云端分布式存储服务器的负载状态并记录在本地配置文件,从而在需要向云端分布式存储服务器上传数据时,对于同一地址对应的云端分布式存储服务器,选择负载最小的进行数据上传,若各云端分布式存储服务器负载均相同,则随机发送。
步骤5.云端分布式存储服务器对收到的数据进行数据验证及存储。
具体包括:
步骤5.1.云端分布式存储服务器先对收到的数据进行身份信息验证,若通过,则进入步骤5.2,否则,进入步骤5.4;
步骤5.2.对数据进行解密并验证数据是否已经被处理为指定格式,若是,则进入步骤5.3,否则进入步骤5.4;
步骤5.3.存储数据;
步骤5.4.返回存储失败的提示信息。
实施例三
本实施例中公开了一种计算机设备,该计算机设备可以是服务器,该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储基于网关的IoT终端数据上报存储方法中涉及到的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现基于网关的IoT终端数据上报存储方法。
在另一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例二中基于网关的IoT终端数据上报存储方法的步骤,或者,处理器执行计算机程序时实现上述实施例一的基于网关的IoT终端数据上报存储系统的各模块的功能。为避免重复,这里不再赘述。
在另一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例二中基于网关的IoT终端数据上报存储方法的步骤,或者,处理器执行计算机程序时实现上述实施例一的基于网关的IoT终端数据上报存储系统的各模块的功能。为避免重复,这里不再赘述。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
- IoT终端数据存储系统、方法、计算机设备及存储介质
- 用于NB-IoT终端的切换方法、系统及计算机可读存储介质