一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种数据存储方法、系统、电子设备和存储介质与流程

2022-07-16 11:00:04 来源:中国专利 TAG:


1.本发明属于数据处理和数据存储技术领域,涉及一种数据存储方法、系统、电子设备和存储介质。


背景技术:

2.物联网是一种能够实现人、机、物互联互通的网络,由互联网延伸而来,物联网这一概念于1991年由ashton教授首次提出,近年来,随着云计算、大数据和区块链等技术的出现和发展,物联网在全球范围内出现了迅猛发展的态势,在当今社会中发挥着越来越重要的作用。物联网技术在智慧城市、车联网、智能医疗、智慧工厂等领域广泛使用,是继计算机、互联网之后的第三次世界信息技术产业革命,在未来,物联网应用会影响到我们生活的方方面面。与此同时,当前中心化的物联网设备接入模式也引发了新的问题。首先,物联网设备地域分布较广,设备数量众多,应用场景不同,计算和存储能力差,传统的中心化网络模式将面临巨大的数据处理压力,效率较低。其次,不同厂家生产的物联网设备连接到不同的物联网集中式平台,平台之间并不兼容,这会造成不同平台下的物联网设备之间难以相互合作,无法进行消息交互和协同工作,这极大限制了物联网的发展。最后,目前的物联网集中式平台易遭受恶意攻击,数据存储风险性高,隐私性差。随着物联网技术的发展,物联网设备数量未来将会迅速扩张,应用规模更加庞大,对于安全性要求也更高,所以迫切需要实现物联网设备的分布式身份认证及可信接入。
3.物联网本质上是将大量的终端应用设备进行组网操作,而每一个终端应用设备又包括若干个传感器,这些传感器会实时采集和传输大量的数据,但是每一个终端应用设备的本地存储硬件容量有限,因此,需要对这些大量的终端应用设备产生的数据进行及时的处理和转移存储。
4.申请号为2021112263934的中国发明专利公开了一种公开了一种基于云计算平台的数据分布式存储系统、方法和存储介质,其系统包括:数据加密模块,对符合价值度要求而被允许存储的数据进行私密加密;数据拆分模块,对私密加密后的数据进行随机拆分得到数据块;数据备份模块,对拆分后的数据块进行备份得到镜像数据块;数据分配模块,将数据块和镜像数据块随机分配给各个分布式存储节点;数据组合模块,将数据块和镜像数据块进行公共加密后与现有的数据组合存储。其技术方案解决了多个存储平台需要同一个管理系统而导致安全性和稳定性受到威胁的问题,能够适用于多个云计算平台,实现多用户管理、多用户受益。但是该技术方案在数据处理和传输的稳定性、安全性以及丢失数据的可恢复性上仍存在缺陷。


技术实现要素:

