1.一种分布式数据存储方法,其特征在于,状态数据的存储方式包括以全局索引表的方式存储,所述方法适用于区块链节点,所述方法包括:分别根据待存储的第一数量个连续区块中的第一账户地址的各状态数据生成第一状态数据集合;
分别对各所述第一状态数据集合执行如下操作:
根据所述第一账户地址、预配置的分布式数据存储规则确定将要接收所述第一状态数据集合的若干第一区块链节点;
将所述第一状态数据集合发送至各所述第一区块链节点以供存储所述第一状态数据集合;
在当前节点不包括于所述第一区块链节点时,在第一时长后删除所存储的所述第一状态数据集合;
删除所述第一数量个连续区块对应的全局索引表;
其中,所述第一状态数据集合用于供区块链节点:
接收第一查询指令;其中,所述第一查询指令包括第二账户地址和所查询的第一区块区间高度;
在本地未存有目标数据时,根据所述第二账户地址、所述分布式数据存储规则查找存储有所述第二账户地址的状态数据的若干第二区块链节点;
向若干所述第二区块链节点转发所述第一查询指令以供根据所述第二账户地址、所述第一区块区间高度查找目标数据,或,向若干所述第二区块链节点请求对应的状态数据集合,并根据返回的状态数据集合、所述第一区块区间高度查找目标数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一账户地址、预配置的分布式数据存储规则确定将要接收所述第一状态数据集合的若干第一区块链节点包括:计算各区块链节点的节点id与所述第一账户地址的第一距离;
将所述第一距离最小的第二数量个区块链节点确定为所述第一区块链节点;
所述根据所述第二账户地址、所述分布式数据存储规则查找存储有所述第二账户地址的状态数据的若干第二区块链节点包括:计算各区块链节点的节点id与所述第二账户地址的第二距离;
将所述第二距离最小的第二数量个区块链节点确定为所述第二区块链节点。
3.根据权利要求1或2所述的方法,其特征在于,所述第一数量个连续区块中的区块高度最大的第一区块的第一区块高度小于当前区块高度与安全回滚深度之差。
4.根据权利要求1或2所述的方法,其特征在于,所述在第一时长后删除所存储的所述第一状态数据集合包括:判断所述第一状态数据集合中的第一最新状态数据是否为区块链上的所述第一账户地址的第二最新状态数据:是,则在第一时长后,删除除去所述第一最新状态数据的所述第一状态数据集合。
5.一种数据查询方法,其特征在于,各区块链节点根据如权利要求1‑4任一项所述的方法分布式存储数据,所述方法适用于区块链节点,所述方法包括:接收第一查询指令;其中,所述第一查询指令包括第二账户地址和所查询的第一区块区间高度;
在本地未存有目标数据时,根据所述第二账户地址、所述分布式数据存储规则查找存储有所述第二账户地址的状态数据的若干第二区块链节点;
向若干所述第二区块链节点转发所述第一查询指令以供根据所述第二账户地址、所述第一区块区间高度查找目标数据,或,向若干所述第二区块链节点请求对应的状态数据集合,并根据返回的状态数据集合、所述第一区块区间高度查找目标数据。
6.一种计算机设备,其特征在于,所述设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1‑5中任一项所述的方法。
7.一种存储有计算机程序的存储介质,其特征在于,该程序被处理器执行时实现如权利要求1‑5中任一项所述的方法。