CN112433986B - 数据的存储方法、电子设备以及计算机可读存储介质 - Google Patents

数据的存储方法、电子设备以及计算机可读存储介质 Download PDF

Info

Publication number
CN112433986B
CN112433986B CN202011205069.XA CN202011205069A CN112433986B CN 112433986 B CN112433986 B CN 112433986B CN 202011205069 A CN202011205069 A CN 202011205069A CN 112433986 B CN112433986 B CN 112433986B
Authority
CN
China
Prior art keywords
data
information
increment information
increment
storage medium
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
CN202011205069.XA
Other languages
English (en)
Other versions
CN112433986A (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.)
Shenzhen Institute of Advanced Technology of CAS
Original Assignee
Shenzhen Institute of Advanced Technology of CAS
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 Shenzhen Institute of Advanced Technology of CAS filed Critical Shenzhen Institute of Advanced Technology of CAS
Priority to CN202011205069.XA priority Critical patent/CN112433986B/zh
Publication of CN112433986A publication Critical patent/CN112433986A/zh
Application granted granted Critical
Publication of CN112433986B publication Critical patent/CN112433986B/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/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • G06F16/137Hash-based
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/172Caching, prefetching or hoarding of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1748De-duplication implemented within the file system, e.g. based on file segments
    • G06F16/1756De-duplication implemented within the file system, e.g. based on file segments based on delta files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

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

Abstract

本申请涉及数据存储技术领域,公开了数据的存储方法、电子设备以及计算机可读存储介质。该方法包括:获取对应目标数据的增量信息;其中,目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中,增量信息基于对目标数据的操作产生;将增量信息进行存储,并建立与多个数据块中对应数据块的关联关系。通过上述方式,能够提高DNA存储介质中数据更新效率,减少存储成本。

Description