5.为解决上述技术问题,本发明提出一种数据存储方法、系统、电子设备和存储介质,通过优化数据阵列格式、优化数据传输链路,提高了数据处理和数据存储的稳定性、安全性,以及在数据丢失时数据的可恢复性。
6.为了实现上述目的,本发明的技术方案如下:
7.一种数据处理方法,所述数据处理包括数据存储、数据恢复和数据传输,所述数据恢复的过程中只进行数据传输,不进行数据存储;所述数据采用数据阵列的方式表示,所述数据阵列为m(α,β),具体为:
[0008][0009]
其中:
[0010]
α和β为数据阵列中的数值阵列点,
[0011]
k为数据阵列中的安全参数,
[0012]
b为数据阵列的代码长度,
[0013]
d为数据阵列的数据节点数量。
[0014]
进一步的,所属数据阵列中的每一个数据均包括m1(1k,h)、m2(1k,t)、m3(x,pk)、m4(x,w,acc(x),pk)、m5(x
*
,ac,acc(x),pk)、m6(x
#
,ac,acc(x),pk)、m7(ac,x,pk)、m8(wi,ac,pk)共8个累加数据值;其中:
[0015]
k为数据阵列中的安全参数,
[0016]
h为数据阵列的随机类型值,
[0017]
pk是数据阵列的公钥,
[0018]ac
是返回累计值辅助信息,
[0019]
x={x1,x2.....xn}是输入元素,
[0020]
acc(x)是元素x的返回累加值,
[0021]
w为数据阵列认证因子,
[0022]
x
*
={x
*1
、x
*2
......x
*n
}是添加的新元素,
[0023]
x
#
={x
#1
,x
#2
,......x
#
n}是删除的元素,
[0024]
wi是更新后的认证因子。
[0025]
本发明还提供一种数据处理系统,所述处理系统应用上文所述的数据处理方法进行数据处理,所属数据处理系统包括:服务器层、区块链网络层、数据节点网络中心、本地区块链层、终端应用设备;所述服务器层为云服务器层;所述区块链网络层为采用共识算法的分布式区块链网络;所述数据节点网络中心为数据通讯中心;所述本地区块链层用于存储终端应用设备产生的数据;所述终端应用设备为应用终端的硬件或软件设备。
[0026]
进一步的,所述服务器层、区块链网络层、数据节点网络中心、本地区块链层、终端应用设备中的数据均采用再生编码技术,并且对原始数据进行冗余编码和存储。
[0027]
进一步的,所述本地区块链层采用能量感知编码进行数据的存储和数据的恢复。
[0028]
进一步的,所述数据配置有双哈希值,其中一个哈希值由区块链网络层通过计算得出,另一个哈希值由本地区块链层计算得出。
[0029]
进一步的,所述双哈希值组成默克尔树,所述默克尔树的根部包含在区块链网络层中数据的头部。
[0030]
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上文所述的数据处理方法,或者应用上文所述的数据处理系统进行数据处理。
[0031]
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上文所述的数据处理方法,或者应用上文所述的数据处理系统进行数据处理。
[0032]
本发明具有以下有益效果:
[0033]
(1)、本发明设计了新的数据阵列机构,有效降低了数据存储时所占据的容量;
[0034]
(2)、本发明在服务器层布置有大量的云端存储资源,可以为本地存储资源有限的终端应用设备提供理论上没有上限的存储资源,破解了终端应用设备本地的硬件存储容量限制;
[0035]
(3)、本发明为区块链网络层中的数据提供数据冗余,当云端服务器发生数据包丢失或者异常时,可以通过冗余再生码进行数据的修复或者恢复,提高数据存储的安全性和可靠性;
[0036]
(4)、本发明的所述服务器层、区块链网络层、数据节点网络中心、本地区块链层、终端应用设备中的数据均采用再生编码技术,并且对原始数据进行冗余编码和存储,进一步提高了数据存储的安全性和可靠性。
附图说明
[0037]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0038]
图1本发明所述数据处理系统整体架构示意图。
具体实施方式
[0039]
为了使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体图示,进一步阐述本发明。
[0040]
一种数据处理方法,所述数据处理包括数据存储、数据恢复和数据传输,所述数据恢复的过程中只进行数据传输,不进行数据存储;所述数据采用数据阵列的方式表示,所述数据阵列为m(α,β),具体为:
[0041][0042]
其中:
[0043]
α和β为数据阵列中的数值阵列点,
[0044]
k为数据阵列中的安全参数,
[0045]
b为数据阵列的代码长度,
[0046]
d为数据阵列的数据节点数量。
[0047]
进一步的,所属数据阵列中的每一个数据均包括m1(1k,h)、m2(1k,t)、m3(x,pk)、m4(x,w,acc(x),pk)、m5(x
*
,ac,acc(x),pk)、m6(x
#
,ae,acc(x),pk)、m7(ac,x,pk)、m8(wi,ac,pk)共8个累加数据值;其中:
[0048]
k为数据阵列中的安全参数,
[0049]
h为数据阵列的随机类型值,
[0050]
pk是数据阵列的公钥,
[0051]
ac是返回累计值辅助信息,x={x1,x2.....xn}是输入元素,
[0052]
acc(x)是元素x的返回累加值,
[0053]
w为数据阵列认证因子,
[0054]
x
*
={x
*1
、x
*2
......x
*n
}是添加的新元素,
[0055]
x
#
={x
#1
,x
#2
,......x
#n
}是删除的元素,
[0056]
wi是更新后的认证因子。
[0057]
相较于现有技术中一般的数据阵列编码格式,本发明所使用的这一具有八个累加值的数据阵列格式只需占用较少的存储容量即可实现完整数据的存储。本发明将数据本身的阵列代码长度和数据节点数量作为用于表征数据的元素,使得每一个数据字段自身的特征更为明显,进而使得数据字段的存储和调用更为精准,有效降低数据字段的冗余和错误存储,也在一定程度上降低了数据字段在存储时所占据的存储空间。
[0058]
本发明还提供一种数据处理系统,所述处理系统应用上文所述的数据处理方法进行数据处理,所属数据处理系统包括:服务器层、区块链网络层、数据节点网络中心、本地区块链层、终端应用设备;所述服务器层为云服务器层;所述区块链网络层为采用共识算法的分布式区块链网络;所述数据节点网络中心为数据通讯中心;所述本地区块链层用于存储终端应用设备产生的数据;所述终端应用设备为应用终端的硬件或软件设备。所述服务器层、区块链网络层、数据节点网络中心、本地区块链层、终端应用设备中的数据均采用再生编码技术,并且对原始数据进行冗余编码和存储。所述本地区块链层采用能量感知编码进行数据的存储和数据的恢复。所述数据配置有双哈希值,其中一个哈希值由区块链网络层通过计算得出,另一个哈希值由本地区块链层计算得出。所述双哈希值组成默克尔树,所述默克尔树的根部包含在区块链网络层中数据的头部。
[0059]
本发明的数据处理方法在数据恢复的过程中只进行数据传输,不进行数据存储,因此要读取的数据量与要传输的数据量相同,更适合在存储系统中使用。
[0060]
本发明还提供一种数据处理系统,所述处理系统应用上文所述的数据处理方法进行数据处理,所属数据处理系统包括:服务器层、区块链网络层、数据节点网络中心、本地区块链层、终端应用设备;所述服务器层为云服务器层;所述区块链网络层为采用共识算法的分布式区块链网络;所述数据节点网络中心为数据通讯中心;所述本地区块链层用于存储终端应用设备产生的数据;所述终端应用设备为应用终端的硬件或软件设备。
[0061]
服务器层设置有大量的云端服务器,可以提供云存储服务功能,终端设备用户可以通过任何链接到服务器层的网络设备随时随地访问存储在服务器层中的数据。通常情况下,服务器层布置有大量的云端存储资源,可以为本地存储资源有限的终端应用设备提供理论上没有上限的存储资源。
[0062]
本发明的区块链网络层可以实现全球组网,区块链方式的数据存储形式保证了数据存储的安全性,服务器层中的每一个云端服务器均可以与区块链网络层进行通信,且每一个云端服务器都可以对数据进行存储和验证,并使用共识算法生成和更新数据。同时,为了提高数据的可靠性和安全性,本发明为区块链网络层中的数据提供数据冗余,当云端服务器发生数据包丢失或者异常时,可以通过冗余再生码进行数据的修复或者恢复,进一步
提高数据存储的安全性和可靠性。
[0063]
本发明的数据节点网络中心是本地区块链网络和区块链网络层的通信中转层,多台终端应用设备相互组成网络,终端应用设备由数据节点网络中心管理,无论终端应用设备的硬件规格和本地存储量的大小,所有组网的终端应用设备都可以参与到数据节点网络中心中。同时,数据节点网络中心还负责与上层区块链网络层的数据交互,定期将终端应用设备生成的、存储在本地区块链层上的数据传输到区块链网络层中存储。此外,在实际应用中,由于任何终端设备实体都可以被注册为数据源,但是进行数据交互的终端应用设备必须在数据节点网络中心中进行成功注册,已避免终端应用设备未经注册而被添加到数据节点中心中,而且,所有参与组网的终端应用设备都必须具有一个相同的数据节点中心,否则将无法有效对组网的终端应用设备进行数据管理。
[0064]
本发明的数据节点中心与终端应用设备共同组网,形成了一个本地区块链,多个本地区块链构成了一个本地区块链层,用于存储每一个终端应用设备上所产生的数据,由于终端应用设备本身的存储硬件资源有限,因此,本地区块链实际上是一个较为简单的区块链网络,当终端应用设备本地存储的数据达到上限时,需要对数据进行哈希处理,并将数据传输并存储到本地区块链,于此同时可以将终端应用设备中的本地数据删除以获取新的本地硬件存储资源,而后再由本地区块链层将数据汇总传输给上一个层级。
[0065]
本发明的终端应用设备包括大量的传感器节点,大多数传感器(如温度传感器、gps传感器、压力传感器等)的采样数据是数值型的,但也有很多传感器的采样值为多媒体数据(如交通摄像头视频数据、音频传感器采样数据、远程传感成像数据等),每个传感器频繁产生新的采样数据,系统需要存储最新版本的采样数据。此外,由多个终端应用设备组网形成的设备网络中也可以包含多种传感器,如交通传感器、水文传感器、地质传感器、气象传感器、生物医学传感器等。而每一种传感器又包含若干特定的传感器,又可以细分为gps传感器、车牌识别传感器、电子照相识别传感器、交通流量传感器(红外、线圈、光学、视频传感器)、道路传感器、完好无损的传感器等,这些传感器构成了本发明最底层的数据来源。
[0066]
为了提高数据的安全性和可靠性,本发明的所述服务器层、区块链网络层、数据节点网络中心、本地区块链层、终端应用设备中的数据均采用再生编码技术,并且对原始数据进行冗余编码和存储。
[0067]
本发明的本地区块链层采用能量感知编码进行数据的存储和数据的恢复。通常情况下,大多数终端应用设备中所配置的传感器的功率都是十分有限的,在某种程度上,传感器能量的大小又决定了本地终端设备网络的性能。因此,本发明将能量感知编码应用于本地区块链层的数据存储,在本地终端应用设备的数据信息传输过程中,当中间节点发送数据时,我们希望在其相邻的节点中选择剩余能量最多的节点进行数据发送,以减少节点能量提前耗尽的概率。同时,还可以利用相对剩余能量,在多个具有足够能量的节点中选择其中一个节点作为数据传输的网络设备,用于丢失数据的重新编码或恢复。
[0068]
本发明的区块链存储方案包括本地区块链层和区块链网络层,本地区块链层由终端应用设备组网创建,它们存储终端应用设备产生和收集的数据及其哈希值。区块链网络层存储所有数据块,本地区块链层中的数据会定期上传到区块链网络层,本发明还提供了一种定期验证数据哈希值以确保数据完整性的机制,即,给所述数据配置双哈希值,其中一个哈希值由区块链网络层通过计算得出,另一个哈希值由本地区块链层计算得出。所述双
哈希值组成默克尔树,所述默克尔树的根部包含在区块链网络层中数据的头部。
[0069]
本发明为每一个终端应用设备均配置了一个相应的管理器,与本地区块链连接的每个终端应用设备都将由其对应的管理器进行身份验证,合法终端应用设备将被分配一个公私钥对,没有相应公私钥对的终端应用设备不能参与本地区块链组网,也不能向本地区块链上传数据。参与本地区块链层组网的所有终端应用设备都可以收集和发送数据,当采集到的数据达到终端应用设备的硬件容量上限时,计算该数据块的哈希值,使用已经分发的私钥对收集到的数据的哈希值进行签名验证,并将哈希值传输到本地区块链层进行验证,验证通过后,将哈希值写入本地区块链层。上述哈希值可以构建一个默克尔树,默克尔树的根包含在本地区块链层的头部中,此外,数据被发送到本地区块链层进行存储,因此,本发明的本地区块链层可以作为整个数据系统的全局节点,而终端应用设备则作为轻节点使用,终端应用设备清空存储的数据后,将能够再次进行数据的收集。
[0070]
实际应用中的终端应用设备通常是大量的传感器,这些大量的传感器用于感知信息、协同工作以构建本地网络并将不同的监测对象连接到互联网,但是这些大量的传感器以及相应的监测设备在存储、通信方面的资源都十分有限,为此,本发明将每一个终端应用设备都与本地区块链层连接,构建成本地区块链网络,本发明的任何一个终端应用设备都可以与本地区块链层进行数据的传输,进而摆脱终端应用设备本身存储硬件容量的限制。此外,实际上应用环境下的大多数终端应用设备使用的都是功率十分有限的传感器,本发明的数据处理方法个数据处理系统将能量感知编码应用到本地区块链层的数据存储中,在终端应用设备与本地区块链层进行数据信息传输的过程中,当中间节点发送数据时,系统自动设定为在该中间节点的邻居节点中选择剩余能量最多的节点进行发送,以减少节点能量提前耗尽的概率,同时,系统还可以自动监测在数据传输过程中与前一个节点相邻的所有相邻节点的平均剩余能量值,通过比较这些相对剩余能量值,可以在多个具有足够能量的节点中选择一个足够合适的节点作为信息传输的网络设备。
[0071]
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上文所述的数据处理方法,或者应用上文所述的数据处理系统进行数据处理。
[0072]
该电子设备可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备的组件可以包括但不限于:至少一个处理器、至少一个存储器、连接不同系统组件(包括存储器和处理器)的总线。总线包括数据总线、地址总线和控制总线。存储器可以包括易失性存储器,例如随机存取存储器(ram)和/或高速缓存存储器,还可以进一步包括只读存储器(rom)。存储器还可以包括具有一组(至少一个)程序模块的程序工具,这样的程序模块包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。处理器通过运行存储在存储器中的计算机程序,从而执行各种功能应用以及数据处理。
[0073]
此外,电子设备还可以与一个或多个外部设备(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(i/o)接口进行。并且,电子设备还可以通过网络适配器与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。网络适配器通过总线与电子设备的其它模块通信。应当明白,可以结合电子设备使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、raid(磁盘
阵列)系统、磁带驱动器以及数据备份存储系统等。
[0074]
尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本技术的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
[0075]
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上文所述的数据处理方法,或者应用上文所述的数据处理系统进行数据处理。
[0076]
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
[0077]
本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现上文所述的数据处理方法,或者应用上文所述的数据处理系统进行数据处理。
[0078]
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
[0079]
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献