CN107908727B - 存储对象克隆方法、装置、设备及计算机可读存储介质 - Google Patents

存储对象克隆方法、装置、设备及计算机可读存储介质 Download PDF

Info

Publication number
CN107908727B
CN107908727B CN201711122214.6A CN201711122214A CN107908727B CN 107908727 B CN107908727 B CN 107908727B CN 201711122214 A CN201711122214 A CN 201711122214A CN 107908727 B CN107908727 B CN 107908727B
Authority
CN
China
Prior art keywords
read
sequence number
database
identifier
original
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
CN201711122214.6A
Other languages
English (en)
Other versions
CN107908727A (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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201711122214.6A priority Critical patent/CN107908727B/zh
Publication of CN107908727A publication Critical patent/CN107908727A/zh
Application granted granted Critical
Publication of CN107908727B publication Critical patent/CN107908727B/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/22Indexing; Data structures therefor; Storage structures
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

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)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种空间利用率高的存储对象克隆方法,包括克隆kv数据库内的原始对象,得到子对象,为克隆后的子对象分配新的顺序号;kv数据库内每个对象设置有唯一对应的对象头,其内包含自身顺序号及表征父对象的标识符;依据子对象的对象头将其写入kv数据库;读取一个对象的扩展属性时,依据待读取对象的对象名获取其对象头;若待读取对象的标识符为0,依据待读取对象的顺序号读取其的omap中的value,若不为0,依据该标识符确定待读取对象的父对象的顺序号并据其读取该父对象的omap中的value。本发明中子对象未存储有扩展属性,减少了扩展属性重复占用磁盘空间的情况,空间利用率高;本发明还公开了一种基于上述方法的装置、设备及计算机可读存储介质。

Description