数据的存储方法、电子设备以及计算机可读存储介质
技术领域
本申请涉及数据存储技术领域,特别是涉及一种数据的存储方法、电子设备以及计算机可读存储介质。
背景技术
DNA(deoxyribonucleic acid,脱氧核糖核酸)存储因其存储密度大以及存储时间长等良好特性近年来成为科研界热点,被认为是一种具有巨大应用前景的信息存储技术,DNA存储是一项着眼于未来的具有划时代意义存储技术,它利用人工合成的脱氧核糖核酸(DNA)作为存储介质,具有高效、存储量大、存储时间长、易获取且免维护的优点。目前DNA存储在编码系统的设计与改进、提高存储密度和加强单方信息存储可靠性等方面已取得了一定进展,而在DNA信息存储实现高效的数据更新以及数据管理方面技术有待提升。
当前已有方案在做数据更新时所需花费较大,由于DNA存储是将计算机存储的数据转换成DNA序列文件,若需要修改数据,目前阶段是需要在生物体内或体外存储读取DNA序列,并解码恢复成计算机存储的文件,将增加的数据一同编码再进行DNA存储操作。该过程花费成本较大,在信息更新频繁时,数据更新效率非常低。
发明内容
本申请主要解决的技术问题是提供数据的存储方法、电子设备以及计算机可读存储介质,能够提高DNA存储介质中数据更新效率,减少存储成本。
本申请采用的一种技术方案是提供一种数据的存储方法,该方法包括:获取对应目标数据的增量信息;其中,目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中,增量信息基于对目标数据的操作产生;将增量信息进行存储,并建立与多个数据块中对应数据块的关联关系。
其中,获取对应目标数据的增量信息,包括:获取当前时刻产生的至少一个增量信息;将增量信息进行存储,并建立与多个数据块中对应数据块的关联关系,包括:将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与多个数据块中对应数据块、或有向无环图中历史添加的增量信息的关联关系;其中,历史添加的增量信息与多个数据块中对应数据块存在关联关系。
其中,获取当前时刻产生的至少一个增量信息,包括:获取当前时刻产生的至少一个增量信息以及对应的用户信息;将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与多个数据块中对应数据块、或有向无环图中历史添加的增量信息的关联关系,包括:将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与多个数据块中对应数据块、或有向无环图中历史添加的对应用户信息的增量信息的关联关系。
其中,获取当前时刻产生的至少一个增量信息以及对应的用户信息,包括:获取当前时刻产生的至少一个增量信息以及对应的用户信息,并对当前时刻产生的至少一个增量信息设置第一版本信息;将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与多个数据块中对应数据块、或有向无环图中历史添加的对应用户信息的增量信息的关联关系,包括:将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与多个数据块中对应数据块、或有向无环图中历史添加的对应用户信息的第二版本信息的增量信息的关联关系,其中,第二版本信息的增量信息为前一时刻添加至有向无环图的。
其中,将增量信息进行存储,并建立与多个数据块中对应数据块的关联关系,还包括:将当前时刻产生的至少一个增量信息组成集合,并采用DNA存储方式存储于DNA存储介质中。
其中,目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中,包括:对每个数据块进行哈希处理,以得到每个数据块对应的第一哈希值;将每个数据块对应的第一哈希值映射至文件索引树的子节点,以形成文件索引树。
其中,将每个数据块对应的第一哈希值映射至文件索引树的子节点,以形成文件索引树,包括:将每两个子节点的第一哈希值合并成字符串;对字符串进行哈希处理,得到字符串对应的第二哈希值;将第二哈希值作为每两个子节点的父节点的哈希值。
其中,获取对应目标数据的增量信息之前,包括:对用户进行身份认证以及权限认证,若身份认证以及权限认证成功,则允许用户对目标数据进行操作。
本申请采用的另一种技术方案是提供一种电子设备,该电子设备包括处理器以及与处理器耦接的存储器;其中,存储器用于存储程序数据,处理器用于执行程序数据,以实现如上述技术方案提供的方法。
本申请采用的另一种技术方案是提供一种计算机可读存储介质,该计算机可读存储介质用于存储程序数据,程序数据在被处理器执行时,用于实现如上述技术方案提供的方法。
本申请的有益效果是:区别于现有技术的情况,本申请的一种数据的存储方法,该方法包括:获取对应目标数据的增量信息;其中,目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中,增量信息基于对目标数据的操作产生;将增量信息进行存储,并建立与多个数据块中对应数据块的关联关系。通过上述方式,利用增量信息与数据块建立关联关系,避免增量信息直接对DNA存储介质中的数据进行更新,无需破坏DNA存储介质中原始数据的完整性,进而减少DNA存储介质中数据更新所需要的编码以及解码的存储操作,能够提高DNA存储介质中数据更新效率,减少存储成本。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请提供的数据的存储方法一实施例的流程示意图;
图2是本申请提供的数据的存储方法一应用示意图;
图3是本申请提供的数据的存储方法另一实施例的流程示意图;
图4是本申请提供的数据的存储方法另一应用示意图;
图5是本申请提供的数据的存储方法另一应用示意图;
图6是本申请提供的数据的存储方法另一应用示意图;
图7是本申请提供的数据的存储方法另一实施例的流程示意图;
图8是本申请提供的电子设备一实施例的结构示意图;
图9是本申请提供的计算机可读存储介质一实施例的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。可以理解的是,此处所描述的具体实施例仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
参阅图1,图1是本申请提供的数据的存储方法一实施例的流程示意图。该方法包括:
步骤11:获取对应目标数据的增量信息;其中,目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中,增量信息基于对目标数据的操作产生。
对目标数据的所有操作所产生的数据均认定为增量信息,即对目标数据的增加、删除、修改和查找等操作所产生的数据认定为增量信息。如:目标数据为“1234”,此时对目标数据进行修改,将目标数据修改为“124”,则此时的“124”以及对目标数据“1234”的修改操作则为增量信息。又如,目标数据有一条数据“1234”,此时对目标数据增加一条数据“5678”,则目标数据有两条数据“1234”和“5678”,则此时的“1234”和“5678”以及对目标数据“1234”的增加操作则为增量信息。
将目标数据划分为多个数据块,可以对每个数据块进行标记,则增量信息是对于每个数据块的内容做操作。如,可以将目标数据按照预设大小进行划分,预设大小可以为256KB、1M、2M等。
在一些实施例中,将对每个数据块进行哈希处理,以得到每个数据块对应的第一哈希值;将每个数据块对应的第一哈希值映射至文件索引树的子节点,以形成文件索引树。具体地,可以将每两个子节点的第一哈希值合并成字符串;对字符串进行哈希处理,得到字符串对应的第二哈希值;将第二哈希值作为每两个子节点的父节点的哈希值。
可选的,文件索引树可以是Merkle树。将每个数据块的第一哈希值映射到Merkle树子节点,作为Merkle树,每两个子节点的第一哈希值合并成一个字符串,然后运算这个字符串的哈希值作为这两个叶子节点对应的父节点的哈希值,以此往上运算,最终得到一个根哈希值。如果篡改数据信息,将导致篡改数据部分所在数据块的第一哈希值变化,Merkle树指向该块的子节点将变化,同时包含该子节点的所有子树哈希值都将变化,这样使得篡改数据成本极其高昂,从而在原始数据上篡改数据将不可执行。在一应用场景中,通过此方式生成的文件索引树可以存储在DNA存储介质中,也可以存储在与DNA存储介质交互的设备的存储介质中。增量信息的存储无需修改Merkle树哈希值,成本低且效率高。
参阅图2进行说明:
如图2所示,数据划分为F1数据块、F2数据块和F3数据块,然后对F1数据块、F2数据块和F3数据块进行哈希处理,得到对应的第一哈希值,第一哈希值的字符长度根据实际需要设置,可以是64个字符或128个字符。根据第一哈希值构成图2中包括A、B、C、D和E节点的文件索引树。其中,将F2数据块对应的第一哈希值映射至E节点,将F3数据块对应的第一哈希值映射至D节点,将F1数据块对应的第一哈希值映射至B节点。D节点的第一哈希值和E节点的第一哈希值合并成一个字符串,然后运算这个字符串,生成第二哈希值,映射至D节点和E节点的父节点C。此时,C节点的第二哈希值和B节点的第一哈希值合并成一个字符串,然后运算这个字符串,生成新的第二哈希值,将这个新的第二哈希值映射至B节点和C节点的父节点A。此时,A节点为根节点。至此,文件索引树构造完成,可以将此文件索引树存储DNA存储介质,也可以存储至其他存储介质。在需要从DNA存储介质中读取数据时,再按照文件索引树的指引来快速获取。通过将数据块对应转换为哈希值,基于哈希值的特性,相同内容的数据块有相同哈希值,可去掉重复的数据,节省存储空间。
在计算机中,所有的数据均以二进制的方式存在。在将数据存储于DNA存储介质中时,将二进制数据通过编码,映射成DNA里A、T、G和C碱基序列,按序列顺序形成长链DNA进行保存。如,“00”对应A,“01”对应G,“10”对应C,“11”对应T,则二进制“00111001”可映射为“A、T、C和G”的序列。相应的目标数据划分为多个数据块后采用上述的DNA存储方式存储于DNA存储介质中。
在一些实施例中,可以有多用户对数据进行操作,则在步骤11之前对用户进行身份认证以及权限认证,若身份认证以及权限认证成功,则允许用户对目标数据进行操作。通过这种方式实现用户身份管理。
步骤12:将增量信息进行存储,并建立与多个数据块中对应数据块的关联关系。
在一些实施例中,将增量信息也采用DNA存储方式存储于DNA存储介质中,增量信息在DNA存储介质中的位置与目标数据的位置不同,不会对目标数据进行更新操作。
在一些实施例中,也可以将增量信息进行分块处理,划分为多个数据块,然后进行标记且相互关联并建立与多个数据块中对应数据块的关联关系,然后采用上述的DNA存储方式存储于DNA存储介质中。
在一应用场景中,将原始数据进行分块,以得到多个数据块,对每个数据块进行标记,然后采用DNA存储方式将多个数据块存储于DNA存储介质中。在对目标数据块操作时,先根据标记从DNA存储介质中读取出来,然后解码为二进制文件,然后基于该二进制文件进行操作,操作完成后的文件则为增量信息。将此文件进行分块处理,并将分块后的文件采用DNA存储方式将多个数据块存储于DNA存储介质中。分块后的文件在DNA存储介质中的位置与原始数据的位置不同,不会对原始数据进行更新操作。
本实施例通过获取对应目标数据的增量信息;其中,目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中,增量信息基于对目标数据的操作产生;将增量信息进行存储,并建立与多个数据块中对应数据块的关联关系。通过上述方式,利用增量信息与数据块建立关联关系,避免增量信息直接对DNA存储介质中的数据进行更新,无需破坏DNA存储介质中原始数据的完整性,进而减少DNA存储介质中数据更新所需要的编码以及解码的存储操作,能够提高DNA存储介质中数据更新效率,减少存储成本。
参阅图3,图3是本申请提供的数据的存储方法另一实施例的流程示意图。该方法包括:
步骤31:获取当前时刻产生的至少一个增量信息。
在一些实施例中,可以有多用户对数据进行操作,则在步骤31之前对用户进行身份认证以及权限认证,若身份认证以及权限认证成功,则允许用户对目标数据进行操作。通过这种方式实现用户身份管理。
在本实例中,对原始数据进行操作的用户为多个,则存在同一时刻多个用户同时对数据进行操作的情况,则同一时刻会产生至少一个增量信息。
因原始数据被划分为多个数据块,则当前时刻产生的至少一个增量信息可以是对应不同数据块的,也可以是不同用户对同一数据块的操作。
若当前时刻为第一次对原始数据进行操作,则在步骤31执行后,执行步骤32,若当前时刻不是第一次对原始数据进行操作,则在步骤31执行后,执行步骤33。
步骤32:将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与多个数据块中对应数据块的关联关系。
在一些实施例中,以图4对步骤32进行说明:
原始数据F被划分为F1数据块、F2数据块、F3数据块、F4数据块和F5数据块,第一用户在当前时刻对F1数据块进行操作产生了第一增量信息,第二用户在当前时刻对F4数据块进行操作产生了第二增量信息。在对原始数据F进行操作前,有向无环图中只有原始数据F的多个数据块,在第一增量信息和第二增量信息产生后,则有向无环图中增加了第一增量信息和第二增量信息,且第一增量信息指向F1数据块,与F1数据块建立关联关系,且第二增量信息指向F4数据块,与F4数据块建立关联关系。
在一些实施例中,以图5对步骤32进行说明:
原始数据F被划分为F1数据块、F2数据块、F3数据块、F4数据块和F5数据块,第一用户在当前时刻对F3数据块进行操作产生了第一增量信息,第二用户在当前时刻对F3数据块进行操作产生了第二增量信息。在对原始数据F进行操作前,有向无环图中只有原始数据F的多个数据块,在第一增量信息和第二增量信息产生后,则有向无环图中增加了第一增量信息和第二增量信息,且第一增量信息指向F3数据块,与F3数据块建立关联关系,第二增量信息也指向F3数据块,与F3数据块建立关联关系。
步骤33:将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与有向无环图中历史添加的增量信息的关联关系。
在一些实施例中,以图6对步骤33进行说明:
原始数据F被划分为F1数据块、F2数据块、F3数据块、F4数据块和F5数据块,第一用户在前一时刻对F1数据块进行操作产生了第一增量信息,第二用户在前一时刻对F4数据块进行操作产生了第二增量信息。在对原始数据F进行操作前,有向无环图中只有原始数据F的多个数据块,在第一增量信息和第二增量信息产生后,则有向无环图中增加了第一增量信息和第二增量信息,且第一增量信息指向F1数据块,与F1数据块建立关联关系,且第二增量信息指向F4数据块,与F4数据块建立关联关系。第一用户在当前时刻对F1数据块进行操作产生了第三增量信息,第二用户在当前时刻对F5数据块进行操作产生了第四增量信息。在第三增量信息和第四增量信息产生后,则有向无环图中增加了第三增量信息和第四增量信息,且第三增量信息指向第一增量信息,与第一增量信息建立关联关系,且第四增量信息指向F5数据块,与F5数据块建立关联关系。
在一应用场景中,对原始数据进行操作的用户为一个,则每一操作时刻只产生一个增量信息。若当前时刻为第一次对原始数据进行操作,则将当前时刻产生的增量信息添加至有向无环图,并建立与所操作的数据块的关联关系。若当前时刻不是第一次对原始数据中的目标数据块进行操作,则将当前时刻产生的增量信息添加至有向无环图,并建立与有向无环图中对应该目标数据块的历史添加的增量信息的关联关系。
在一些实施例中,将当前时刻产生的至少一个增量信息组成集合,并采用DNA存储方式存储于DNA存储介质中,通过这种方式,可以记录同一时刻产生的增量信息,便于归类存储于DNA存储介质中。
在重组数据时,按照有向无环图中的关联关系,将属于同一用户的目标数据块对应的所有增量信息进行组合,得到最终数据,则实现了数据更新。
通过上述方式,利用增量信息与数据块建立关联关系,避免增量信息直接对DNA存储介质中的数据进行更新,无需破坏DNA存储介质中原始数据的完整性,进而减少DNA存储介质中数据更新所需要的编码以及解码的存储操作,能够提高DNA存储介质中数据更新效率,减少存储成本。
参阅图7,图7是本申请提供的数据的存储方法另一实施例的流程示意图。该方法包括:
步骤71:获取当前时刻产生的至少一个增量信息以及对应的用户信息。
在一些实施例中,可以有多用户对数据进行操作,则在步骤71之前对用户进行身份认证以及权限认证,若身份认证以及权限认证成功,则允许用户对目标数据进行操作。通过这种方式实现用户身份管理。
在本实施例中,为区别不同用户对数据的操作,为不同用户设置用户信息。
若当前时刻该用户为第一次对数据进行操作,则在步骤71执行后,执行步骤72,若当前时刻该用户不是第一次对数据进行操作,则在步骤71执行后,执行步骤73。
在其他实施例中,为当前时刻操作产生的增量信息加入版本信息,如,第一次产生的增量信息的版本信息为V1,第二次产生的增量信息的版本信息为V2。因涉及到不同用户,则还需加入用户信息以作区分。如第一用户记为id1,第二用户记为id2,则第一用户在当前时刻操作产生增量信息可记为“xxxV1-id1”,第二用户在当前时刻操作产生增量信息可记为“xxxV1-id2”。
步骤72:将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与多个数据块中对应数据块的关联关系。
在生成对应的增量信息后,则根据不同用户信息,将用户对应的增量信息和数据块进行关联,并将增量信息添加至有向无环图。
步骤73:将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与有向无环图中历史添加的对应用户信息的增量信息的关联关系。
在一些实施例中,获取当前时刻产生的至少一个增量信息以及对应的用户信息,并对当前时刻产生的至少一个增量信息设置第一版本信息;若当前时刻该用户为第一次对数据进行操作,则将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与多个数据块中对应数据块的关联关系,若当前时刻该用户不是第一次对数据进行操作,将当前时刻产生的至少一个增量信息添加至有向无环图,并建立与有向无环图中历史添加的对应用户信息的第二版本信息的增量信息的关联关系,其中,第二版本信息的增量信息为前一时刻添加至有向无环图的。可以理解,同一用户对同一数据块在不同时刻的操作产生的增量信息可以按照顺序进行版本信息的设置。
在本实施例中,通过将所有数据操作记录为增量信息,再将增量信息进行存储。增量信息的存储不需要读取原始数据的DNA序列进行解码加入数据再编码操作,而是直接记录增量包括时间、用户、版本等信息,通过指针连接构成有向无环图结构,需要读取文件时,进行文件重组。相比于传统技术节省了大量时间以及成本,能够提高DNA存储介质中数据更新效率,减少存储成本。
参阅图8,图8是本申请提供的电子设备一实施例的结构示意图。该电子设备80包括处理器81以及与处理器81耦接的存储器82;其中,存储器82用于存储程序数据,处理器81用于执行程序数据,以实现以下的方法:
获取对应目标数据的增量信息;其中,目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中,增量信息基于对目标数据的操作产生;将增量信息进行存储,并建立与多个数据块中对应数据块的关联关系。
可以理解地,本实施例中的处理器81用于执行程序数据,还可以实现上述实施例的任一方法,这里不再赘述。
参阅图9,图9是本申请提供的计算机可读存储介质一实施例的结构示意图,计算机存储介质90用于存储程序数据91,程序数据91在被处理器执行时,用于实现以下的方法:
获取对应目标数据的增量信息;其中,目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中,增量信息基于对目标数据的操作产生;将增量信息进行存储,并建立与多个数据块中对应数据块的关联关系。
可以理解地,本实施例中的计算机存储介质90还可以实现上述实施例的任一方法,这里不再赘述。
在本申请所提供的几个实施方式中,应该理解到,所揭露的方法以及设备,可以通过其它的方式实现。例如,以上所描述的设备实施方式仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述其他实施方式中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本申请的实施方式,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (8)

