CN110020844B - 去中心化存储的控制方法、系统及相关设备 - Google Patents
去中心化存储的控制方法、系统及相关设备 Download PDFInfo
- Publication number
- CN110020844B CN110020844B CN201910310171.7A CN201910310171A CN110020844B CN 110020844 B CN110020844 B CN 110020844B CN 201910310171 A CN201910310171 A CN 201910310171A CN 110020844 B CN110020844 B CN 110020844B
- Authority
- CN
- China
- Prior art keywords
- mortgage
- layer unit
- file
- target
- mapping relation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/03—Credit; Loans; Processing thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请公开去中心化存储的控制方法、系统及相关设备,该方法包括:第二抵押层单元获取第四区块链节点发送的目标修复文件的属性信息和调整第一抵押层单元映射关系请求;目标修复文件的属性信息至少包括目标修复文件对应的目标文件所映射的第一抵押层单元的ID号和目标修复文件的ID号;第二抵押层单元响应调整第一抵押层单元映射关系请求,将调整第一抵押层单元映射关系的任务分配至第一抵押层单元,以将第一抵押层单元的ID号与目标修复文件的ID号建立映射关系;其中,目标修复文件是内容与目标文件相同的文件,第二抵押层单元用于管理第一抵押层单元,通过上述方式,可以较好完善去中心化存储网络,提高网络协作效率。
Description
技术领域
本申请涉及区块链领域,特别是涉及一种去中心化存储的控制方法、系统及相关设备。
背景技术
在区块链网络的抵押机制中,存储节点为用户提供数据存储。存储节点通过提供他们的存储空间和响应put请求来参与区块链网络。要想成为存储节点,节点必须用与其承诺的存储空间成比例的抵押品来抵押,存储节点通过在特定时间存储数据来响应用户请求,在此过程中生成存储证明并提供至区块链网络中来证明他们的在特定时间内存储了客户的目标数据。现有的激励机制较为严格,一旦发现不能提供存储证明或存储证明是无效的,则会对抵押品进行扣除。
发明内容
本申请主要解决的技术问题是提供一种去中心化存储的控制方法、系统及相关设备,能够完善去中心化存储网络,提高网络协作效率。
为解决上述技术问题,本申请采用的一个技术方案是:提供一种去中心化存储的控制方法,所述方法包括:
第二抵押层单元获取第四区块链节点发送的目标修复文件的属性信息和调整第一抵押层单元映射关系请求,其中,所述目标修复文件的属性信息至少包括所述目标修复文件对应的目标文件所映射的所述第一抵押层单元的ID号和所述目标修复文件的ID号;
所述第二抵押层单元响应所述调整所述第一抵押层单元映射关系请求,将调整所述第一抵押层单元映射关系的任务分配至所述第一抵押层单元,以将所述第一抵押层单元的ID号与所述目标修复文件的ID号建立映射关系;
其中,所述目标修复文件是内容与所述目标文件相同的文件,所述第二抵押层单元是所述第一抵押层单元的上级抵押层单元,用于管理所述第一抵押层单元,所述第二抵押层单元可继承出多个所述第一抵押层单元。
为解决上述技术问题,本申请采用的另一个技术方案是,提供一种去中心化存储的控制方法,所述方法包括:
第四区块链节点获取目标修复文件的属性信息,所述属性信息至少包括所述目标修复文件对应的目标文件所映射的第一抵押层单元的ID号和所述目标修复文件的ID号;
上传调整所述第一抵押层单元映射关系请求和所述目标修复文件的属性信息至所述第一抵押层单元对应的第二抵押层单元,以调整所述第一抵押层单元的映射关系,使得所述第一抵押层单元的ID号映射至所述目标修复文件的ID号;
其中,所述目标修复文件是内容与所述目标文件相同的文件,所述第二抵押层单元是所述第一抵押层单元的上级抵押层单元,用于管理所述第一抵押层单元,所述第二抵押层单元可继承出多个所述第一抵押层单元。
为解决上述技术问题,本申请采用的另一个技术方案是,提供一种去中心化存储的控制方法,所述方法包括:
第一区块链节点接收调整第一抵押层单元与目标文件映射关系的指令;
所述第一区块链节点响应所述指令,取消所述第一抵押层单元与所述目标文件映射关系,并建立所述第一抵押层单元与目标修复文件的映射关系;
其中,所述目标修复文件是内容与所述目标文件相同的文件。
为解决上述技术问题,本申请采用的另一个技术方案是,提供一种区块链节点设备,所述区块链节点设备包括处理器、存储器和通信电路,所述处理器与所述存储器和所述通信电路连接;
其中,所述存储器用于存储程序数据;
所述通信电路用于在所述处理器控制下与其他所述区块链节点设备进行通讯;
所述处理器用于运行所述存储器存储的所述程序数据,以执行如上所述的去中心化存储的控制方法。
为解决上述技术问题,本申请采用的又一个技术方案是,提供一种去中心化存储系统,所述系统包括至少多个区块链节点设备,所述区块链节点设备可运行至少一个区块链节点,所述多个区块链节点设备间可进行点对点通信,所述区块链节点设备为如上所述的设备。
为解决上述技术问题,本申请采用的又一个技术方案是,提供一种存储介质,所述存储介质存储有程序数据,所述程序数据被执行时实现如上所述的去中心化存储的控制方法。
以上方案,由第二抵押层单元获取第四区块链节点发送的目标修复文件的属性信息和调整第一抵押层单元映射关系请求,第二抵押层单元响应调整所述第一抵押层单元映射关系请求,将调整第一抵押层单元映射关系的任务分配至第一抵押层单元,以将第一抵押层单元的ID号与所述目标修复文件的ID号建立映射关系,实现了根据需要灵活调整第一抵押层单元的映射关系,减少第一抵押层单元被扣除,可以较好完善去中心化存储网络,提高网络协作效率。
附图说明
图1是本申请一种区块链节点设备一实施例的结构示意图;
图2a是本申请一种去中心化存储系统一实施例的结构示意图;
图2b是本申请一种去中心化存储系统另一实施例的结构示意图;
图3是本申请所提出的抵押层单元间的继承关系的结构示意图;
图4是本申请所提出的抵押层单元与封装层目标文件间的映射关系示意图;
图5是本申请一种去中心化存储的控制方法一实施例的流程示意图;
图6是本申请一种去中心化存储的控制方法一实施例的流程示意图;
图7是本申请一种去中心化存储的控制方法一实施例的流程示意图;
图8是本申请一种去中心化存储的控制方法一实施例的流程示意图;
图9是本申请一种去中心化存储的控制方法另一实施例的流程示意图;
图10为本申请一种去中心化存储的控制方法再一实施例的流程示意图;
图11为本申请一种去中心化存储的控制方法再一实施例的流程示意图;
图12是本申请一种存储介质一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅用于解释本申请,而非对本申请的限定。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请中的术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
首先需要说明的是,本申请所提供的一种去中心化存储的控制方法实施例可以应用于区块链网络。下面以区块链网络包括多个区块链节点(下文会简称为节点)为例进行说明。当然,本申请实施例也可以应用于其他形式的区块链节点。
请参见图1,图1为本申请一种区块链节点设备一实施例的结构示意图。在当前实施例中,本申请所提供的区块链节点设备100包括处理器101、存储器102和通信电路103,处理器101与存储器102和通信电路103连接。
其中,存储器102用于存储程序数据,所存储的程序数据被执行时可实现如下文图3至图11及其所对应的任一实施例所述的一种去中心化存储的控制方法。
通信电路103用于在处理器101的控制下与外部区块链节点设备进行通讯,用于对外发送数据或者接收数据。
处理器101用于运行存储器102存储的程序数据,以执行如下图3至图11对应的任一实施例所述的去中心化存储的控制方法。
进一步地,区块链节点设备100为可运行至少一个区块链节点的终端设备,如可以是计算机和服务器等。可以理解地,每一台区块链节点设备100可运行的区块链节点的数量可以是基于区块链节点设备的配置参数进行确定,具体在此不做任何限定。请同时参见图2a和图2b,图2a为本申请一种去中心化存储系统另一实施例的结构示意图,图2b为本申请一种去中心化存储系统另一实施例的结构示意图。在图2a所示实施例中,本申请所提供的去中心化存储系统200包括多个区块链节点设备,具体包括区块链节点设备201、区块链节点设备202和区块链节点设备203,多个区块链节点设备201、202和203间可进行点对点通信。每台区块链节点设备可运行至少一个区块链节点,故对应的当基于区块链节点角度看,图2b所示意的去中心化存储系统可包括多个区块链节点A、B、C和D,其中,多个区块链节点A、B、C和D可以是由同一台区块链节点设备运行,也可以是不同的区块链节点设备运行,故在其他实施例中去中心化存储系统中包括多个区块链节点设备。运行区块链节点的区块链节点设备均可以与系统中其他所有区块链节点设备直接进行通信,对应的,系统中任意一个区块链节点均可以与其他区块链节点直接进行通信交互。其中,当前实施例中运行区块链节点的区块链节点设备为如图1所对应的实施例所述的区块链节点设备,每台区块链节点设备至少可以运行一个区块链节点。
其中,去中心化存储系统中所包括的所有区块链节点在级别上为平级,即所有的区块链节点均可以执行存储任务,所有的区块链节点均可以依据智能合约监测除去自身以外其他区块链节点执行存储任务的情况。在另一实施例中,本申请所提供的去中心化存储系统中,还可以预先设定由一个特定的区块链节点执行抵押扣除任务。在又一实施例中,本申请所提供的去中心化存储系统中,抵押扣除任务也可以是由除去当前被监测的区块链节点外,其他所有节点均可以执行抵押扣除任务。
在阐述本申请所提供方法的细节前,首先说明目标文件是区块链节点执行存储任务所存储的文件,第一区块链节点是指执行扣除目标文件所映射的第一抵押层单元的节点,第二区块链节点是指执行修复目标文件任务的区块链节点,第四区块节点是存储目标文件的节点,第三区块链节点是指监督或抽查第四区块链节点是否上传对应目标文件的存储证明的节点。根据区块链网络中各个节点的级别是相同的,故可以得知根据节点不同时刻所执行功能的不同,以及参考节点的不同,某个区块链节点可以是依次或同时是第一区块链节点、第二区块链节点、第三区块链节点和第四区块链节点中的一个或多个。
具体地,从执行存储任务的角度看,每个区块链节点均会接受其他区块链节点的监测,故可以得知去中心存储系统(也称区块链网络)中每个区块链节点可以是第四区块链节点,但是根据智能合约每个区块链节点也可以监测其他的区块链节点,故相对于其所监测的区块链节点来说该区块链节点也是第三区块链节点。同样的,当某一区块链节点执行了扣除目标文件所映射的第一抵押层单元的任务时,对应的该区块链节点为第一区块链节点,同时如果该区块链节点还用于修复某一存在异常的目标文件,则该区块链节点还可以是第二区块链节点。
在阐述本申请所提供的技术方案之前,首先对本申请所提出的具有继承关系的第一抵押层单元和第二抵押层单元进行阐述。
请参见图3,图3为本申请所提出的抵押层单元继承关系示意图,抵押层单元是指区块链节点在加入区块链网络时所提供的抵押,具体可以体现为智能合约中数字,当抵押层具有多层时,也可以理解为具有不通过级别的智能合约,其中级别较高的智能合约可以管理低级别的智能合约,或者为低级别的智能合约进行分配任务。在当前实施例中,可将具有继承关系的抵押层单元称之为父子抵押层单元,图3所示的图中,父抵押层单元Actor可以继承出子抵押层单元Actor1、子抵押层单元Actor2和子抵押层单元Actor3,子抵押层单元Actor1继承出第一抵押层单元m1、m2和m3,子抵押层单元Actor2继承出第一抵押层单元n1和n2。
在本申请中将具有管理和资源调配功能的抵押层单元定义为第二抵押层单元,对应图3所示的图中,第一抵押层单元m1、m2和m3的上级抵押层单元Actor1为第二抵押层单元。但是在本申请所提供的技术方案中,可以具有多个直接管理或间接管理某第一抵押层单元m1的上级抵押层单元,故会对应有不同的级别的第二抵押层单元。如第二抵押层单元Actor1的上级抵押层单元Actor也是第二抵押层单元,虽然抵押层单元Actor1和抵押层单元Actor均是第二抵押层单元,但是抵押层单元Actor的管理和分配的级别要高于抵押层单元Actor1,即抵押层单元Actor1可以管理抵押层单元Actor1。
需要说明的是,抵押层单元这种集成关系理论上可以集成很多层,图3所示意的是三层继承关系的抵押层单元,可以理解的,在其他实施例中抵押层单元的可以包括多层继承关系,如可以包括4层、5层或者更多层,在此并不做限定。
在当前实施例中,第一抵押层单元是指不可以再继承出子抵押层单元,也不具备管理和分配功能的抵押层单元,同时也是级别最低的抵押层单元。每个第一抵押层单元与每个目标文件会是一一对应的,且是由至少一个第二抵押层单元分配第一抵押层单元和目标文件建立映射关系任务至一个第一抵押层单元。在每个区块链节点完成存储目标文件后,会对应给每个目标文件赋予一标记身份的ID号,至少将ID号上传至第二抵押层单元,第二抵押层单元在收到目标文件的ID号后,会将ID号对应的目标文件与一个没有分配的第一抵押层单元建立映射关系。具体地,建立映射关系的流程是,由第二抵押层单元获取到目标文件的属性信息和建立映射关系任务、获取到目标修复文件的属性信息和调整第一映射单元映射关系任务后,将任务分配至对应的第一抵押层单元,由第一抵押层单元将任务分配至第一区块链节点,由第一区块链节点执行调整第一映射单元映射关系的任务。
具体地,请参见图4,图4为本申请所提出的抵押层单元与封装层之间的映射关系示意图。在当前实施例中,将执行存储任务的第四区块链节点封装所得目标文件的存储区定义为封装层,在当前实施例中,封装层的结构可对应所提出的抵押层单元的结构,其中由图3可以得知,目标文件S1与第一抵押层单元m1对应,目标文件S2与第一抵押层单元m3对应,目标文件S3与第一抵押层单元m2对应,第一抵押层单元m4为没有分配的第一抵押层单元,D1、D2和D3为目标文件S1、S2和S3的原始数据备份或者是文件的备份。在当前实施例中所提供的技术方案中,通过将每个目标文件与一个第一抵押层单元一一对应,较好地实现了对于各个区块链节点中所存储目标文件的抵押扣除的精准控制,也为在出现损坏文件时修复得到目标修复文件后将损坏文件对应的抵押层单元与目标修复文件建立映射关系提供了基础。
请参见图5,图5为本申请一种去中心化存储的控制方法一实施例的流程示意图。在图5所示意的实施例中,本申请所提供的方法是从第四区块链节点角度进行阐述,即当前实施例中,本申请所提供的方法的执行主体是第四区块链节点。
首先说明,第四区块链节点是指存储有存在异常的目标文件的区块链节点。在执行本申请所提供的方法之前,第三区块链节点检测得到第四区块链节点没有上传目标文件的存储证明,或者是检测得到第四区块链节点没有及时更新目标文件的存储证明,第三区块链节点基于检测所得的结果判断得到目标文件存在异常,将修复目标文件任务分配至第二区块链节点,第二区块链节点根据自身所存储的目标文件的备份数据修复获得目标修复文件,第二区块链节点获得内容与目标文件相同的目标修复文件后,会将目标修复文件的存储证明以及属性信息进行上链处理,即将目标修复文件的存储证明以及属性信息上传至第二区块链节点的数据链,使得去中心化存储系统中的其他区块链节点根据节点同步性获知。此时会进一步触发调整目标文件所映射的第一抵押层单元的映射关系。具体地,可分别参见图5至图8所示意的实施例中包括的步骤。
具体地,图5所示意的方法包括:
S501:第四区块链节点获取目标修复文件的属性信息。
其中,目标文件是第四区块链节点所存储的存在异常的文件,目标修复文件的属性信息至少包括目标修复文件对应的目标文件所映射的第一抵押层单元的ID号和目标修复文件的ID号。
在当前实施例中,并不限定第四区块链节点获取到目标修复文件的属性信息的方式。具体地,第四区块链节点可以根据节点的同步性获得目标修复文件的属性信息。
在另一实施例中,当修复目标文件的任务是由第四区块链节点完成时,则目标修复文件的属性信息可以是由第四区块链节点自身获得。在又一实施例中,当修复目标文件的任务是由第四区块链节点以外的第二区块链节点完成的,也不排除可使用第二区块链节点直接发送目标修复文件的属性信息至第四区块链节点。
进一步地,另一实施例中,步骤S501可以包括:第四区块链节点获取第二区块链节点发送的至少部分目标修复文件属性信息。在当前实施例中,第二区块链节点发送至第四区块链节点目标文件属性信息还包括除去目标修复文件对应的目标文件所映射的第一抵押层单元的ID号和目标修复文件的ID号之外的内容时,这样在第四区块链节点执行步骤S501时只会获取所需的其中部分信息。
S502:上传调整第一抵押层单元映射关系请求和目标修复文件的属性信息至第一抵押层单元对应的第二抵押层单元,以调整第一抵押层单元的映射关系,使得第一抵押层单元的ID号映射至目标修复文件的ID号。
其中,目标修复文件是内容与目标文件相同的文件,第二抵押层单元是第一抵押层单元的上级抵押层单元,用于管理第一抵押层单元,第二抵押层单元可继承出多个第一抵押层单元。故只需将调整第一抵押层单元映射关系请求和目标修复文件的属性信息上传至对应的第二抵押层单元,第二抵押层单元会向第一抵押层单元分配调整第一抵押层单元映射关系的任务。由上可知,对于一个第一抵押层单元,可能会有多个不同级别的第二抵押层单元,故当包括多个不同级别的抵押层单元时,步骤S502可以是上传调整第一抵押层单元映射关系请求和目标修复文件的属性信息至最高级别的第二抵押层单元,然后由多个级别的第二抵押层单元依次向下分配直至分配至第一抵押层单元。在其他实施例中,也可以是上传至设定级别的第二抵押层单元,具体可以依据设定进行执行,在此不一一阐述。
在其他实施例中,也可以是由第二抵押层单元直接执行调整第一抵押层单元映射关系的任务,具体可以依据不同实施例的设定进行执行。
具体地,抵押层单元是智能合约的一部分。其中,智能合约是预设的、以数字形式定义的承诺(promises),包括合约参与方(即所有区块链节点)可以在上面执行这些承诺的协议。在不同实施例中,系统中可以包括多个智能合约,多个智能合约与不同级别抵押层单元对应设置,抵押层单元构成了智能合约的一部分,由于本申请所提供的技术方案中抵押层单元至少有第一抵押层单元和第二抵押层单元两个级别,故智能合约也至少就别两个级别,且高级的智能合约还具有管理和调用低级别的智能合约的作用。
图5所示意的实施例中,通过在修复得到目标修复文件后,获取目标修复文件的属性信息,上传调整第一抵押层单元映射关系请求和目标修复文件的属性信息至第一抵押层单元对应的第二抵押层单元,以使得第二抵押层单元调整第一抵押层单元的映射关系,使得第一抵押层单元的ID号映射至目标修复文件的ID号,较好地避免了损坏的目标文件映射的第一抵押层单元被扣除,较好完善去中心化存储网络,提高网络协作效率。
请参见图6,图6为本申请一种去中心化存储的控制方法一实施例中的流程示意图。在图6所示意的实施例中,是以第二抵押层单元为方向进行阐述本申请所提供的技术方案,也可以理解为在当前实施例中,去中心化存储的控制方法的执行主体是第二抵押层单元。
S601:第二抵押层单元获取第四区块链节点发送的目标修复文件的属性信息和调整第一抵押层单元映射关系请求。
其中,目标修复文件的属性信息至少包括目标修复文件对应的目标文件所映射的所述第一抵押层单元的ID号和目标修复文件的ID号,第二抵押层单元是第一抵押层单元的上级抵押层单元,第二抵押层单元可继承出多个第一抵押层单元,故第二抵押层单元还用于管理下级的第一抵押层单元。
S602:第二抵押层单元响应调整第一抵押层单元映射关系请求,将调整第一抵押层单元映射关系的任务分配至第一抵押层单元,以将第一抵押层单元的ID号与目标修复文件的ID号建立映射关系。
其中,每个第一抵押层单元与一个目标文件具有唯一映射关系,便于在需要时调整第一抵押层单元的映射关系。
第二抵押层单元将调整第一抵押层单元映射关系的任务分配至对应的第一抵押层单元。如,在图3所示意的实施例中,如果目标文件对应的第一抵押层单元是m2,则会至少有第二抵押层单元Actor1响应调整第一抵押层单元m2映射关系请求,并将调整第一抵押层单元m2映射关系任务分配至对应的第一抵押层单元m1,以使得第一抵押层单元执行该任务将第一抵押层单元m1的ID号与目标修复文件的ID号建立映射关系。
在另一实施例中,可以是由第一抵押层单元再次分配调整第一抵押层单元映射关系的任务至某一区块链节点,使得节点执行该任务,具体可以参见下文对应部分的阐述。
图6所示意的实施例,通过具有继承关系的抵押层单元,实现了在需要进行调整目标文件所映射的第一抵押层单元的映射关系时,可基于具有管理功能的第二抵押层单元分配调整第一抵押层单元映射关系的任务至对应的第一抵押层单元,可以灵活根据实际需要调整第一抵押层单元的映射关系,避免第一抵押层单元被扣除,实现较好完善去中心化存储网络,提高网络协作效率。
请参见图7,图7为本申请一种去中心化存储的控制方法一实施例的流程示意图。在当前实施例中,是以执行调整映射关系的第一区块链节点角度进行阐述,在当前实施例中本申请所提供的方法包括:
S701:第一区块链节点接收调整第一抵押层单元与目标文件映射关系的指令。
在当前实施例中,调整第一抵押层单元与目标文件映射关系是由目标文件对应的第一抵押层单元向第一区块链节点分配任务,是由第一区块链节点来执行完成。可以理解的,在其他实施例中,调整第一抵押层单元与目标文件映射关系的任务还可以是由目标文件对应的一个第二抵押层单元直接向第一区块链节点分配任务。
其中,第一区块链节点是执行抵押扣除的区块链节点。具体地,第一区块链节点包括:区块记账竞争胜出的区块链节点、预设的专用于建立目标文件和第一抵押层单元映射关系的区块链节点、第二区块链节点或第四区块链节点,具体依据实际的需要进行调整设定。
其中,当前实施例中,调整第一抵押层单元与目标文件映射关系的指令是由目标文件对应的第一抵押层单元发出。
需要说明的是,步骤S701和步骤S702是在第一区块链节点执行扣除目标文件对应的第一抵押层单元之前执行。
S702:第一区块链节点响应指令,取消第一抵押层单元与目标文件映射关系,并建立第一抵押层单元与目标修复文件的映射关系。第一区块链节点在接收到指令之后,首先需要取消第一抵押层单元与目标文件之间的映射关系,然后建立第一抵押层单元与目标修复文件的映射关系,并且会将取消第一抵押层单元与目标文件映射关系和建立第一抵押层单元与目标修复文件的映射关系上传至其对应的数据链,以使得系统中的其他区块链节点可以获知并记录。
其中,目标修复文件是基于目标文件备份数据生成,且内容与目标文件相同的文件。但是需要说明的是,目标修复文件的ID号与目标文件的ID号并不相同。
请参见图8,图8为本申请一种去中心化存储的控制方法另一实施例的流程示意图。在图8所对应的实施例中,进一步阐述了完成建立第一抵押层单元与目标修复文件映射关系后,第一区块链节点还会执行的内容,具体地,在当前实施例中,本申请所提供的方法包括:
S801:第一区块链节点接收调整第一抵押层单元与目标文件映射关系的指令。
S802:第一区块链节点响应指令,取消第一抵押层单元与目标文件映射关系,并建立第一抵押层单元与目标修复文件的映射关系。
图8中的步骤和图7中的步骤S701和步骤S702一样,可以参见图7中对应部分的阐述,具体在此不再赘述。
S803:将第一抵押层单元与目标修复文件的映射关系上传至第一区块链节点的数据链,以使其他区块链节点获知第一抵押层单元与目标修复文件的映射关系。
由于系统中的区块链节点具有同步性,故第一区块链节点通过将第一抵押层单元与目标修复文件的映射关系上传至第一区块链节点的数据链,其他区块链节点可基于节点的同步性获知第一抵押层单元与目标修复文件的映射关系,并记录保存至自身的数据链中。
S804:取消扣除目标文件所映射的第一抵押层单元。
经过上述步骤S801至步骤S803实现建立目标文件所映射的第一抵押层单元与修复所得的目标修复文件的映射关系,那么对应的,第一抵押层单元所映射的目标文件内容已经被完整地存储好,那么第一抵押层单元就可以不被扣除,故需要第一区块链节点取消扣除目标文件所映射的第一抵押层单元的流程。为保持技术完整性,下文会以节点交互的方式继续阐述本申请所提供的一种去中心化存储控制的方法。
请进一步参见图9,图9为本申请一种去中心化存储的控制方法再一实施例中各个节点交互示意图。在当前实施例中,本申请所提供的方法包括步骤S1至步骤S10。
具体方法包括如下步骤:
S1.第四区块链节点获得存储任务,存储目标文件,并生成存储证明上传至数据链。其中,第四区块链节点生成的存储证明是上传至自身的数据链,一些实施例中也可以简称为是进行上链。
S2.第二区块链节点获得目标文件的备份数据并保存。其中,第二区块链节点为存储有目标文件的备份数据且会执行基于备份数据生成目标修复文件的区块链节点,目标修复文件的内容与目标文件内容相同,备份数据包括:目标文件的原始数据的备份和/或目标文件的备份。
S3.第三区块链节点检测第四区块链节点是否上传目标文件的存储证明。根据智能合约,某一区块链节点成为第三区块链节点,来进行对第四区块链节点所存储的目标文件的存储证明进行抽查,通过检测第四区块链节点是否上传存储证明,或者是检测第四区块链节点是否按时更新存储证明,判断第四区块链节点所存储的目标文件是否存在异常。
S4.第三区块链节点若检测得到第四区块链节点没有上传目标文件的存储证明,则判断目标文件存在异常。
S5.分配或触发分配修复目标文件任务至第二区块链节点。为避免目标文件的第一抵押层单元被扣除,第三区块链节点会分配修复目标文件任务至第二区块链节点,需要说明的是,在一实施例中,第二区块链节点与第四区块链节点可以是同一区块链节点。
S6.上传目标文件存在异常的消息至第三区块链节点的数据链。第三区块链节点上传目标文件存在异常的消息至第三区块链节点的数据链,使得其他区块链节点可基于节点同步性获知,并触发执行步骤S7。
S7.触发第一区块链节点进入扣除目标文件所映射的第一抵押层单元的流程。需要说明的是,在触发第一区块链节点进入扣除目标文件所映射的第一抵押层单元的流程之后,并不会立即执行抵押扣除,而是会判断是否有关于目标文件的预设条件得到满足,并基于判断结果选择继续执行抵押扣除的流程,还是选择取消抵押扣除流程,即第一区块链节点会执行步骤S9。
S8.基于备份数据生成目标修复文件。第二区块链节点获得修复目标文件的任务后,会基于备份数据生成目标修复文件。
S9.第一区块链节点监测是否有关于目标文件的预设条件得到满足。
S10.监测到有关于目标文件的预设条件得到满足,则取消扣除目标文件所映射的第一抵押层单元的流程。
需要说明的是,在当前实施例中为便于描述是以先执行步骤S5,再依次执行步骤S6和S7,但是本申请所提供的技术方案中并不限定步骤S5和S6执行的前后步骤。同理对于步骤S1和S2也是,并不特定步骤S1和S2的顺序。
请参见图10,图10为本申请一种去中心化存储的控制方法又一实施例的示意图,图10具体阐述了将目标文件所映射的第一抵押层单元与目标修复文件建立映射关系的过程。在当前实施例中,本申请所提供的方法包括:
1.第四区块链节点获取目标修复文件的属性信息。
2.上传调整第一抵押层单元映射关系请求和目标修复文件的属性信息至第一抵押层单元对应的第二抵押层单元。
3.第二抵押层单元获取第四区块链节点发送的目标修复文件的属性信息和调整第一抵押层单元映射关系请求。
4.第二抵押层单元响应调整第一抵押层单元映射关系请求。
5.将调整第一抵押层单元映射关系的任务分配至第一抵押层单元。
6.第一抵押层单元分配调整映射关系的任务分配至第一区块链节点。
7.第一区块链节点执行调整映射关系的任务,取消第一抵押层单元与目标文件映射关系,并建立第一抵押层单元与目标修复文件的映射关系。
具体地,可参见图11,图11为本申请一种去中心化存储的控制方法再一实施例的数据修复示意图。图11所示意的是将修复目标文件任务分配至存储有目标文件备份数据的其他区块链节点设备中的区块链节点情形。在当前实施例中,假设区块链节点设备A中一个第四区块链节点对应的目标文件S11损坏,经过判断该第二区块链节点上没有存储目标文件备份数据,则会对应将目标文件修复任务分配至存储有该目标文件S11备份数据的区块链节点设备B中的第二区块链节点,当区块链节点设备B上的备份数据为目标文件S11的原始数据备份时,则会对该原始数据备份重新进行封装生成与损坏的目标文件S11内容相同的目标修复文件S24,并将目标修复文件S24的ID号上传至第二抵押层单元Actor1,然后根据智能合约第二抵押层单元Actor1会将原目标文件S11所映射的第一抵押层单元m1直接与目标修复文件S24进行映射,以避免原目标文件S11所映射的第一抵押层单元m1被扣除。
进一步地,另一实施例中,当区块链节点设备B上的备份数据为损坏的目标文件S11的文件备份时,此时可以直接选择该文件备份为目标修复文件,则可以直接将损坏的目标文件所映射的第一抵押层单元与该文件备份进行映射,可以直接省略进行数据封装的步骤,相比于备份数据为原始数据的方案,备份数据为文件备份的方案处理速度较快。需要说明的是,当备份数据为封装好的文件时,则对应的,该备份文件在执行修复目标文件任务之前是不会被链接到任何一个第一抵押层单元。
本申请还提供一种存储介质。请参见图12,图12为本申请一种存储介质一实施例中的结构示意图,在当前实施例中,存储介质1200存储有程序数据1201,所存储的程序数据1101被执行时可实现如上图3至图11及其各个实施例所述的一种去中心化存储的控制方法。具体地,上述具有存储功能的存储介质1200可以是存储器、个人计算机、服务器、网络设备或者U盘等其中的一种。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (8)
1.一种去中心化存储的控制方法,其特征在于,所述方法包括:
响应于第四区块链节点没有上传目标文件的存储证明或所述第四区块链节点没有及时更新所述目标文件的存储证明,第二抵押层单元获取所述第四区块链节点发送的目标修复文件的属性信息和调整第一抵押层单元映射关系请求,其中,所述目标文件是区块链节点执行存储任务所存储的文件,所述目标修复文件的属性信息至少包括所述目标修复文件对应的目标文件所映射的所述第一抵押层单元的ID号和所述目标修复文件的ID号;所述目标修复文件是内容与所述目标文件相同的文件,所述第二抵押层单元是所述第一抵押层单元的上级抵押层单元,用于管理所述第一抵押层单元,所述第二抵押层单元可继承出多个所述第一抵押层单元;
所述第二抵押层单元响应所述调整所述第一抵押层单元映射关系请求,将调整所述第一抵押层单元映射关系的任务分配至所述第一抵押层单元,以取消所述第一抵押层单元与所述目标文件的映射关系,并将所述第一抵押层单元的ID号与所述目标修复文件的ID号建立映射关系,以取消扣除所述第一抵押层单元;将取消所述第一抵押层单元与所述目标文件的映射关系以及将所述第一抵押层单元的ID号与所述目标修复文件的ID号建立映射关系上传至对应的数据链,以使所述数据链中的其他区块链节点能够获知并记录。
2.根据权利要求1所述的方法,其特征在于,一个所述第一抵押层单元与一个所述目标文件具有唯一映射关系。
3.一种去中心化存储的控制方法,其特征在于,所述方法包括:
响应于第四区块链节点没有上传目标文件的存储证明或所述第四区块链节点没有及时更新所述目标文件的存储证明,所述第四区块链节点获取目标修复文件的属性信息,所述属性信息至少包括所述目标修复文件对应的目标文件所映射的第一抵押层单元的ID号和所述目标修复文件的ID号;其中,所述目标文件是区块链节点执行存储任务所存储的文件,所述目标修复文件是内容与所述目标文件相同的文件;
上传调整所述第一抵押层单元映射关系请求和所述目标修复文件的属性信息至所述第一抵押层单元对应的第二抵押层单元,以取消所述第一抵押层单元与所述目标文件的映射关系,并将所述第一抵押层单元的ID号映射至所述目标修复文件的ID号,以取消扣除所述第一抵押层单元;将取消所述第一抵押层单元与所述目标文件的映射关系以及将所述第一抵押层单元的ID号与所述目标修复文件的ID号建立映射关系上传至对应的数据链,以使所述数据链中的其他区块链节点能够获知并记录;
其中,所述第二抵押层单元是所述第一抵押层单元的上级抵押层单元,用于管理所述第一抵押层单元,所述第二抵押层单元可继承出多个所述第一抵押层单元。
4.根据权利要求3所述的方法,其特征在于,所述第四区块链节点获取目标修复文件的属性信息包括:所述第四区块链节点获取第二区块链节点发送的至少部分所述目标修复文件属性信息。
5.一种去中心化存储的控制方法,其特征在于,所述方法包括:
响应于第四区块链节点没有上传目标文件的存储证明或所述第四区块链节点没有及时更新所述目标文件的存储证明,第一区块链节点接收调整第一抵押层单元与所述目标文件映射关系的指令;其中,所述目标文件是区块链节点执行存储任务所存储的文件;
所述第一区块链节点响应所述指令,取消所述第一抵押层单元与所述目标文件的映射关系,并建立所述第一抵押层单元与目标修复文件的映射关系,以取消扣除所述第一抵押层单元;将取消所述第一抵押层单元与所述目标文件的映射关系以及将所述第一抵押层单元的ID号与所述目标修复文件的ID号建立映射关系上传至对应的数据链,以使所述数据链中的其他区块链节点能够获知并记录;
其中,所述目标修复文件是内容与所述目标文件相同的文件,所述第一区块链节点是执行抵押扣除的区块链节点。
6.一种区块链节点设备,其特征在于,所述区块链节点设备包括处理器、存储器和通信电路,所述处理器与所述存储器和所述通信电路连接;
其中,所述存储器用于存储程序数据;
所述通信电路用于在所述处理器控制下与其他所述区块链节点设备进行通讯;
所述处理器用于运行所述存储器存储的所述程序数据,以执行如权利要求1至5任一项所述的方法。
7.一种去中心化存储系统,其特征在于,所述系统包括多个区块链节点设备,所述区块链节点设备可运行至少一个区块链节点,所述多个区块链节点设备间可进行点对点通信,所述区块链节点设备为如权利要求6所述的设备。
8.一种计算机存储介质,其特征在于,所述计算机存储介质存储有程序数据,所述程序数据能够被处理器执行以实现如权利要求1至5任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910310171.7A CN110020844B (zh) | 2019-04-17 | 2019-04-17 | 去中心化存储的控制方法、系统及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910310171.7A CN110020844B (zh) | 2019-04-17 | 2019-04-17 | 去中心化存储的控制方法、系统及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110020844A CN110020844A (zh) | 2019-07-16 |
CN110020844B true CN110020844B (zh) | 2023-08-01 |
Family
ID=67191759
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910310171.7A Active CN110020844B (zh) | 2019-04-17 | 2019-04-17 | 去中心化存储的控制方法、系统及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110020844B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10261711B1 (en) * | 2018-01-25 | 2019-04-16 | Merck Sharp & Dohme Corp. | Proof of non-tampering for stored data |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6237096B1 (en) * | 1995-01-17 | 2001-05-22 | Eoriginal Inc. | System and method for electronic transmission storage and retrieval of authenticated documents |
US20050273423A1 (en) * | 2004-05-28 | 2005-12-08 | Amir Kiai | System, method, and apparatus for a complete mortgage solution for borrowers, mortgage brokers, mortgage bankers, and investors |
CN103049354B (zh) * | 2012-12-21 | 2015-08-19 | 华为技术有限公司 | 数据修复方法、数据修复装置以及存储系统 |
CN106383754A (zh) * | 2016-09-19 | 2017-02-08 | 北京众享比特科技有限公司 | 一种基于区块链技术的数据库备份、恢复方法和系统 |
US10685399B2 (en) * | 2017-03-31 | 2020-06-16 | Factom, Inc. | Due diligence in electronic documents |
CN107682308B (zh) * | 2017-08-16 | 2019-12-13 | 北京航空航天大学 | 基于区块链潜信道技术的电子证据保存系统 |
CN108647523B (zh) * | 2018-04-28 | 2020-01-17 | 华南理工大学 | 一种基于区块链的电子证明系统及存证、文件恢复方法 |
CN109302442B (zh) * | 2018-07-26 | 2022-02-22 | 深圳市元征科技股份有限公司 | 一种数据存储证明方法及相关设备 |
-
2019
- 2019-04-17 CN CN201910310171.7A patent/CN110020844B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10261711B1 (en) * | 2018-01-25 | 2019-04-16 | Merck Sharp & Dohme Corp. | Proof of non-tampering for stored data |
Also Published As
Publication number | Publication date |
---|---|
CN110020844A (zh) | 2019-07-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108206852B (zh) | 一种微服务框架下的基于会话的服务实例管理方法及设备 | |
US10361928B2 (en) | Cluster instance management system | |
US10621004B2 (en) | Resource control stack based system for multiple domain presentation of cloud computing resource control | |
JP6568955B2 (ja) | Idの割り当てのためのバッテリモジュール及びセル構成の認識システム | |
CN102835068B (zh) | 用于管理系统资源的重新分配的方法和装置 | |
US7849178B2 (en) | Grid computing implementation | |
CN109886693B (zh) | 区块链系统的共识实现方法、装置、设备和介质 | |
CN111612615A (zh) | 基于公链的区块链子链创建方法及系统 | |
CN112532675A (zh) | 一种网络边缘计算系统的创建方法、装置及介质 | |
US7937704B2 (en) | Distributed computer | |
CN111240838B (zh) | 一种压力测试方法和装置 | |
EP3442201B1 (en) | Cloud platform construction method and cloud platform | |
CN109587220B (zh) | 负载均衡方法、装置、计算机设备和存储介质 | |
CN111818159A (zh) | 数据处理节点的管理方法、装置、设备及存储介质 | |
KR102456900B1 (ko) | 에지 컴퓨팅 기반 데이터 분석 시스템 및 그 방법 | |
CN106030536A (zh) | 用于资源管理的方法、计算机程序和节点 | |
CN110020844B (zh) | 去中心化存储的控制方法、系统及相关设备 | |
CN110933192A (zh) | 局域网ip地址分配方法、装置、系统、计算机设备 | |
CN113612866B (zh) | 地址检测方法、装置、计算机设备和存储介质 | |
WO2019034091A1 (zh) | 分布式数据计算的分配方法、装置、服务器及存储介质 | |
CN112532758B (zh) | 一种网络边缘计算系统的创建方法、装置及介质 | |
CN114237862A (zh) | 资源分配控制装置、计算机系统和资源分配控制方法 | |
WO2023016170A1 (zh) | 基于容器集群对联合计算多方进行服务校验的方法及系统 | |
CN116260827A (zh) | 一种集群中领导者的选举方法、选举系统及相关装置 | |
CN109800211A (zh) | 去中心化存储的控制方法、系统及相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |