一种上链数据读取系统的制作方法

文档序号:21179201发布日期:2020-06-20 17:41阅读:254来源:国知局
一种上链数据读取系统的制作方法

本发明涉及一种上链数据读取系统。



背景技术:

随着互联网技术的发展,区块链由于具有去中心化、开放性、安全性、自治性等优点而被广泛应用于数据的存储和交互。当使用区块链存储数据时,需要将数据存储至区块中。用户采用现有的上链数据读取方式时需要在上链数据被区块链记录后才能从区块链中读取上链数据,数据读取所占用的时间较长,效率较低。



技术实现要素:

本发明的目的在于提供一种上链数据读取系统,用于解决用户采用现有的上链数据读取方式时需要在上链数据被区块链记录后才能从区块链中读取上链数据,数据读取所占用的时间较长,效率较低的问题。

为了解决上述问题,本发明采用以下技术方案:

一种上链数据读取系统,包括备份服务器和区块链系统,所述备份服务器与所述区块链系统相连接;

所述备份服务器对上链数据进行备份,得到相同的第一上链数据和第二上链数据,所述备份服务器将所述第一上链数据发送至区块链系统,所述区块链系统包括内存数据库,所述内存数据库用于存储所述第一上链数据;所述备份服务器将所述第二上链数据存储至所述备份服务器中;

当所述区块链系统接收到上链数据读取指令时,根据所述上链数据读取指令判断所述备份服务器中是否存在与所述上链数据读取指令对应的第二上链数据;

若所述备份服务器中存在与所述上链数据读取指令对应的第二上链数据,则从所述备份服务器中获取所述第二上链数据;

若所述备份服务器中不存在与所述上链数据读取指令对应的第二上链数据,则从所述区块链系统中获取与所述上链数据读取指令对应的第一上链数据;

所述区块链系统返回获取到的上链数据。

可选地,所述区块链系统判断所述第一上链数据是否上链成功;

若所述第一上链数据上链成功,则从所述备份服务器中删除所述第二上链数据。

本发明的有益效果为:备份服务器对上链数据进行备份,得到两个相同的上链数据,这两个上链数据分别存储在区块链系统和备份服务器中。当区块链系统接收到上链数据读取指令时,根据上链数据读取指令先判断备份服务器中是否存在与上链数据读取指令对应的第二上链数据,如果有,则从备份服务器中获取第二上链数据;如果没有,则从区块链系统中获取与上链数据读取指令对应的第一上链数据。由于对上链数据进行了备份,所以即使上链数据暂未被区块链记录,也可以从备份服务器中查找到上链数据,因此无需等待数据成功上链,减少数据读取所占用的时间,进而提升读取效率。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍:

图1是上链数据读取系统的结构示意图。

具体实施方式

如图1所示,本实施例提供一种上链数据读取系统,包括备份服务器和区块链系统,备份服务器和区块链系统相连接。

备份服务器可以是硬件服务器设备,比如:是一个单独的服务器,或者是由多个服务器构成的组合服务器系统;也可以是由软件模块构成的虚拟软件设备。同理,区块链系统可以是硬件设备,比如:是一个单独的服务器,或者是由多个服务器构成的组合服务器系统;也可以是由软件模块构成的虚拟软件设备。备份服务器和区块链系统之间可以有线通信连接,也可以无线通信连接。

备份服务器用于对接收到的上链数据进行备份,本实施例中,备份服务器通过客户端接收上链数据。其中,客户端可以为手机、台式电脑、平板电脑、笔记本电脑等。客户端的数量根据实际应用场景进行确定,可以是一个客户端,也可以是多个客户端。

当客户端需要将一些数据记录在区块链时,向备份服务器输出上链数据。备份服务器对接收到的上链数据进行备份,得到相同的第一上链数据和第二上链数据,具体地:将上链数据进行复制,原上链数据为第一上链数据,复制得到的数据为第二上链数据。

备份服务器将第一上链数据发送至区块链系统。区块链系统包括内存数据库,内存数据库用于存储第一上链数据。内存数据库的写入速度远远高于传统的磁盘数据库的写入速度,那么,将上链数据存入内存数据库能够有效提高存储效率。而且,即便上链数据被高频率的写入内存数据库时也不会对区块链性能造成影响。