1.一种基于DNA存储的数据存储方法,其特征在于,所述方法包括:
获取当前时刻产生的至少一个增量信息以及对应的用户信息;其中,所述增量信息基于对目标数据的操作产生,所述目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中;
将所述当前时刻产生的至少一个增量信息添加至有向无环图,并建立与所述多个数据块中对应数据块、或所述有向无环图中历史添加的对应所述用户信息的增量信息的关联关系。
2.根据权利要求1所述的方法,其特征在于,
所述获取当前时刻产生的至少一个增量信息以及对应的用户信息,包括:
获取当前时刻产生的至少一个增量信息以及对应的用户信息,并对所述当前时刻产生的至少一个增量信息设置第一版本信息;
所述将所述当前时刻产生的至少一个增量信息添加至有向无环图,并建立与所述多个数据块中对应数据块、或所述有向无环图中历史添加的对应所述用户信息的增量信息的关联关系,包括:
将所述当前时刻产生的至少一个增量信息添加至有向无环图,并建立与所述多个数据块中对应数据块、或所述有向无环图中历史添加的对应所述用户信息的第二版本信息的增量信息的关联关系,其中,所述第二版本信息的增量信息为前一时刻添加至所述有向无环图的。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述当前时刻产生的至少一个增量信息组成集合,并采用DNA存储方式存储于所述DNA存储介质中。
4.根据权利要求1所述的方法,其特征在于,
所述目标数据划分为多个数据块并采用DNA存储方式存储于DNA存储介质中,包括:
对每个所述数据块进行哈希处理,以得到每个所述数据块对应的第一哈希值;
将每个所述数据块对应的第一哈希值映射至文件索引树的子节点,以形成所述文件索引树。
5.根据权利要求4所述的方法,其特征在于,
所述将每个所述数据块对应的第一哈希值映射至文件索引树的子节点,以形成所述文件索引树,包括:
将每两个子节点的第一哈希值合并成字符串;
对所述字符串进行哈希处理,得到所述字符串对应的第二哈希值;
将所述第二哈希值作为所述每两个子节点的父节点的哈希值。
6.根据权利要求1所述的方法,其特征在于,
所述获取当前时刻产生的至少一个增量信息以及对应的用户信息之前,包括:
对用户进行身份认证以及权限认证,若所述身份认证以及所述权限认证成功,则允许所述用户对所述目标数据进行操作。
7.一种电子设备,其特征在于,所述电子设备包括处理器以及与所述处理器耦接的存储器;
其中,所述存储器用于存储程序数据,所述处理器用于执行所述程序数据,以实现如权利要求1-6任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储程序数据,所述程序数据在被处理器执行时,用于实现如权利要求1-6任一项所述的方法。
CN202011205069.XA 2020-11-02 2020-11-02 数据的存储方法、电子设备以及计算机可读存储介质 Active CN112433986B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011205069.XA CN112433986B (zh) 2020-11-02 2020-11-02 数据的存储方法、电子设备以及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011205069.XA CN112433986B (zh) 2020-11-02 2020-11-02 数据的存储方法、电子设备以及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112433986A CN112433986A (zh) 2021-03-02
CN112433986B true CN112433986B (zh) 2023-07-07