存储对象克隆方法、装置、设备及计算机可读存储介质
技术领域
本发明涉及分布式存储系统技术领域,特别是涉及一种存储对象克隆方法。本发明还涉及一种存储对象克隆装置、设备及计算机可读存储介质。
背景技术
分布式存储系统中后端一般采用对象作为存储的单位,每个对象会有扩展属性,扩展属性存于文件的xattr里,受限于本地文件系统,xattr只能存储256 字节,因此大于257字节的属性会以omap的形式存于kv数据库中,即 map(key,value)。
Kv数据一种扁平的结构,现有技术中是将对象名以及key编码组合成为 key,扩展属性作为value,若对象名很长,key的值也会很长,如果一个对象有很多kv,这样就会占用很多的磁盘空间。
另外,分布式存储系统中,存在进行对象clone操作的需求,在clone操作时,除了需要对clone对象的扩展属性进行克隆,即clone后的子对象中也存储有扩展属性,这样使得系统中会存储2份扩展属性(原始对象一份,子对象一份),若克隆的子对象多,会使得存储的扩展属性更多,故占用大量磁盘空间,空间的利用率低。
因此,如何提供一种空间利用率高的存储对象克隆方法、装置、设备及计算机可读存储介质是本领域技术人员目前需要解决的问题。
发明内容
本发明的目的是提供一种空间利用率高的存储对象克隆方法,克隆后的子对象并未存储有扩展属性,减少了克隆导致的扩展属性大量重复占用磁盘空间的情况,提高了空间的利用率;本发明的另一目的是提供一种基于上述方法的装置、设备及计算机可读存储介质。
为解决上述技术问题,本发明提供了一种基于kv数据库的存储对象克隆方法,包括:
对kv数据库内存储的原始对象进行克隆操作,得到子对象,并为克隆后的所述子对象的对象头分配新的顺序号,所述原始对象为所述子对象的父对象,所述子对象的对象头中的标识符依据所述原始对象的顺序号得到;其中,所述kv数据库内每个对象均设置有唯一对应的对象头,该对象头内包含自身顺序号以及表征父对象的标识符;所述原始对象包括多个omap,每个所述 omap的key内包含所述原始对象的顺序号;
依据所述子对象的对象头将其写入所述kv数据库;
读取一个对象的扩展属性时,依据待读取对象的对象名获取所述待读取对象的对象头;
若所述待读取对象的标识符为0,则所述待读取对象为原始对象,依据所述待读取对象的顺序号读取所述待读取对象的omap中的value;
若所述待读取对象的标识符不为0,则所述待读取对象为子对象,依据所述待读取对象的标识符确定所述待读取对象的父对象的顺序号,并依据该顺序号读取该父对象的omap中的value。
优选地,将所述原始对象写入所述kv数据库的过程具体为:
为所述原始对象分配一个顺序号,并令所述原始对象的标识符为0;
以所述原始对象的对象名为key、对象头为value存入所述kv数据库;
以所述原始对象的顺序号和key编码的组合为key、扩展属性为value存入所述kv数据库。
优选地,所述子对象的标识符为自身父对象的顺序号;所述依据所述子对象的顺序号将其写入所述kv数据库的过程具体为:
为所述子对象分配一个全新的顺序号,所述子对象的标识符为自身父对象的顺序号;
以所述子对象的对象名为key、对象头为value存入所述kv数据库。
优选地,所述标识符为自身父对象的对象头的key;所述依据所述子对象的顺序号将其写入所述kv数据库的过程具体为:
为所述子对象分配一个全新的顺序号以及一个非零标识符;
以所述子对象的对象名为key、对象头为value存入所述kv数据库;
以所述子对象的标识符为key、自身父对象的对象头为value存入所述 kv数据库。
优选地,所述依据所述待读取对象的标识符确定所述待读取对象的父对象的顺序号的过程具体为:
将所述待读取对象的标识符作为key,读取自身父对象的对象头,进而获得自身父对象的顺序号。
为解决上述技术问题,本发明还提供了一种基于kv数据库的存储对象克隆装置,包括:
原始对象写入单元,用于将原始对象的扩展属性以omap的形式写入kv 数据库;
克隆单元,用于对所述kv数据库内存储的原始对象进行克隆操作,得到子对象,并为克隆后的所述子对象的对象头分配新的顺序号;所述原始对象为所述子对象的父对象,所述子对象的对象头中的标识符依据所述原始对象的顺序号得到;其中,所述kv数据库内每个对象均设置有唯一对应的对象头,该对象头内包含自身顺序号以及表征父对象的标识符;所述原始对象包括多个 omap,每个所述omap的key内包含所述原始对象的顺序号;
子对象写入单元,用于依据所述子对象的对象头将其写入所述kv数据库;
读取单元,用于对一个对象进行数据读取时,依据待读取对象的对象名获取所述待读取对象的对象头;若所述待读取对象的标识符为0,则所述待读取对象为原始对象,依据所述待读取对象的顺序号读取所述待读取对象的omap 中的value;若所述待读取对象的标识符不为0,则所述待读取对象为子对象,依据所述待读取对象的标识符确定所述待读取对象的父对象的顺序号,并依据该顺序号读取该父对象的omap中的value;
所述kv数据库,用于存储各个对象以omap形式写入的信息。
优选地,所述原始对象写入单元具体包括:
分配子单元,用于为所述原始对象分配一个顺序号,并令所述原始对象的标识符为0;
Kv写入子单元,用于以所述原始对象的对象名为key、对象头为value存入所述kv数据库;以所述原始对象的顺序号和key编码的组合为key、扩展属性为value存入所述kv数据库。
为解决上述技术问题,本发明还提供了一种基于kv数据库的存储对象克隆设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如以上任一项所述的存储对象克隆装置方法的步骤。
为解决上述技术问题,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如以上任一项所述的存储对象克隆装置方法的步骤。
本发明提供了一种空间利用率高的存储对象克隆方法,为每个原始对象分配一个对象头,对象头内包含原始对象唯一对应的顺序号,进行克隆后,为克隆后的子对象重新分配一个顺序号,且子对象对象头中的标识符依据父对象的顺序号得到;之后,对一个对象的扩展属性进行读取时,若读取的对象为原始对象,则可直接读取其存储的扩展属性,若为子对象,由于其仅存储了对象名和对象头等信息,故需要依据其对象头内的数据追溯查找其父对象存储的扩展属性进行读取。可见,本发明中,克隆后的子对象并未存储有扩展属性,而是仅父对象存储有一份扩展属性,因此,本发明大大减少了克隆导致的扩展属性大量重复占用磁盘空间的情况,提高了空间的利用率。本发明还提供了一种基于上述方法的装置、设备及计算机可读存储介质。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种空间利用率高的存储对象克隆方法的过程的流程图;
图2为一种具体实施例中克隆前后的对象示意图;
图3为本发明提供的一种空间利用率高的存储对象克隆装置的结构示意图。
具体实施方式
本发明的核心是提供一种空间利用率高的存储对象克隆方法,克隆后的子对象并未存储有扩展属性,减少了克隆导致的扩展属性大量重复占用磁盘空间的情况,提高了空间的利用率;本发明的另一目的是提供一种基于上述方法的装置、设备及计算机可读存储介质。。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种基于kv数据库的存储对象克隆方法,参见图1所示,图1为本发明提供的一种空间利用率高的存储对象克隆方法的过程的流程图;该方法包括:
步骤s1:对kv数据库内存储的原始对象进行克隆操作,得到子对象,并为克隆后的子对象的对象头分配新的顺序号,原始对象为子对象的父对象,子对象的对象头中的标识符依据原始对象的顺序号得到;其中,kv数据库内每个对象均设置有唯一对应的对象头(header),该对象头内包含自身顺序号(seq) 以及表征父对象的标识符(parent);原始对象包括多个omap,每个omap的key 内包含原始对象的顺序号;参见图2所示,图2为一种具体实施例中克隆前后的对象示意图;
步骤s2:依据子对象的对象头将其写入kv数据库;
步骤s3:读取一个对象的扩展属性时,依据待读取对象的对象名获取待读取对象的对象头;
步骤s4:若待读取对象的标识符为0,则待读取对象为原始对象,依据待读取对象的顺序号读取待读取对象的omap中的value;
步骤s5:若待读取对象的标识符不为0,则待读取对象为子对象,依据待读取对象的标识符确定待读取对象的父对象的顺序号,并依据该顺序号读取该父对象的omap中的value。
可以理解的是,上述操作即是采用写时复制的方式对存储对象进行克隆,即对象克隆时,不进行扩展属性的复制,仅是将子对象与父对象进行关联,使得克隆后的子对象和父对象仅对应一份存储的扩展属性,减少空间的浪费。
其中,为了将对象和kv数据库进行关联,需要封装kv接口,方便按照对象查询kv数据库中的kv数据。
另外,在对一个原始对象进行克隆时,克隆的子对象可以是一个,也可以是多个,该个数视需求而定,本发明对此不作限定,需要注意的是,每个对象的顺序号与其自身唯一对应。
需要注意的是,为了实现上述目的,对象kv-map系统需要包含以下接口:
set_keys:将一个对象写入kv数据库,输入参数为对象名和kv pairs,kv pairs使用map<key,value>表示。
get_keys:用于读取一个对象的keys的接口,输入参数为对象名,可以理解的,输入对象名后,即可以得知需要读取哪个对象的kv,之后即会显示该对象的全部kv数据的key;
get_values:用于读取一个对象的kv的接口,输入参数为对象名和key;一般输入对象名是用于确认需要读取哪个对象的kv,之后输入待读取value对应的key,即会输出待读取的value;
int clone:用于克隆一个对象的接口;
rm_keys:用于删除一个对象的keys的接口,输入参数为对象名和keys, keys使用set<string>表示。
具体的,将原始对象写入kv数据库的过程具体为:
为原始对象分配一个顺序号,并令原始对象的标识符为0;
以原始对象的对象名为key、对象头为value存入kv数据库;即以 _OBJECT_对象名__OBJECT_为key,header为value;
以原始对象的顺序号和key编码的组合为key、扩展属性为value存入kv 数据库。即以_USER_SEQ_USER为key。
在一种具体实施例中,子对象的标识符为自身父对象的顺序号;步骤s2 的过程具体为:
为子对象分配一个全新的顺序号,子对象的标识符为自身父对象的顺序号;
以子对象的对象名为key、对象头为value存入kv数据库。即以_OBJECT_ 对象名__OBJECT_为key,header为value。
在另一种具体实施例中,标识符为自身父对象的对象头的key;步骤s2 的过程具体为:
为子对象分配一个全新的顺序号以及一个非零标识符;
以子对象的对象名为key、对象头为value存入kv数据库;
以子对象的标识符为key、自身父对象的对象头为value存入kv数据库。即以_USER_parent_USER为key。
进一步可知,依据待读取对象的标识符确定待读取对象的父对象的顺序号的过程具体为:
将待读取对象的标识符作为key,读取自身父对象的对象头,进而获得自身父对象的顺序号。
当然,以上仅为两种具体实施例,其中,标识符具体如何设置本发明不作限定,并且,进行kv存储时,key的格式本发明也不做限定。
本发明提供了一种空间利用率高的存储对象克隆方法,为每个原始对象分配一个对象头,对象头内包含原始对象唯一对应的顺序号,进行克隆后,为克隆后的子对象重新分配一个顺序号,且子对象对象头中的标识符依据父对象的顺序号得到;之后,对一个对象的扩展属性进行读取时,若读取的对象为原始对象,则可直接读取其存储的扩展属性,若为子对象,由于其仅存储了对象名和对象头等信息,故需要依据其对象头内的数据追溯查找其父对象存储的扩展属性进行读取。可见,本发明中,克隆后的子对象并未存储有扩展属性,而是仅父对象存储有一份扩展属性,因此,本发明大大减少了克隆导致的扩展属性大量重复占用磁盘空间的情况,提高了空间的利用率。
本发明还提供了一种基于kv数据库的存储对象克隆装置,参见图3所示,图3为本发明提供的一种空间利用率高的存储对象克隆装置的结构示意图。该装置包括:
原始对象写入单元2,用于将原始对象的扩展属性以omap的形式写入kv 数据库1;
克隆单元3,用于对kv数据库1内存储的原始对象进行克隆操作,得到子对象,并为克隆后的子对象的对象头分配新的顺序号;原始对象为子对象的父对象,子对象的对象头中的标识符依据原始对象的顺序号得到;其中,kv 数据库1内每个对象均设置有唯一对应的对象头,该对象头内包含自身顺序号以及表征父对象的标识符;原始对象包括多个omap,每个omap的key内包含原始对象的顺序号;
子对象写入单元4,用于依据子对象的对象头将其写入kv数据库1;
读取单元5,用于对一个对象进行数据读取时,依据待读取对象的对象名获取待读取对象的对象头;若待读取对象的标识符为0,则待读取对象为原始对象,依据待读取对象的顺序号读取待读取对象的omap中的value;若待读取对象的标识符不为0,则待读取对象为子对象,依据待读取对象的标识符确定待读取对象的父对象的顺序号,并依据该顺序号读取该父对象的omap中的 value;
kv数据库1,用于存储各个对象以omap形式写入的信息。
作为优选地,原始对象写入单元2具体包括:
分配子单元,用于为原始对象分配一个顺序号,并令原始对象的标识符为 0;
Kv写入子单元,用于以原始对象的对象名为key、对象头为value存入kv 数据库1;以原始对象的顺序号和key编码的组合为key、扩展属性为value 存入kv数据库1。
本发明提供了一种空间利用率高的存储对象克隆装置,为每个原始对象分配一个对象头,对象头内包含原始对象唯一对应的顺序号,进行克隆后,为克隆后的子对象重新分配一个顺序号,且子对象对象头中的标识符依据父对象的顺序号得到;之后,对一个对象的扩展属性进行读取时,若读取的对象为原始对象,则可直接读取其存储的扩展属性,若为子对象,由于其仅存储了对象名和对象头等信息,故需要依据其对象头内的数据追溯查找其父对象存储的扩展属性进行读取。可见,本发明中,克隆后的子对象并未存储有扩展属性,而是仅父对象存储有一份扩展属性,因此,本发明大大减少了克隆导致的扩展属性大量重复占用磁盘空间的情况,提高了空间的利用率。
本发明还提供了一种基于kv数据库的存储对象克隆设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如以上任一项的存储对象克隆装置方法的步骤。
本发明还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如以上任一项的存储对象克隆装置方法的步骤。
以上的几种具体实施方式仅是本发明的优选实施方式,以上几种具体实施例可以任意组合,组合后得到的实施例也在本发明的保护范围之内。应当指出,对于本技术领域的普通技术人员来说,相关专业技术人员在不脱离本发明精神和构思前提下推演出的其他改进和变化,均应包含在本发明的保护范围之内。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