备份服务器将第二上链数据存储至备份服务器中,备份服务器中的存储方式由实际需要进行设置,比如备份服务器中也设置内存数据库,该内存数据库用于存储第二上链数据。或者,在备份服务器中设置一个指定存储区域,指定存储区域可以根据实际需求进行设置,可以设置为缓存区域,也可以设置为持久化存储区域。

当区块链系统接收到上链数据读取指令时,比如:当客户端需要查询上链数据时,可以发送上链数据读取指令至区块链系统(那么,客户端连接备份服务器和区块链系统,具体地:可以设置两个客户端,第一客户端连接备份服务器,第二客户端连接区块链系统,第一客户端用于发送上链数据,第二客户端用于发送上链数据读取指令)。

区块链系统根据上链数据读取指令判断备份服务器中是否存在与上链数据读取指令对应的第二上链数据,即区块链系统根据上链数据读取指令判断备份服务器中是否存在与上链数据读取指令对应的上链数据:若备份服务器中存在与上链数据读取指令对应的第二上链数据,则从备份服务器中获取第二上链数据;若备份服务器中不存在与上链数据读取指令对应的第二上链数据,则从区块链系统中获取与上链数据读取指令对应的第一上链数据。

区块链系统获取到上链数据之后,返回获取到的上链数据,具体将上链数据发送给上链数据读取指令的发布方,即第二客户端。

由于对上链数据进行了备份,所以即使上链数据暂未被区块链记录,也可以从备份服务器中查找到第二上链数据,因此无需等待数据上链,减少数据读取所占用的时间,进而提升读取效率。

进一步地,区块链系统还能够判断第一上链数据是否上链成功,若第一上链数据上链成功,表示能够直接从区块链系统中获取到上链数据,则无需从备份服务器中获取上链数据,此时为了节约备份服务器的存储空间,则从备份服务器中删除第二上链数据。

另外,若备份服务器在短时间内接收到大量上链数据时,可能会造成备份服务器阻塞,影响上链效率,因此,备份服务器在接收上链数据时,可以排队按照先入先出的方式接收上链数据,然后依次从队列中提取上链数据进行上链操作,可以避免上链数据过多时导致备份服务器阻塞,提高上链效率。

上述实施例仅以一种具体的实施方式说明本发明的技术方案,任何对本发明进行的等同替换及不脱离本发明精神和范围的修改或局部替换,其均应涵盖在本发明权利要求保护的范围之内。



技术特征:

1.一种上链数据读取系统,其特征在于,包括备份服务器和区块链系统,所述备份服务器与所述区块链系统相连接;

所述备份服务器对上链数据进行备份,得到相同的第一上链数据和第二上链数据,所述备份服务器将所述第一上链数据发送至区块链系统,所述区块链系统包括内存数据库,所述内存数据库用于存储所述第一上链数据;所述备份服务器将所述第二上链数据存储至所述备份服务器中;

当所述区块链系统接收到上链数据读取指令时,根据所述上链数据读取指令判断所述备份服务器中是否存在与所述上链数据读取指令对应的第二上链数据;

若所述备份服务器中存在与所述上链数据读取指令对应的第二上链数据,则从所述备份服务器中获取所述第二上链数据;

若所述备份服务器中不存在与所述上链数据读取指令对应的第二上链数据,则从所述区块链系统中获取与所述上链数据读取指令对应的第一上链数据;

所述区块链系统返回获取到的上链数据。

2.根据权利要求1所述的上链数据读取系统,其特征在于,所述区块链系统判断所述第一上链数据是否上链成功;

若所述第一上链数据上链成功,则从所述备份服务器中删除所述第二上链数据。


技术总结
本发明涉及一种上链数据读取系统,包括备份服务器和区块链系统,备份服务器对上链数据进行备份,得到相同的第一上链数据和第二上链数据,将第一上链数据发送至区块链系统,将第二上链数据存储至备份服务器中,根据上链数据读取指令判断备份服务器中是否存在与上链数据读取指令对应的第二上链数据,然后根据判断结果从对应位置获取上链数据,最后返回获取到的上链数据。由于对上链数据进行了备份,所以即使上链数据暂未被区块链记录,也可以从备份服务器中查找到上链数据,因此无需等待数据成功上链,减少数据读取所占用的时间,进而提升读取效率。

技术研发人员:刘翱天;张辉
受保护的技术使用者:刘翱天
技术研发日:2020.02.10
技术公布日:2020.06.19
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1