Family

ID=74696591

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011205069.XA Active CN112433986B (zh) 2020-11-02 2020-11-02 数据的存储方法、电子设备以及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112433986B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112988920A (zh) * 2021-05-20 2021-06-18 中国人民解放军国防科技大学 面向ai应用的数据版本管理方法、装置和计算机设备
CN116451780B (zh) * 2022-01-05 2024-07-05 密码子(杭州)科技有限公司 用于在分子中存储信息的方法和设备
CN115905266B (zh) * 2022-12-29 2024-10-18 支付宝(杭州)信息技术有限公司 图结构数据的处理方法和用于图结构数据的存储引擎

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006052242A1 (en) * 2004-11-08 2006-05-18 Seirad, Inc. Methods and systems for compressing and comparing genomic data
CN109684413A (zh) * 2018-12-25 2019-04-26 深圳市网心科技有限公司 一种区块链存储证明方法、系统及电子设备和存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160004721A1 (en) * 2014-07-01 2016-01-07 Commvault Systems, Inc. Replicating local file systems as respective luns in a storage array, using block-level data transfers and enhanced storage managers, data agents, and media agents in an information management system
NZ774718A (en) * 2018-09-11 2021-04-30 Global ancestry determination system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006052242A1 (en) * 2004-11-08 2006-05-18 Seirad, Inc. Methods and systems for compressing and comparing genomic data
CN109684413A (zh) * 2018-12-25 2019-04-26 深圳市网心科技有限公司 一种区块链存储证明方法、系统及电子设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"基态修正的 GIS 数据库增量更新建模";林艳等;《测绘科学》;第199-201页 *