Claims (9)

1.一种基于kv数据库的存储对象克隆方法,其特征在于,包括:
对kv数据库内存储的原始对象进行克隆操作,得到子对象,并为克隆后的所述子对象的对象头分配新的顺序号,所述原始对象为所述子对象的父对象,所述子对象的对象头中的标识符依据所述原始对象的顺序号得到;其中,所述kv数据库内每个对象均设置有唯一对应的对象头,该对象头内包含自身顺序号以及表征父对象的标识符;所述原始对象包括多个omap,每个所述omap的key内包含所述原始对象的顺序号;
依据所述子对象的对象头将其写入所述kv数据库;
读取一个对象的扩展属性时,依据待读取对象的对象名获取所述待读取对象的对象头;
若所述待读取对象的标识符为0,则所述待读取对象为原始对象,依据所述待读取对象的顺序号读取所述待读取对象的omap中的value;
若所述待读取对象的标识符不为0,则所述待读取对象为子对象,依据所述待读取对象的标识符确定所述待读取对象的父对象的顺序号,并依据该顺序号读取该父对象的omap中的value。
2.根据权利要求1所述的方法,其特征在于,将所述原始对象写入所述kv数据库的过程具体为:
为所述原始对象分配一个顺序号,并令所述原始对象的标识符为0;
以所述原始对象的对象名为key、对象头为value存入所述kv数据库;
以所述原始对象的顺序号和key编码的组合为key、扩展属性为value存入所述kv数据库。
3.根据权利要求2所述的方法,其特征在于,所述子对象的标识符为自身父对象的顺序号;所述依据所述子对象的顺序号将其写入所述kv数据库的过程具体为:
为所述子对象分配一个全新的顺序号,所述子对象的标识符为自身父对象的顺序号;
以所述子对象的对象名为key、对象头为value存入所述kv数据库。
4.根据权利要求2所述的方法,其特征在于,所述标识符为自身父对象的对象头的key;所述依据所述子对象的顺序号将其写入所述kv数据库的过程具体为:
为所述子对象分配一个全新的顺序号以及一个非零标识符;
以所述子对象的对象名为key、对象头为value存入所述kv数据库;
以所述子对象的标识符为key、自身父对象的对象头为value存入所述kv数据库。
5.根据权利要求4所述的方法,其特征在于,所述依据所述待读取对象的标识符确定所述待读取对象的父对象的顺序号的过程具体为:
将所述待读取对象的标识符作为key,读取自身父对象的对象头,进而获得自身父对象的顺序号。
6.一种基于kv数据库的存储对象克隆装置,其特征在于,包括:
原始对象写入单元,用于将原始对象的扩展属性以omap的形式写入kv数据库;
克隆单元,用于对所述kv数据库内存储的原始对象进行克隆操作,得到子对象,并为克隆后的所述子对象的对象头分配新的顺序号;所述原始对象为所述子对象的父对象,所述子对象的对象头中的标识符依据所述原始对象的顺序号得到;其中,所述kv数据库内每个对象均设置有唯一对应的对象头,该对象头内包含自身顺序号以及表征父对象的标识符;所述原始对象包括多个omap,每个所述omap的key内包含所述原始对象的顺序号;
子对象写入单元,用于依据所述子对象的对象头将其写入所述kv数据库;
读取单元,用于对一个对象进行数据读取时,依据待读取对象的对象名获取所述待读取对象的对象头;若所述待读取对象的标识符为0,则所述待读取对象为原始对象,依据所述待读取对象的顺序号读取所述待读取对象的omap中的value;若所述待读取对象的标识符不为0,则所述待读取对象为子对象,依据所述待读取对象的标识符确定所述待读取对象的父对象的顺序号,并依据该顺序号读取该父对象的omap中的value;
所述kv数据库,用于存储各个对象以omap形式写入的信息。
7.根据权利要求6所述的装置,其特征在于,所述原始对象写入单元具体包括:
分配子单元,用于为所述原始对象分配一个顺序号,并令所述原始对象的标识符为0;
Kv写入子单元,用于以所述原始对象的对象名为key、对象头为value存入所述kv数据库;以所述原始对象的顺序号和key编码的组合为key、扩展属性为value存入所述kv数据库。
8.一种基于kv数据库的存储对象克隆设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至5任一项所述的存储对象克隆装置方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至5任一项所述的存储对象克隆装置方法的步骤。
CN201711122214.6A 2017-11-14 2017-11-14 存储对象克隆方法、装置、设备及计算机可读存储介质 Active CN107908727B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711122214.6A CN107908727B (zh) 2017-11-14 2017-11-14 存储对象克隆方法、装置、设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711122214.6A CN107908727B (zh) 2017-11-14 2017-11-14 存储对象克隆方法、装置、设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN107908727A CN107908727A (zh) 2018-04-13
CN107908727B true CN107908727B (zh) 2021-06-29

