一种数据存储方法及数据存储系统与流程

文档序号:11275958阅读:230来源:国知局
一种数据存储方法及数据存储系统与流程

本发明涉及数据存储领域,特别是涉及一种数据存储方法及数据存储系统。



背景技术:

目前,传统的存储服务器架构需通过中心调度服务器管理各存储节点和存储设备数据读写。如图1所示,当存储设备产生io数据时,只有先将数据信息传至中心调度服务器,等待中心调度服务器产生返回消息时才将io数据写入存储中。但是当数据量增大、io请求激增时,中心调度服务器对请求消息队列的处理会产生明显延迟,因而极大影响存储系统性能。而且,当存储系统受到攻击或者其它外界条件影响时,只要中心调度服务器出现故障,整个存储系统就会瘫痪。

因此,如何提高数据存储的安全性,是本领域技术人员亟待解决的技术问题。



技术实现要素:

有鉴于此,本发明的目的在于提供一种数据存储方法及数据存储系统,可以去除中心化存储方式,节省人力管理成本,有效防止数据在保存中被篡改,极大提高数据的安全性。其具体方案如下:

一种数据存储方法,包括:

对多个存储设备进行区块划分,并连接所述区块形成至少一条区块链;各所述存储设备为所述区块链的节点;

当接收到写入数据的请求时,选取最优节点对数据进行写入,同时在所述区块链中所有节点的公有记录簿上增加所述最优节点写入数据的记录信息。

优选地,在本发明实施例提供的上述数据存储方法中,对多个存储设备进行区块分布,并连接所述区块形成至少一条区块链,具体包括:

对存储不同数据类型的多个存储设备进行分类;

将分类后存储相同的数据类型的多个存储设备进行区块划分,并连接所述区块形成对应的一条区块链;不同的数据类型对应不同的区块链。

优选地,在本发明实施例提供的上述数据存储方法中,采用下述方式选取最优节点:

通过预定算法由所述区块链中所有节点竞争获得将待写入数据的写入权限,所述具有写入权限的节点为选取的最优节点。

优选地,在本发明实施例提供的上述数据存储方法中,还包括:

对每一个所述写入数据结合公钥进行加密,当客户访问所述区块链时,通过与加密时生成的公钥的对应私钥进行解密,获取所述公有记录簿上记录信息的读取操作。

优选地,在本发明实施例提供的上述数据存储方法中,不同的区块链中存储数据不直接互通。

优选地,在本发明实施例提供的上述数据存储方法中,至少两个区块链合成一个新的区块链;所述新的区块链中存储数据互通。

本发明实施例还提供了一种数据存储系统,包括:

区块链建立模块,用于对多个存储设备进行区块划分,并连接所述区块形成至少一条区块链;各所述存储设备为所述区块链的节点;

数据写入模块,用于当接收到写入数据的请求时,选取最优节点对数据进行写入,同时在所述区块链中所有节点的公有记录簿上增加所述最优节点写入数据的记录信息。

本发明所提供的一种数据存储方法及数据存储系统,包括:对多个存储设备进行区块划分,并连接区块形成至少一条区块链;各存储设备为区块链的节点;当接收到写入数据的请求时,选取最优节点对数据进行写入,同时在区块链中所有节点的公有记录簿上增加最优节点写入数据的记录信息。本发明可以去除中心化存储方式,将传统数据存储分布式化,使数据的调度不必在数据中心进行,而实际分布在不同的节点上进行,这样节省人力管理成本,实现半自动化存储管理,存储架构简单方便利于构建,成本低廉,并且每次数据发生读写都可记录在公有记录簿上,对数据的变化轨迹可进行追踪,这样使得数据很难受到攻击,有效防止数据在保存中被篡改,极大提高数据的安全性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为现有技术中存储中心调度示意图;

图2为本发明实施例提供的数据存储方法流程图;

图3为本发明实施例提供的区块链的结构示意图;

图4为本发明实施例提供的嵌套区块链的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供一种数据存储方法,如图2所示,包括:

s201、对多个存储设备进行区块划分,并连接区块形成至少一条区块链;各存储设备为区块链的节点;

s202、当接收到写入数据的请求时,选取最优节点对数据进行写入,同时在区块链中所有节点的公有记录簿上增加最优节点写入数据的记录信息。

在本发明实施例提供的上述数据存储方法中,首先对多个存储设备进行区块划分,并连接区块形成至少一条区块链;各存储设备为区块链的节点;然后当接收到写入数据的请求时,选取最优节点对数据进行写入,同时在区块链中所有节点的公有记录簿上增加最优节点写入数据的记录信息。这种数据存储方法可以去除中心化存储方式,将传统数据存储分布式化,使数据的调度不必在数据中心进行,而实际分布在不同的节点上进行,这样节省人力管理成本,实现半自动化存储管理,存储架构简单方便利于构建,成本低廉,并且每次数据发生读写都可记录在公有记录簿上,对数据的变化轨迹可进行追踪,这样使得数据很难受到攻击,有效防止数据在保存中被篡改,极大提高数据的安全性。