Also Published As

Publication number Publication date
CN112433986A (zh) 2021-03-02

Similar Documents

Publication Publication Date Title
CN112433986B (zh) 数据的存储方法、电子设备以及计算机可读存储介质
US8811611B2 (en) Encryption/decryption of digital data using related, but independent keys
US9235651B2 (en) Data retrieval apparatus, data storage method and data retrieval method
US20150278530A1 (en) Method and apparatus for storing redeem code, and method and apparatus for verifying redeem code
Qu et al. Clover: tree structure-based efficient DNA clustering for DNA-based data storage
CN116594572B (zh) 浮点数流式数据压缩方法、装置、计算机设备及介质
Holley et al. Dynamic alignment-free and reference-free read compression
CN110166238A (zh) 量子密钥的生成方法及装置
CN111312333B (zh) 一种bwt查表性能改进方法、装置、设备和介质
CN110532284B (zh) 海量数据存储和检索方法、装置、计算机设备及存储介质
US20240220457A1 (en) Method of compressing and decompressing a file via cellular automata pre-processing
CN112632187B (zh) 一种基于计数布隆过滤器的属性隐藏与撤销方法
El-Shaikh et al. Content-based filter queries on DNA data storage systems
WO2021255668A1 (en) A computer implemented method for the generation and management of codes.
CN110957003B (zh) 一种面向用户隐私保护的高效基因比对方法
CN117539925A (zh) 一种数据处理方法、装置、介质和设备
Wu et al. HD-code: End-to-end high density code for DNA storage
CN110569291B (zh) 一种数字货币钱包的密钥数据查询获取方法及装置
CN116894052A (zh) 物料清单的比对方法、装置、存储介质及处理器
US20120319875A1 (en) Method for storing node information of huffman tree and corresponding decoding method
Cunial et al. Fast and compact matching statistics analytics
CN116664123A (zh) 一种基于区块链技术的数字钱包设计方法
WO2022088184A1 (zh) 数据的存储方法、电子设备以及计算机可读存储介质
CN112579566B (zh) 分布式id的生成方法及装置
CN110096624B (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