Family

ID=61845344

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711122214.6A Active CN107908727B (zh) 2017-11-14 2017-11-14 存储对象克隆方法、装置、设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN107908727B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1553339A (zh) * 2003-06-05 2004-12-08 联想(北京)有限公司 细粒度快照实现方法
CN1758219A (zh) * 2004-10-05 2006-04-12 微软公司 要求事件的对象克隆
CN1862542A (zh) * 2006-06-09 2006-11-15 无锡永中科技有限公司 共享对象属性的方法
CN102073742A (zh) * 2011-01-31 2011-05-25 清华大学 一种海量对象的存储系统及其运行方法
CN102332078A (zh) * 2010-07-13 2012-01-25 株式会社东芝 用于控制对象的复制处理的方法及装置
CN102456049A (zh) * 2010-10-28 2012-05-16 无锡江南计算技术研究所 数据迁移方法、装置及面向对象的分布式文件系统
CN103221924A (zh) * 2010-11-22 2013-07-24 蓝弧英国有限公司 数据存储系统中的文件克隆和去克隆
CN104679662A (zh) * 2013-04-25 2015-06-03 国际商业机器公司 用于管理共享存储器的方法和系统

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MXPA99004572A (es) * 1997-10-15 2005-07-25 At & T Corp Sistema y metodo mejorado para procesar informacion audiovisual basada en objetos.
US8396843B2 (en) * 2010-06-14 2013-03-12 Dell Products L.P. Active file instant cloning
US9619487B2 (en) * 2012-06-18 2017-04-11 International Business Machines Corporation Method and system for the normalization, filtering and securing of associated metadata information on file objects deposited into an object store
US9996424B2 (en) * 2015-06-30 2018-06-12 International Business Machines Corporation Splitting a clone having snapshots from a parent

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1553339A (zh) * 2003-06-05 2004-12-08 联想(北京)有限公司 细粒度快照实现方法
CN1758219A (zh) * 2004-10-05 2006-04-12 微软公司 要求事件的对象克隆
CN1862542A (zh) * 2006-06-09 2006-11-15 无锡永中科技有限公司 共享对象属性的方法
CN102332078A (zh) * 2010-07-13 2012-01-25 株式会社东芝 用于控制对象的复制处理的方法及装置
CN102456049A (zh) * 2010-10-28 2012-05-16 无锡江南计算技术研究所 数据迁移方法、装置及面向对象的分布式文件系统
CN103221924A (zh) * 2010-11-22 2013-07-24 蓝弧英国有限公司 数据存储系统中的文件克隆和去克隆
CN102073742A (zh) * 2011-01-31 2011-05-25 清华大学 一种海量对象的存储系统及其运行方法
CN104679662A (zh) * 2013-04-25 2015-06-03 国际商业机器公司 用于管理共享存储器的方法和系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Automatic Video Object Clone Algorithm and Segmentation Based on Fuzzy Mathematics;ZHANG Guangyu;《Chinese Journal of Electronics》;20060731;第15卷(第3期);第482-486页 *
高扩展性的海量存储文件系统设计与实现;李永泽;《中国优秀硕士学位论文全文数据库》;20150615;第2015年卷(第6期);第1-28页 *

