[0032] 下面结合实施例对本发明作进一步的描述,所描述的实施例仅仅是本发明一部分实施例,并不是全部的实施例。基于本发明中的实施例,本领域的普通技术人员在没有做出创造性劳动前提下所获得的其他所用实施例,都属于本发明的保护范围。
[0033] 结合附图,本发明的物联网终端数据高效存储系统,包括物联网终端数据处理器和与物联网终端数据处理器进行数据交互的云端数据存储系统;所述物联网终端数据处理器包括:
[0034] 数据接收模块105,用于接收物联网设备的数据;
[0035] 数据存储模块107,用于对数据进行存储;
[0036] 数据安全保护模块106,用于物联网设备在非安全的情况下暂时存储数据;
[0037] 数据通信模块102,用于将数据传输到云端数据存储系统;
[0038] 中央数据处理器101,用于与所述数据接收模块105、所述数据存储模块107、所述数据安全保护模块106和所述数据通信模块102连接,并处理指令操作。
[0039] 进一步的,所述数据安全保护模块106,当物联网设备处于异常状态(停电、故障等)时,数据安全保护模块启动应急电源,并发送指令给中央数据处理器暂停向云端数据存储系统发送数据,同时所述数据安全保护模块将数据接收模块接收的数据暂时存储在数据存储模块中;当物联网设备恢复正常工作时,中央数据处理器发送指令将存储在数据存储模块中的数据传输给云端数据存储系统。
[0040] 在一些实施例中,所述数据安全保护模块106内置传感器和检测芯片,传感器检测到物联网设备处于异常状态时,传感器发送异常信息交由检测芯片进行处理,检测芯片发送信息启动应急电源,并且检测芯片对异常进行分类处理后发送指令给中央数据处理器,并发送指令给中央数据处理器暂停向云端数据存储系统发送数据。
[0041] 进一步的,所述数据存储模块107包括临时存储区和一级存储区,所述临时存储区用于存储由数据安全保护模块发送指令需要存储的数据;所述一级存储区存储由中央数据处理器处理后需要单独存储的数据,存储的数据便于各个模块进行调用。
[0042] 本申请的临时存储区和一级存储区具体为:当物联网设备正常运行时,数据接收模块接收到的数据传输至中央数据处理器进行处理,数据处理后,部分数据传输至云端数据存储系统,部分数据保存到一级存储区,方便直接调用。当物联网设备异常状态时,数据接收模块接收到的信息存储至一级存储区;待物联网设备正常工作时,再将一级存储区中的额数据传输至中央处理去进行处理。
[0043] 进一步的,所述物联网终端数据处理器还包括数据显示模块104和交互模块103,所述中央数据处理器101对数据进行处理后,将处理后的数据显示在数据显示模块104的屏幕上,从而通过数据显示模块104显示需要用户查看的数据;所述交互模块103用于用户通过屏幕对数据进行操作实现人机交互。
[0044] 进一步的,所述数据通信模块通过网络或者USB与云端数据存储系统进行连接实现数据传输。
[0045] 进一步的,所述云端数据存储系统包括数据检验模块、数据恢复模块、冷热数据分类模块、二级缓存模块和数据编码模块;
[0046] 所述数据检验模块,用于接收来自物联网终端数据处理器的数据,并对接收到的数据的完整性进行检验;
[0047] 所述数据恢复模块,用于对所述数据检验模块检测到的不完整数据进行恢复;
[0048] 所述冷热数据分类模块,用于对完整的数据标签划为热数据和冷数据,并对冷数据和热数据进行分类存储;
[0049] 所述二级缓存模块用于对热数据进行快速存储和查询;
[0050] 进一步的,所述云端数据存储系统还包括数据冗余备份模块,所述数据冗余备份模块用于对热数据进行备份。
[0051] 进一步的,所述数据恢复模块采用错误比特流恢复或者物联网设备二次发送数据的方式进行恢复。即是说,数据恢复模块可以采用错误比特流恢复方法对数据进行恢复,也可以发送指令给物联网设备重新发送数据的方式进行恢复,第一次数据与第二次数据进行对比,恢复缺失的数据。
[0052] 数据在信息在传输或存储时,都是以由“0”与“1”组成的比特流形式进行。例如,两个设备进行通信,接收设备检测到信号线出现电平高于3.3V时,则认为收到为“1”的比特元素或比特位,当接收设备检测到信号线出现低于0.5V的低电平时,则认为收到为“0”的比特元素或比特位,当外界存在电磁干扰时,信号线上的电平可能不在前述的理想范围中,而出现一个2V的电平,这时,接收设备无法判断该比特元素的原始值,影响信息传输的可靠性。
[0053] 错误比特流恢复的原理为:当原始比特流发送之前,将数据进行分组,将分组信息转换成比特,同时按照算法生成生成矩阵,原始数据与生成举证相城得到冗余数据,将生成的冗余数据组合成新的数据一起由比特流发送至云端数据存储系统,云端接收到比特流数据后,将原来算法生成的生成矩阵求逆,利用逆矩阵与丢失后的得到的比特信息相乘,恢复出错的比特流信息,实现错误比特流的恢复。
[0054] 进一步的,所述冷热数据分类模块进行数据标记,将数据分为热数据和冷数据。
[0055] 在一些实施例中,冷热数据分类模块采用DStraw方法对数据进行标记分类,首先将接收到的数据赋予唯一的标志id(e)和权重W(e),权重与出现在物料网设备的次数成正比,同时对数据的权重进行打分S(e)=W(en)W(en‑1i)…W(e1)/n。利用Hash[id(e)]*S(e)的出最后的分值。当分值大于设定值时为热数据,当分值小于设定值时为冷数据。其中设定值由管理人员设定,管理人员通过系统的所有数据的访问情况进行设定。其中,e代表不同的数据,n代表所有数据的个数。
[0056] 进一步的,所述云端数据存储系统还包括数据解码模块,所述数据解码模块对数据编码模块中的编码数据进行解码。
[0057] 进一步的,所述云端数据存储系统还包括热数据处理模块,热数据处理模块根据热数据的程度高低,对高热数据进行二次分类存储。热数据的程度高低用H(e)表示,H(e)等于权重W(e)和物联网设备频繁访问云端数据存储系统中的数据次数C(e)相乘。当H(e)大于系统设定值时,此数据为高热度数据,当小于设定值时为低热度数据。当热数据处理模块判断出热数据为高热数据时,高热数据进入到由SSD组成的存储阵列进行二次存储。当热数据处理模块判断出热数据为低热数据时,对低热数据进行冗余备份,以保障数据的安全性。
[0058] 进一步的,所述云端数据存储系统还包括冷数据处理模块,所述冷数据处理模块包括数据编码模块,所述数据编码模块选择纠删码编码方式实现对冷数据进行编,纠删码编码方式包括X编码、SRAR编码和EVENODD编码,编码后的编码数据再进行存储。三种编码分别对数据进行块大小划分,然后根据划分的快大小,对块中的数据进行合理的编码计算。选择EVENODD码时,编码时会增加两列奇偶校验列(Parity Check Column)也就是冗余列,编码之后的EVENODD码是m*(m+2)的阵列,其中第m‑1行是为了计算而增加的全零行。选择STAR码时,在编码的时候加了三列奇偶校验列,所以STAR码能够最多恢复三列擦除的内容。其中编码后的STAR码是p*(p+3)的阵列,其中p是素数,而且第p‑1行是附加的全零行。选择X码时,编码过程中跟EVENODD码类似,唯一不同的是EVENODD码的两个奇偶校验块作为两列插入到EVENODD码的后面,而X码的两个奇偶校验块是作为两行放到X原码的下面的,同样,X码也是最多的纠删个数为2,构造成(n‑2)*n的阵列。
[0059] 结合附图2,对本申请的云端高效数据存储系统的工作过程再次进行解释说明。
[0060] 步骤202、数据物联网终端数据处理器的通信模块传输数据到达云端高效存储系统,正式开始把数据经过以下一系列操作后进行存储。
[0061] 步骤203、数据到达数据检验模块,首先检验数据的完整性,如果数据缺失,则进入数据恢复模块,如果数据完整,则进入冷热数据分类模块。
[0062] 步骤220、221、223、如果数据不完整,数据进入数据恢复模块,选择错误比特流恢复方式或者物联网设备二次数据发送恢复方式,进行数据恢复。
[0063] 步骤222、225、数据进入数据恢复模块,采用错误比特流的恢复方式对数据进行恢复,数据恢复后再进入到冷热数据分类模块。
[0064] 步骤224、225、云端高效存储系统通知物联网设备数据受损,物联网设备再次发送数据,第一次数据与第二次数据进行对比,恢复缺失的数据,数据恢复后再进入到冷热数据分类模块。
[0065] 步骤204、205、206、207如果数据完整,则数据进入冷热数据分类模块,将数据分为热数据和冷数据,并分别对热数据和冷数据贴上标签。
[0066] 步骤208、209、214、210、数据进入数据分类存储模块,根据标签的不同,分别进入数据分类存储模块,数据分类存储模块根据标签的不同的采用不同的存储机制。
[0067] 步骤210、211、212、213、如果数据为冷数据,数据进入冷数据处理模块。在冷数据处理模块中,选择相应的纠删码编码方式,实现数据编码,然后存储编码数据。
[0068] 步骤214、215、如果数据为热数据,数据进入热数据处理模块,热数据模块会判断热数据的程度高低进行分类,进行二次分类存储。
[0069] 步骤216,217当热数据为高热度数据时,数据进入二级缓存模块,由SSD组成的存储阵列,存储此高热数据。
[0070] 步骤218、219,当热数据为低热数据时,数据进入冗余备份模块,对低热数据进行冗余备份,以保障数据的安全性。