CN110209679B - 一种用于提升访问效率的数据存储方法、终端设备 - Google Patents

一种用于提升访问效率的数据存储方法、终端设备 Download PDF

Info

Publication number
CN110209679B
CN110209679B CN201910269366.1A CN201910269366A CN110209679B CN 110209679 B CN110209679 B CN 110209679B CN 201910269366 A CN201910269366 A CN 201910269366A CN 110209679 B CN110209679 B CN 110209679B
Authority
CN
China
Prior art keywords
storage
node
information
target data
data
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
Application number
CN201910269366.1A
Other languages
English (en)
Other versions
CN110209679A (zh
Inventor
谢超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Terminus Beijing Technology Co Ltd
Original Assignee
Terminus Beijing Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Terminus Beijing Technology Co Ltd filed Critical Terminus Beijing Technology Co Ltd
Priority to CN201910269366.1A priority Critical patent/CN110209679B/zh
Publication of CN110209679A publication Critical patent/CN110209679A/zh
Application granted granted Critical
Publication of CN110209679B publication Critical patent/CN110209679B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2358Change logging, detection, and notification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2372Updates performed during offline database operations

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请提供一种数据存储方法、终端设备。其中,所述方法包括:获取待存储的目标数据;从存储网络数据库中确定预计在线时间互补的至少两个存储节点;将所述目标数据存储至所述至少两个存储节点;将所述目标数据的存储信息存储至所述存储网络数据库的各个节点。相较于现有技术,本申请提供的数据存储方法可以有效提高数据存储的安全性和可追溯性,且具备较高的访问效率。

Description

一种用于提升访问效率的数据存储方法、终端设备
技术领域
本申请涉及数据存储技术领域,具体涉及一种数据存储方法、终端设备。
背景技术
随着互联网技术的快速发展和大数据时代的到来,数据的重要性越来越高,相应的,对数据存储技术的要求也越来越高,尤其对于数据存储的真实性、不易失性、不可篡改性和可追溯性提出了越来越高的要求。
目前,数据存储主要依赖于数据服务器实现,这是一种高度中心化的存储方式,在遭受到黑客入侵、管理者篡改等非法事件后,可能被恶意篡改而不被用户察觉,从而给数据的用户带来严重的损失。
而且,随着分布式网络存储技术的快速发展,网络数据库中的节点越来越多,大量的非专用节点和多重网络节点在受到奖励机制的激励下加入到网络数据库中,但这些节点存在较大的不稳定性,容易发生离线的情况,从而导致如果使用该节点存储数据可能会面临存储的数据在需要访问时不可读取的问题,影响数据访问效率。
因此,如何提高网络存储技术的安全性,从而提供一种安全性更高的、可追溯的、且具备较高访问效率的数据存储方案,已成为迫切解决的问题。
发明内容
鉴于上述问题,本申请提供一种数据存储方法、装置、终端设备及计算机可读介质。
本申请第一方面提供一种数据存储方法,包括:
获取待存储的目标数据;
从存储网络数据库中确定预计在线时间互补的至少两个存储节点;
将所述目标数据存储至所述至少两个存储节点;
将所述目标数据的存储信息存储至所述存储网络数据库的各个节点。
在本申请第一方面的一些变更实施方式中,所述至少两个存储节点包括第一存储节点和第二存储节点;
所述从存储网络数据库中确定预计在线时间互补的至少两个存储节点,包括:
采用共识机制从存储网络数据库中确定第一存储节点;
从所述存储网络数据库中确定其预计在线时间与所述第一存储节点的预计在线时间互补的第二存储节点。
在本申请第一方面的一些变更实施方式中,所述从所述存储网络数据库中确定其预计在线时间与所述第一存储节点的预计在线时间互补的第二存储节点,包括:
确定所述存储网络数据库中各个节点的预计在线时间;
分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度;
选取互补度最高的所述节点作为第二存储节点。
在本申请第一方面的一些变更实施方式中,所述分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度,包括:
采用以下公式分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度:
Figure GDA0002132137420000021
其中,
a=x1-x0
b=y1-y0
上式中,σ表示互补度,m表示修正系数,a表示第一存储节点的预计在线时间的时长,b表示其他节点的预计在线时间的时长,c表示第一存储节点的预计在线时间与其他节点的预计在线时间的重合时长,x0和x1分别表示第一存储节点的预计在线时间的起始时间点和终止时间点,y0和y1分别表示其他节点的预计在线时间的起始时间点和终止时间点。
在本申请第一方面的一些变更实施方式中,所述将所述目标数据的存储信息存储至所述存储网络数据库的各个节点,包括:
生成所述目标数据的存储信息;
根据所述存储信息生成数据集合;
将所述数据集合存储至所述存储网络数据库的各个节点。
在本申请第一方面的一些变更实施方式中,所述生成所述目标数据的存储信息,包括:
生成所述目标数据的指纹信息;
根据所述指纹信息和存储所述目标数据的存储节点的节点标识,生成所述目标数据的存储信息。
在本申请第一方面的一些变更实施方式中,所述生成所述目标数据的指纹信息,包括:
获取所述目标数据的数据标识;以及,
采用消息摘要算法生成所述目标数据的摘要信息;
根据所述数据标识和所述摘要信息生成所述目标数据的指纹信息。
在本申请第一方面的一些变更实施方式中,所述根据所述存储信息生成数据集合,包括:
根据所述目标数据的数据标识或摘要信息,在所述存储网络数据库中查找所述目标数据的历史存储数据集合;
生成所述历史存储数据集合的摘要信息;
根据所述存储信息和所述历史存储数据集合的摘要信息,生成存储数据集。
在本申请第一方面的一些变更实施方式中,所述根据所述存储信息生成数据集合,包括:
在所述存储网络数据库中查找上一次存储事件对应的数据集合;
生成所述上一次存储事件对应的数据集合的摘要信息;
根据所述存储信息和所述上一次存储事件对应的数据集合的摘要信息,生成存储数据集。
本申请第二方面提供一种数据存储装置,包括:
目标数据获取模块,用于获取待存储的目标数据;
存储节点确定模块,用于从存储网络数据库中确定预计在线时间互补的至少两个存储节点;
目标数据存储模块,用于将所述目标数据存储至所述至少两个存储节点;
存储信息分发模块,用于将所述目标数据的存储信息存储至所述存储网络数据库的各个节点。
在本申请第二方面的一些变更实施方式中,所述至少两个存储节点包括第一存储节点和第二存储节点;所述存储节点确定模块,包括:
第一节点确定单元,用于采用共识机制从存储网络数据库中确定第一存储节点;
第二节点确定单元,用于从所述存储网络数据库中确定其预计在线时间与所述第一存储节点的预计在线时间互补的第二存储节点。
在本申请第二方面的一些变更实施方式中,所述第二节点确定单元,包括:
在线时间确定子单元,用于确定所述存储网络数据库中各个节点的预计在线时间;
互补度计算子单元,用于分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度;
第二节点选取子单元,用于选取互补度最高的所述节点作为第二存储节点。
在本申请第二方面的一些变更实施方式中,所述互补度计算子单元,具体采用以下公式分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度:
Figure GDA0002132137420000041
其中,
a=x1-x0
b=y1-y0
Figure GDA0002132137420000043
上式中,σ表示互补度,m表示修正系数,a表示第一存储节点的预计在线时间的时长,b表示其他节点的预计在线时间的时长,c表示第一存储节点的预计在线时间与其他节点的预计在线时间的重合时长,x0和x1分别表示第一存储节点的预计在线时间的起始时间点和终止时间点,y0和y1分别表示其他节点的预计在线时间的起始时间点和终止时间点。
在本申请第二方面的一些变更实施方式中,所述存储信息分发模块,包括:
存储信息生成单元,用于生成所述目标数据的存储信息;
数据集合生成单元,用于根据所述存储信息生成数据集合;
数据集合存储单元,用于将所述数据集合存储至所述存储网络数据库的各个节点。
在本申请第二方面的一些变更实施方式中,所述存储信息生成单元,包括:
指纹生成子单元,用于生成所述目标数据的指纹信息;
存储信息生成子单元,用于根据所述指纹信息和存储所述目标数据的存储节点的节点标识,生成所述目标数据的存储信息。
在本申请第二方面的一些变更实施方式中,所述指纹生成子单元,包括:
数据标识获取子单元,用于获取所述目标数据的数据标识;以及,
摘要信息生成子单元,用于采用消息摘要算法生成所述目标数据的摘要信息;
指纹信息生成子单元,用于根据所述数据标识和所述摘要信息生成所述目标数据的指纹信息。
在本申请第二方面的一些变更实施方式中,所述数据集合生成单元,包括:
历史数据集查询子单元,用于根据所述目标数据的数据标识或摘要信息,在所述存储网络数据库中查找所述目标数据的历史存储数据集合;
历史数据集摘要子单元,用于生成所述历史存储数据集合的摘要信息;
第一数据集生成子单元,用于根据所述存储信息和所述历史存储数据集合的摘要信息,生成存储数据集。
在本申请第二方面的一些变更实施方式中,所述数据集合生成单元,包括:
在先存储查询子单元,用于在所述存储网络数据库中查找上一次存储事件对应的数据集合;
在先存储摘要子单元,用于生成所述上一次存储事件对应的数据集合的摘要信息;
第一数据集生成子单元,用于根据所述存储信息和所述上一次存储事件对应的数据集合的摘要信息,生成存储数据集。
本申请第三方面提供一种终端设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行本申请第一方面所述的方法。
本申请第四方面提供一种计算机可读介质,其上存储有计算机可读指令,所述计算机可读指令可被处理器执行本申请第一方面所述的方法。
本申请第一方面提供的数据存储方法,包括:获取待存储的目标数据;从存储网络数据库中确定预计在线时间互补的至少两个存储节点;将所述目标数据存储至所述至少两个存储节点;将所述目标数据的存储信息存储至所述存储网络数据库的各个节点。相较于现有技术,本申请提供的数据存储方法,只需要将目标数据存储至存储网络数据库中的存储节点上,然后将所述目标数据的存储信息存储至所述存储网络数据库的各个节点,使得所述存储网络数据库的各个节点成为所述目标数据真伪的见证节点,由于所述存储信息不可能被轻易删除或篡改,从而可以确保目标数据的可追溯性和真实性。此外,本申请实施方式从存储网络数据库中选取预计在线时间互补的至少两个存储节点来存储目标数据,这样,当一个存储节点离线时,还可以从互补的其他存储节点上访问目标数据,从而提高所述目标数据可被访问的时长,因此可以有效避免因存储节点离线而导致数据不可访问的情况,确保了数据访问效率。另外,由于目标数据被存储至至少两个存储节点中,因此,当其中一个存储节点上的目标数据被篡改或删除后,还可以从另外的存储节点中访问所述目标数据,可以有效解决采用单一存储节点存储目标数据而存在的,目标数据被删除或篡改后,原始目标数据永久性丢失而无法再次访问的问题。综上,本申请第一方面提供的数据存储方法可以有效提高数据存储的安全性和可追溯性,且具备较高的访问效率。
本申请第二方面提供的数据存储装置、第三方面提供的终端设备以及第四方面提供的计算机可读介质,与上述第一方面提供的数据存储方法出于相同的发明构思,具有相同的有益效果。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本申请实施方式所提供的一种数据存储方法的流程图;
图2示出了本申请实施方式所提供的一种数据存储装置的示意图;
图3示出了本申请实施方式所提供的一种终端设备的示意图;
图4示出了本申请实施方式所提供的一种计算机可读介质的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本申请所属领域技术人员所理解的通常意义。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施方式提供了一种数据存储方法、装置、终端设备及计算机可读介质。下面结合附图对本申请的实施例进行说明。
请参考图1,其示出了本申请实施方式所提供的一种数据存储方法的流程图,所述数据存储方法,包括以下步骤:
步骤S101:获取待存储的目标数据。
步骤S102:从存储网络数据库中确定预计在线时间互补的至少两个存储节点。
本申请实施例中,所述存储网络数据库包括兼用于或专用于存储数据的网络数据库,在所述存储网络数据库中,目标数据可以存储于所述存储网络数据库的任意一个或多个节点,用于存储所述目标数据的节点可以暂称为存储节点,同时所述目标数据的存储信息则会存储于所述存储网络数据库的各个节点,而不会导致增大网络传输开销和提高各节点存储容量需求等问题,提供一种安全性更高的、可追溯的数据存储方案。
在一些实施方式中,所述从存储网络数据库中确定预计在线时间互补的至少两个存储节点,可以包括:
将存储网络数据库中的各个节点两两比较,从而确定出预计在线时间互补且预计在线时间之和最大的两个节点作为两个存储节点。
在一些实施方式中,所述至少两个存储节点包括第一存储节点和第二存储节点;所述从存储网络数据库中确定预计在线时间互补的至少两个存储节点,可以包括:
采用共识机制从存储网络数据库中确定第一存储节点;
从所述存储网络数据库中确定其预计在线时间与所述第一存储节点的预计在线时间互补的第二存储节点。
其中,所述共识机制可以使用现有技术中的任意共识算法实现,本申请不做限定。
通过上述实施方式,可以通过共识机制先选出最适合于存储所述目标数据的第一存储节点,然后再有针对性地从所述存储网络数据库中确定与所述第一存储节点时间互补的第二存储节点,整体上具有较高的存储质量和效率。
在一些实施方式中,所述从所述存储网络数据库中确定其预计在线时间与所述第一存储节点的预计在线时间互补的第二存储节点,可以包括:
确定所述存储网络数据库中各个节点的预计在线时间;
分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度;
选取互补度最高的所述节点作为第二存储节点。
所述各个节点的预计在线时间可以根据各所述节点的属性信息、历史在线数据和使用规划等确定,例如,对于某多重网络节点(可以参与多个网络数据库的节点,但需要按规定在各个网络数据库之间切换),其在本存储网络数据库的预计在线时间可以根据预先设定的切换规则、切换时间等确定;又如,某些节点的属性信息中已经记载了其在线时间,可以据此直接确定所述预计在线时间;再如,还可以根据节点的历史在线数据,通过统计确定该节点的预计在线时间,本申请实施例不再一一赘述,其均应在本申请的保护范围之内。
在一些实施方式中,所述分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度,可以包括:
采用以下公式分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度:
Figure GDA0002132137420000091
其中,
Figure GDA0002132137420000092
a=x1-x0
b=y1-y0
Figure GDA0002132137420000093
上式中,σ表示互补度,m表示修正系数,a表示第一存储节点的预计在线时间的时长,b表示其他节点的预计在线时间的时长,c表示第一存储节点的预计在线时间与其他节点的预计在线时间的重合时长,x0和x1分别表示第一存储节点的预计在线时间的起始时间点和终止时间点,y0和y1分别表示其他节点的预计在线时间的起始时间点和终止时间点。
通过上述实施方式,可以有效地确定其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度,互补度越高,最终确定的第二存储节点与所述第一存储节点的预计在线时间之和越长,目标数据可被访问的概率就越大,从而有效避免数据不可读取的问题。且由于引入的修正系数m,该修正系数m充分考虑了第一存储节点的预计在线时间与其他节点的预计在线时间相重合的问题,在上述修正系数的作用下,只有预计在线时间之和越长且重合时长越少的情况下,互补度才越高,这样选取的互补度最高的第一存储节点和第二存储节点才可以更加精准地互补,从而可以充分利用网络资源,提高存储的精准性和针对性。
步骤S103:将所述目标数据存储至所述至少两个存储节点。
步骤S104:将所述目标数据的存储信息存储至所述存储网络数据库的各个节点。
在一些实施方式中,所述将所述目标数据的存储信息存储至所述存储网络数据库的各个节点,可以包括:
生成所述目标数据的存储信息;
根据所述存储信息生成数据集合;
将所述数据集合存储至所述存储网络数据库的各个节点。
上述实施例,可以采用网络数据存储技术实现,例如,根据存储信息生成数据集合,所述数据集合可以为包含于其他数据集合的链接信息的数据集合,从而将各个数据集合链接起来形成分布式存储的大数据集,确保所述存储信息在存储后的不可篡改性和可追溯性。
在一些实施方式中,所述生成所述目标数据的存储信息,可以包括:
生成所述目标数据的指纹信息;
根据所述指纹信息和存储所述目标数据的存储节点的节点标识,生成所述目标数据的存储信息。
其中,在一些实施方式中,所述生成所述目标数据的指纹信息,可以包括:
获取所述目标数据的数据标识;以及,
采用消息摘要算法生成所述目标数据的摘要信息;
根据所述数据标识和所述摘要信息生成所述目标数据的指纹信息。
其中,所述目标数据的指纹信息可以采用信息摘要算法例如MD5算法等生成,本申请实施例不做限定。由于数据集链需要将数据集合在各个节点中进行存储或备份,其不适于对数据量较大(例如,MB、GB以上数据大小的数据对于目前的数据集链而言其数据量较大)的目标数据进行在存储网络数据库的各个节点进行存储,为了解决上述问题,本申请实施例中,将目标数据存储至网络数据库中的存储节点中,然后将目标数据的存储信息进行分布式存储,由于所述指纹信息的大小可以远远小于目标数据的大小,因此所述存储信息的大小可以确保对所述存储信息进行分布式存储,由于所述存储信息中含有所述目标数据的指纹信息,因此,所述存储信息可以有效地用于对目标数据的真伪进行辨识,从而确保所述目标数据的真实性和可追溯性。
综上,通过上述实施方式,可以利用所述指纹信息采用较小的数据量实现分布式存储以及对目标数据真实性的见证。
在一些实施方式中,所述根据所述存储信息生成数据集合,可以包括:
根据所述目标数据的数据标识或摘要信息,在所述存储网络数据库中查找所述目标数据的历史存储数据集合;
生成所述历史存储数据集合的摘要信息;
根据所述存储信息和所述历史存储数据集合的摘要信息,生成存储数据集。
通过上述实施方式,在生成存储数据集时,首先查询所述目标数据的历史存储数据集合,然后利用所述存储信息和所述历史存储数据集合的摘要信息生成存储数据集,从而将目标数据的当前版本与历史版本进行关联,形成数据集链,实现对目标数据的修改历史的追溯。
在一些实施方式中,所述根据所述存储信息生成数据集合,可以包括:
在所述存储网络数据库中查找上一次存储事件对应的数据集合;
生成所述上一次存储事件对应的数据集合的摘要信息;
根据所述存储信息和所述上一次存储事件对应的数据集合的摘要信息,生成存储数据集。
通过上述实施方式,在生成存储数据集时,首先查询所述存储网络数据库中上一次存储事件对应的数据集合,然后利用所述存储信息和所述上一次存储事件对应的数据集合的摘要信息生成存储数据集,从而将所述存储网络数据库中的各个存储事件的存储信息关联起来,形成数据集链,从而确保所述存储信息的不可篡改性和可追溯性,由于所述存储信息是用于对目标数据进行辨识或见证的,因此,可以进一步确保所述目标数据的可追溯性。
相较于现有技术,本申请实施例提供的数据存储方法,只需要将目标数据存储至存储网络数据库中的存储节点上,然后将所述目标数据的存储信息存储至所述存储网络数据库的各个节点,使得所述存储网络数据库的各个节点成为所述目标数据真伪的见证节点,由于所述存储信息不可能被轻易删除或篡改,从而可以确保目标数据的可追溯性和真实性。此外,本申请实施方式从存储网络数据库中选取预计在线时间互补的至少两个存储节点来存储目标数据,这样,当一个存储节点离线时,还可以从互补的其他存储节点上访问目标数据,从而提高所述目标数据可被访问的时长,因此可以有效避免因存储节点离线而导致数据不可访问的情况,确保了数据访问效率。另外,由于目标数据被存储至至少两个存储节点中,因此,当其中一个存储节点上的目标数据被篡改或删除后,还可以从另外的存储节点中访问所述目标数据,可以有效解决采用单一存储节点存储目标数据而存在的,目标数据被删除或篡改后,原始目标数据永久性丢失而无法再次访问的问题。综上,本申请第一方面提供的数据存储方法可以有效提高数据存储的安全性和可追溯性,且具备较高的访问效率。
所述的装置可以包括使用了本申请所述数据存储方法的系统(包括分布式系统)、软件(应用)、模块、组件、服务器、客户端、量子计算机等并结合必要的实施硬件的装置。基于同一创新构思,本申请提供的一种实施例中的装置如下面的实施例所述。由于装置解决问题的实现方案与方法相似,因此本申请具体的装置的实施可以参见前述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
具体的,图2是本申请提供的一种数据存储装置实施例的模块结构示意图,如图2所示,所述数据存储装置10,可以包括:
目标数据获取模块101,用于获取待存储的目标数据;
存储节点确定模块102,用于从存储网络数据库中确定预计在线时间互补的至少两个存储节点;
目标数据存储模块103,用于将所述目标数据存储至所述至少两个存储节点;
存储信息分发模块104,用于将所述目标数据的存储信息存储至所述存储网络数据库的各个节点。
在本申请实施例的一些变更实施方式中,所述至少两个存储节点包括第一存储节点和第二存储节点;所述存储节点确定模块102,包括:
第一节点确定单元,用于采用共识机制从存储网络数据库中确定第一存储节点;
第二节点确定单元,用于从所述存储网络数据库中确定其预计在线时间与所述第一存储节点的预计在线时间互补的第二存储节点。
在本申请实施例的一些变更实施方式中,所述第二节点确定单元,包括:
在线时间确定子单元,用于确定所述存储网络数据库中各个节点的预计在线时间;
互补度计算子单元,用于分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度;
第二节点选取子单元,用于选取互补度最高的所述节点作为第二存储节点。
在本申请实施例的一些变更实施方式中,所述互补度计算子单元,具体采用以下公式分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度:
Figure GDA0002132137420000131
其中,
Figure GDA0002132137420000132
a=x1-x0
b=y1-y0
Figure GDA0002132137420000133
上式中,σ表示互补度,m表示修正系数,a表示第一存储节点的预计在线时间的时长,b表示其他节点的预计在线时间的时长,c表示第一存储节点的预计在线时间与其他节点的预计在线时间的重合时长,x0和x1分别表示第一存储节点的预计在线时间的起始时间点和终止时间点,y0和y1分别表示其他节点的预计在线时间的起始时间点和终止时间点。
在本申请实施例的一些变更实施方式中,所述存储信息分发模块104,包括:
存储信息生成单元,用于生成所述目标数据的存储信息;
数据集合生成单元,用于根据所述存储信息生成数据集合;
数据集合存储单元,用于将所述数据集合存储至所述存储网络数据库的各个节点。
在本申请实施例的一些变更实施方式中,所述存储信息生成单元,包括:
指纹生成子单元,用于生成所述目标数据的指纹信息;
存储信息生成子单元,用于根据所述指纹信息和存储所述目标数据的存储节点的节点标识,生成所述目标数据的存储信息。
在本申请实施例的一些变更实施方式中,所述指纹生成子单元,包括:
数据标识获取子单元,用于获取所述目标数据的数据标识;以及,
摘要信息生成子单元,用于采用消息摘要算法生成所述目标数据的摘要信息;
指纹信息生成子单元,用于根据所述数据标识和所述摘要信息生成所述目标数据的指纹信息。
在本申请实施例的一些变更实施方式中,所述数据集合生成单元,包括:
历史数据集查询子单元,用于根据所述目标数据的数据标识或摘要信息,在所述存储网络数据库中查找所述目标数据的历史存储数据集合;
历史数据集摘要子单元,用于生成所述历史存储数据集合的摘要信息;
第一数据集生成子单元,用于根据所述存储信息和所述历史存储数据集合的摘要信息,生成存储数据集。
在本申请实施例的一些变更实施方式中,所述数据集合生成单元,包括:
在先存储查询子单元,用于在所述存储网络数据库中查找上一次存储事件对应的数据集合;
在先存储摘要子单元,用于生成所述上一次存储事件对应的数据集合的摘要信息;
第一数据集生成子单元,用于根据所述存储信息和所述上一次存储事件对应的数据集合的摘要信息,生成存储数据集。
在本申请实施例的一些变更实施方式中,所述目标数据存储模块102,包括:
多节点存储单元,用于将所述目标数据存储至存储网络数据库中的多个存储节点。
本申请实施例提供的数据存储装置10,与本申请前述实施例提供的数据存储方法出于相同的发明构思,具有相同的有益效果。
在上述的实施例中,提供了一种数据存储方法及装置,与之相对应的,本申请还提供一种终端设备,所述终端设备可以是任意的具有存储功能的电子设备,且可以作为存储网络数据库中的节点,例如,服务器、服务器集群、台式计算机、笔记本电脑、智能手机等。请参考图3,图3为本申请实施例提供的一种终端设备的示意图。如图3所示,所述终端设备20包括:处理器200,存储器201,总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本申请提供的任一数据存储方法。
其中,存储器201可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如磁盘存储器。通过通信接口203(可以是有线或者无线)实现该系统网元与其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
总线202可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述数据存储方法可以应用于处理器200中,或者由处理器200实现。
处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。
本申请实施例提供的终端设备与本申请实施例提供的数据存储方法出于相同的发明构思,具有相同的有益效果。
本申请实施例还提供一种与上述数据存储方法相对应的计算机可读介质,请参考图4,其示出的计算机可读存储介质为光盘30,其上存储有计算机程序(即程序产品),所述计算机程序在被处理器运行时,会执行前述任意实施例所提供的数据存储方法。
需要说明的是,所述计算机可读存储介质的例子还可以包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他光学、磁性存储介质,在此不再一一赘述。
本申请实施例提供的计算机可读存储介质与本申请实施例提供的数据存储出于相同的发明构思,具有相同的有益效果。
需要说明的是,附图中的流程图和框图显示了根据本申请的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围,其均应涵盖在本申请的权利要求和说明书的范围当中。

Claims (7)

1.一种数据存储方法,其特征在于,包括:
获取待存储的目标数据;
采用共识机制从存储网络数据库中确定第一存储节点;
确定所述存储网络数据库中各个节点的预计在线时间;
分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度;
选取互补度最高的所述节点作为第二存储节点;
将所述目标数据存储至所述第一存储节点和所述第二存储节点;
将所述目标数据的存储信息存储至所述存储网络数据库的各个节点;
其中,所述分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度,包括:
采用以下公式分别计算其他各所述节点的预计在线时间与所述第一存储节点的预计在线时间的互补度:
Figure FDA0002239482960000011
其中,
Figure FDA0002239482960000012
a=x1-x0
b=y1-y0
Figure FDA0002239482960000013
上式中,σ表示互补度,m表示修正系数,a表示第一存储节点的预计在线时间的时长,b表示其他节点的预计在线时间的时长,c表示第一存储节点的预计在线时间与其他节点的预计在线时间的重合时长,x0和x1分别表示第一存储节点的预计在线时间的起始时间点和终止时间点,y0和y1分别表示其他节点的预计在线时间的起始时间点和终止时间点。
2.根据权利要求1所述的方法,其特征在于,所述将所述目标数据的存储信息存储至所述存储网络数据库的各个节点,包括:
生成所述目标数据的存储信息;
根据所述存储信息生成数据集合;
将所述数据集合存储至所述存储网络数据库的各个节点。
3.根据权利要求2所述的方法,其特征在于,所述生成所述目标数据的存储信息,包括:
生成所述目标数据的指纹信息;
根据所述指纹信息和存储所述目标数据的存储节点的节点标识,生成所述目标数据的存储信息。
4.根据权利要求3所述的方法,其特征在于,所述生成所述目标数据的指纹信息,包括:
获取所述目标数据的数据标识;以及,
采用消息摘要算法生成所述目标数据的摘要信息;
根据所述数据标识和所述摘要信息生成所述目标数据的指纹信息。
5.根据权利要求2所述的方法,其特征在于,所述根据所述存储信息生成数据集合,包括:
根据所述目标数据的数据标识或摘要信息,在所述存储网络数据库中查找所述目标数据的历史存储数据集合;
生成所述历史存储数据集合的摘要信息;
根据所述存储信息和所述历史存储数据集合的摘要信息,生成存储数据集。
6.根据权利要求2所述的方法,其特征在于,所述根据所述存储信息生成数据集合,包括:
在所述存储网络数据库中查找上一次存储事件对应的数据集合;
生成所述上一次存储事件对应的数据集合的摘要信息;
根据所述存储信息和所述上一次存储事件对应的数据集合的摘要信息,生成存储数据集。
7.一种终端设备,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器运行所述计算机程序时执行权利要求1至6任一项所述的方法。
CN201910269366.1A 2019-04-04 2019-04-04 一种用于提升访问效率的数据存储方法、终端设备 Active CN110209679B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910269366.1A CN110209679B (zh) 2019-04-04 2019-04-04 一种用于提升访问效率的数据存储方法、终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910269366.1A CN110209679B (zh) 2019-04-04 2019-04-04 一种用于提升访问效率的数据存储方法、终端设备

Publications (2)

Publication Number Publication Date
CN110209679A CN110209679A (zh) 2019-09-06
CN110209679B true CN110209679B (zh) 2020-01-31

Family

ID=67785138

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910269366.1A Active CN110209679B (zh) 2019-04-04 2019-04-04 一种用于提升访问效率的数据存储方法、终端设备

Country Status (1)

Country Link
CN (1) CN110209679B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103713852A (zh) * 2012-09-28 2014-04-09 联想(北京)有限公司 一种信息处理方法、服务平台及电子设备
CN104376087A (zh) * 2014-11-19 2015-02-25 天津南大通用数据技术股份有限公司 一种采用交叉备份的分布式数据库负载均衡的计算方法
US9374379B1 (en) * 2007-06-26 2016-06-21 Aol Inc. Application unlock
CN105721223A (zh) * 2016-03-30 2016-06-29 苏州美天网络科技有限公司 具有备份服务功能的网络服务器系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9374379B1 (en) * 2007-06-26 2016-06-21 Aol Inc. Application unlock
CN103713852A (zh) * 2012-09-28 2014-04-09 联想(北京)有限公司 一种信息处理方法、服务平台及电子设备
CN104376087A (zh) * 2014-11-19 2015-02-25 天津南大通用数据技术股份有限公司 一种采用交叉备份的分布式数据库负载均衡的计算方法
CN105721223A (zh) * 2016-03-30 2016-06-29 苏州美天网络科技有限公司 具有备份服务功能的网络服务器系统

Also Published As

Publication number Publication date
CN110209679A (zh) 2019-09-06

Similar Documents

Publication Publication Date Title
CN106933854B (zh) 短链接处理方法、装置及服务器
CN107395659B (zh) 一种业务受理及共识的方法及装置
US10560270B2 (en) Optimal data storage configuration in a blockchain
CN109831487B (zh) 分片文件验证方法及终端设备
JP6435398B2 (ja) 端末識別子を促進する方法及びシステム
US11157652B2 (en) Obfuscation and deletion of personal data in a loosely-coupled distributed system
CN110543448A (zh) 数据同步方法、装置、设备及计算机可读存储介质
CN109032803B (zh) 数据处理方法和装置、客户端
CN111352902A (zh) 日志处理方法、装置、终端设备及存储介质
CN110113393B (zh) 一种消息推送方法、装置、电子设备及介质
US20210158353A1 (en) Methods, systems, apparatuses, and devices for processing request in consortium blockchain
CN107179940B (zh) 一种任务执行的方法及装置
CN111475105B (zh) 监控数据存储方法、设备、服务器及存储介质
CN109918382A (zh) 数据处理方法、装置、终端及存储介质
CN111061758B (zh) 数据存储方法、装置及存储介质
CN112214519B (zh) 一种数据查询方法、装置、设备及可读介质
CN109145053B (zh) 数据处理方法和装置、客户端、服务器
US9864870B2 (en) Restricting network spidering
CA3057038A1 (en) Data filtering method, apparatus, electronic apparatus and storage medium
CN108399175B (zh) 一种数据存储、查询方法及其装置
CN110209347B (zh) 一种可追溯的数据存储方法
CN110209679B (zh) 一种用于提升访问效率的数据存储方法、终端设备
JP6233846B2 (ja) 可変長ノンスの生成
CN110209666B (zh) 一种数据存储方法及终端设备
US20130054580A1 (en) Data Point Dictionary

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