Also Published As

Publication number Publication date
CN107908727A (zh) 2018-04-13

Similar Documents

Publication Publication Date Title
US11947489B2 (en) Creating snapshots of a storage volume in a distributed storage system
US20180107725A1 (en) Data Storage Method and Apparatus, and Data Read Method and Apparatus
KR101994021B1 (ko) 파일 조작 방법 및 장치
CN105095393A (zh) 一种数据存储方法及装置
CN107066498B (zh) 键值kv存储方法和装置
US10992459B2 (en) Updating a state Merkle tree
EP3073392A1 (en) Database implementation method
CN106970958B (zh) 一种流文件的查询与存储方法和装置
CN104423982B (zh) 请求的处理方法和处理设备
CN109684270B (zh) 数据库归档方法、装置、系统、设备及可读存储介质
WO2013086683A1 (zh) 数据配置及其回退方法和设备
CN106502680B (zh) 一种通过可视化界面进行图元扩展的方法
CN111090803A (zh) 一种数据处理方法、装置、电子设备和存储介质
CN112000971B (zh) 一种文件权限记录方法、系统及相关装置
CN107908727B (zh) 存储对象克隆方法、装置、设备及计算机可读存储介质
CN109558159A (zh) 游戏中用户界面的更新方法和装置
US20190073270A1 (en) Creating Snapshots Of A Storage Volume In A Distributed Storage System
CN109165712A (zh) 分布式分期号的生成方法、装置和计算机存储介质
CN109710409B (zh) 一种内存管理方法、系统、装置及可读存储介质
CN113127490B (zh) 一种键名称生成方法、装置和计算机可读存储介质
CN115858668A (zh) 分布式事务处理方法、装置、电子装置及存储介质
CN106156169B (zh) 离散数据的处理方法和装置
CN110795744B (zh) 一种异常信息的定位方法、系统、电子设备及存储介质
CN105740131B (zh) 软件用户行为回退处理方法及装置
CN111124306A (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