需要说明的是,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构;也可以理解为,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算范式。区块链中的所有节点对外公开,数据存储是根据固定算法在节点之间进行。因此该存储方法存在数据io进行存储时,会根据最优节点(例如公开的接口查询距离最近的节点)进行数据io处理交互,而且该节点数据存储时,区块链所有节点都会在公有记录簿(每个区块链中节点都存在公有记录簿)增加记录校验,这里的公有记录簿可以看作高级目录,因为对外读取数据时,可以通过该公有记录簿查询并将io通道转到相应节点中。

进一步地,在具体实施时,在本发明实施例提供的上述数据存储方法中,执行步骤s201对多个存储设备进行区块分布,并连接区块形成至少一条区块链,具体可以包括以下步骤:

首先,对存储不同的多个存储设备进行分类;

之后,将分类后存储相同的数据类型的多个存储设备进行区块划分,并连接区块形成对应的一条区块链;不同的数据类型对应不同的区块链。

在此,需要说明的是,由于不同的存储设备中可以存储不同的业务类数据,本发明搭建节点通过设定建立区块链存储,类似于交换机端口的划zone,部分节点划到一个区块链中,部分节点划到另一个区块链中;将不同数据类型(即不同业务类数据)分散到不同的区块链中,这样便于大型数据存储,同时便于公有记录薄的查询。

进一步地,在具体实施时,在本发明实施例提供的上述数据存储方法中,采用下述方式选取最优节点:

通过预定算法由区块链中所有节点竞争获得将待写入数据的写入权限,具有写入权限的节点为选取的最优节点。

在此,这样通过预定算法对数据传输过程进行调度,分析当前适合存储的节点(即最优节点),进行数据io存储。

在具体实施时,在本发明实施例提供的上述数据存储方法中,该数据存储方法还可以包括:

对每一个写入数据结合公钥进行加密,当客户访问区块链时,通过与加密时生成的公钥的对应私钥进行解密,获取公有记录簿上记录信息的读取操作。

上述进行加密的过程,可以把一个私钥分享给多个客户,这些客户都有权利访问区块链,但是其余未被分配私钥的客户则无权访问,这样通过分配私钥达到分配权限的目的,客户只要管理好自身私钥就可以保证数据的安全。

在具体实施时,在本发明实施例提供的上述数据存储方法中,不同的区块链中存储数据可以不直接互通,即不同的区块链中存储数据互不影响。以图3为例,具有两个不同的区块链1和区块链2,区块链1和区块链2中的存储数据不直接互通,当发生数据io读写时,区块链1中的第一节点为最优节点,用于写入数据io,区块链1中的所有节点的公有记录簿上增加该记录信息,区块链2则不用发生任何操作。

另外,在具体实施时,在本发明实施例提供的上述数据存储方法中,至少两个区块链可以合成一个新的区块链;新的区块链中存储数据可以互通,这样方便业务数据跨区块链,便于复杂数据读写应用。以图4所示,区块链1和区块链2之间可以结合形成一个新的区块链10,区块链3和区块链4之间可以结合形成一个新的区块链20,当读取区块链10的存储数据时,可以分别通过区块链1和区块链2中的公有记录簿查询并将io通道转到相应节点中。

基于同一发明构思,本发明实施例还提供了一种数据存储系统,由于该方法解决问题的原理与前述一种数据存储方法相似,因此该数据存储系统的实施可以参见数据存储方法的实施,重复之处不再赘述。

在具体实施时,本发明实施例提供的数据存储系统,包括:

区块链建立模块,用于对多个存储设备进行区块划分,并连接区块形成至少一条区块链;各存储设备为区块链的节点;

数据写入模块,用于当接收到写入数据的请求时,选取最优节点对数据进行写入,同时在区块链中所有节点的公有记录簿上增加最优节点写入数据的记录信息。

在本发明实施例提供的上述数据存储系统中,仅通过区块链建立模块和数据写入模块的作用,不使用中心调度服务器,就可以节省人力资源成本,,实现半自动化存储管理,并且有效防止数据在保存中被篡改,极大提高数据的安全性。

本发明实施例提供的一种数据存储方法及数据存储系统,包括:对多个存储设备进行区块划分,并连接区块形成至少一条区块链;各存储设备为区块链的节点;当接收到写入数据的请求时,选取最优节点对数据进行写入,同时在区块链中所有节点的公有记录簿上增加最优节点写入数据的记录信息。本发明可以去除中心化存储方式,将传统数据存储分布式化,使数据的调度不必在数据中心进行,而实际分布在不同的节点上进行,这样节省人力管理成本,实现半自动化存储管理,存储架构简单方便利于构建,成本低廉,并且每次数据发生读写都可记录在公有记录簿上,对数据的变化轨迹可进行追踪,这样使得数据很难受到攻击,有效防止数据在保存中被篡改,极大提高数据的安全性。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上对本发明所提供的数据存储方法及数据存储系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1