CN116974734A - 一种对象存储系统、对象修改方法及相关设备 - Google Patents

一种对象存储系统、对象修改方法及相关设备 Download PDF

Info

Publication number
CN116974734A
CN116974734A CN202210429336.4A CN202210429336A CN116974734A CN 116974734 A CN116974734 A CN 116974734A CN 202210429336 A CN202210429336 A CN 202210429336A CN 116974734 A CN116974734 A CN 116974734A
Authority
CN
China
Prior art keywords
modified
index
metadata
client
target 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.)
Pending
Application number
CN202210429336.4A
Other languages
English (en)
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.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Cloud Computing Technologies 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 Huawei Cloud Computing Technologies Co Ltd filed Critical Huawei Cloud Computing Technologies Co Ltd
Priority to CN202210429336.4A priority Critical patent/CN116974734A/zh
Publication of CN116974734A publication Critical patent/CN116974734A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

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

Abstract

本申请提供了一种对象存储系统,包括服务装置、索引装置以及存储装置,其中,服务装置用于接收客户端发送的修改请求,该修改请求包括对象的标识、待修改数据的标识以及目标数据,并且,服务装置响应修改请求,将目标数据写入存储装置中;索引装置,用于将索引中的待修改数据对应的元数据修改为目标数据对应的元数据,该索引用于在存储装置中查找对象;存储装置,用于存储该对象以及目标数据。如此,可以有效提高客户端修改对象存储系统中对象的效率、降低资源消耗。同时,客户端不用将对象下载至本地,从而可以避免客户端本地的存储空间限制而导致修改对象失败的问题。此外,本申请还提供了对应的对象修改方法及相关设备。

Description

一种对象存储系统、对象修改方法及相关设备
技术领域
本申请涉及数据存储技术领域,尤其涉及一种对象存储系统、对象修改方法及相关设备。
背景技术
对象存储服务(object storage service,OBS),是一种基于对象(object)的海量存储服务,即以对象为基本单位进行数据存储,并且能够提供海量、安全、高可靠、低成本的数据存储能力。其中,一个对象可以包括单个文件的数据以及与该文件相关的属性信息,如可以包括用于标识对象的键值(key)、用于描述对象的元数据(metadata)以及该文件对应的数据(data)内容等。
实际应用场景中,客户端可以基于用户的业务需求,将文件上传至提供OBS服务的对象存储系统进行存储。并且,当客户端需要修改对象存储系统中的对象时,客户端会先从对象存储系统中下载对象,并在完成对该对象的修改后,将新的对象上传至对象存储系统中。但是,这种修改对象存储系统中对象的效率较低、资源消耗较大,导致修改对象的性能较差。
发明内容
本申请提供了一种对象存储系统,用于提高修改对象的性能。此外,本申请还提供了一种对象修改方法、计算设备集群、计算机可读存储介质以及计算机程序产品。
第一方面,本申请提供了一种对象存储系统,该对象存储系统包括服务装置、索引装置以及存储装置,其中,服务装置用于接收客户端发送的修改请求,该修改请求包括对象的标识、待修改数据的标识以及目标数据,该修改请求用于将该对象中的待修改数据修改为目标数据,并且,服务装置响应该修改请求,将目标数据写入存储装置中;索引装置,用于将索引中的待修改数据对应的元数据修改为目标数据对应的元数据,该索引用于在存储装置中查找对象;该存储装置,用于存储该对象以及目标数据。
这样,在修改对象存储系统中的对象的过程中,客户端可以不用从对象存储系统中下载整个对象,并且,客户端也无需再向对象存储系统重新上传整个对象,而是向对象存储系统上传的目标数据即可,并且,通常情况下该目标数据的数据量小于整个对象的数据量。如此,可以有效提高客户端修改对象存储系统中对象的效率、降低资源消耗,从而可以有效提高修改对象的性能。同时,客户端不用将对象下载至本地,这对于客户端的本地存储空间的要求较低,从而可以避免客户端本地的存储空间限制而导致修改对象失败的问题。
在一种可能的实施方式中,客户端请求修改的对象,包括多个分段,相应的,索引装置中的索引可以包括该对象对应的元数据以及该对象中的多个分段分别对应的元数据。如此,对象存储系统在修改对象的过程中,可以仅对索引中与待修改数据相关的分段对应的元数据进行修改,对于该索引中其它分段对应的元数据可以不用进行修改。
在一种可能的实施方式中,服务装置还可以用于合并索引装置中的多个分段分别对应的元数据以及目标数据对应的元数据,并将合并后所得到的元数据添加至该对象对应的元数据中,得到修改后的对象元数据。这样,后续可以从对象元数据中可以获得该对象包括的多个分段分别对应的元数据,从而服务装置可以不用单独向索引装置请求该多个分段分别对应的元数据。
在一种可能的实施方式中,服务装置还用于在将目标数据写入存储装置之后,接收客户端发送的对象读取请求,该对象读取请求用于请求读取修改后的对象,并且,服务装置响应该对象读取请求,从索引装置中读取修改后的对象元数据,并根据该修改后的对象元数据从存储装置中读取修改后的对象。如此,在读取多段对象的过程中,服务装置通过访问一次索引装置即可获得对象中多个分段分别对应的元数据,减少了服务装置与索引装置之间所需的交互次数,简化了对象存储系统中的处理流程,从而不仅可以降低服务装置与索引装置之间的通信成本,而且也能提高对象存储系统反馈多段对象的性能。
在一种可能的实施方式中,服务装置还用于在将目标数据写入存储装置之后,接收客户端发送的对象读取请求,该对象读取请求用于请求读取修改后的对象,并且,服务装置响应该对象读取请求,从索引装置中读取该对象对应的云数据、该对象中的多个分段分别对应的元数据以及目标数据对应的元数据,从而服务装置根据读取的元数据能够从存储装置中读取修改后的对象。如此,在实现对于对象的修改后的,对象存储系统还支持客户端对于修改后的对象的读取。
在一种可能的实施方式中,对象存储系统包括修改接口,并且,服务装置通过该修改接口接收客户端发送的目标数据,进一步的,服务装置还可以通过该修改接口向客户端发送修改后的对象。
可选地,该修改接口可以通过对已有的对象接口进行修改实现,或者,可以是单独定义的修改接口。
第二方面,本申请实施例提供了对象修改方法,所述方法应用于对象存储系统,所述对象存储系统包括服务装置、索引装置以及存储装置,所述方法包括:所述服务装置接收客户端发送的修改请求,所述修改请求包括对象的标识、待修改数据的标识以及目标数据,所述修改请求用于请求将所述对象中的所述待修改数据修改为所述目标数据;所述服务装置响应所述修改请求,将所述目标数据写入所述存储装置;所述索引装置将索引中的待修改数据对应的元数据修改为所述目标数据对应的元数据,所述索引用于在所述存储装置中查找所述对象。
在一种可能的实施方式中,所述对象包括多个分段,所述索引包括所述对象对应的元数据以及所述对象中的多个分段分别对应的元数据。
在一种可能的实施方式中,所述方法还包括:所述服务装置合并所述索引装置中所述多个分段分别对应的元数据以及所述目标数据对应的元数据;所述服务装置将合并后所得到的元数据添加至所述对象对应的元数据中,得到修改后的对象元数据。
在一种可能的实施方式中,所述方法还包括:所述服务装置在将所述目标数据写入所述存储装置之后,接收所述客户端发送的对象读取请求,所述对象读取请求用于请求读取修改后的所述对象;所述服务装置响应所述对象读取请求,从所述索引装置中读取所述修改后的对象元数据;所述服务装置根据所述修改后的对象元数据从所述存储装置中读取修改后的所述对象。
在一种可能的实施方式中,所述方法还包括:所述服务装置在将所述目标数据写入所述存储装置之后,接收所述客户端发送的对象读取请求,所述对象读取请求用于请求读取修改后的所述对象;所述服务装置响应所述对象读取请求,从所述索引装置中读取所述对象对应的元数据、所述多个分段分别对应的元数据、所述目标数据对应的元数据;所述服务装置根据读取的元数据从所述存储装置中读取修改后的所述对象。
在一种可能的实施方式中,所述对象存储系统包括修改接口,所述服务装置接收客户端发送的修改请求,包括:所述服务装置通过所述修改接口接收所述客户端发送的所述目标数据;所述方法还包括:所述服务装置通过所述修改接口向所述客户端发送修改后的对象。
由于第二方面提供的对象修改方法,对应于第一方面提供的对象存储系统,故针对第二方面以及第二方面任意一种可能实现方式中所具有的技术效果,可参见与之对应的第一方面以及第一方面任意一种可能实现方式所对应的技术效果,本实施例对此不再进行赘述。
第三方面,本申请提供一种计算设备集群,所述计算设备包括至少一个计算设备,所述至少一个计算设备包括至少一个处理器和至少一个存储器;所述至少一个存储器用于存储指令,所述至少一个处理器执行所述至少一个存储器存储的该指令,以使所述计算设备集群执行上述第二方面或第二方面任一种可能实现方式中的对象修改方法。需要说明的是,该存储器可以集成于处理器中,也可以是独立于处理器之外。所述至少一个计算设备还可以包括总线。其中,处理器通过总线连接存储器。其中,存储器可以包括可读存储器以及随机存取存储器。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在至少计算设备上运行时,使得所述至少一个计算设备执行上述第二方面或第二方面的任一种实现方式所述的方法。
第五方面,本申请提供了一种包含指令的计算机程序产品,当其在至少一个计算设备上运行时,使得所述至少一个计算设备执行上述第二方面或第二方面的任一种实现方式所述的方法。
本申请在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一示例性应用场景示意图;
图2为本申请实施例提供的一种对象修改方法的流程示意图;
图3为本申请实施例提供的一种修改请求的消息格式示意图;
图4为本申请实施例提供的针对多段对象的读取方法的流程示意图;
图5为本申请实施例提供的针对多段对象的存储以及读取方法的流程示意图;
图6为本申请实施例提供的一种计算设备600的结构示意图;
图7为本申请实施例提供的一种计算设备集群70的结构示意图。
具体实施方式
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解,这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。
参见图1,为一示例性应用场景示意图。在该应用场景中,对象存储系统100可以为客户端201以及客户端202提供对象存储服务。
其中,客户端201例如可以是简单存储服务文件系统(simple storage servicefile system,S3FS)客户端,可以支持将对象存储系统100中的桶(bucket)以文件形式进行导出。并且,客户端201与上层的应用程序(如高性能计算应用程序等)之间通过文件接口进行数据读写,与对象存储系统100之间通过对象接口读写数据(对象)。客户端202例如可以是S3A客户端,与上层的应用程序(如大数据计算应用程序等)之间通过文件接口进行数据读写,与对象存储系统100之间通过对象接口读写数据(对象)。
客户端201(或者客户端202)可以向对象存储系统100上传对象。并且,当对象的数据量较小时,如不超过50兆等,客户端201可以通过与对象存储系统100进行一次交互,即可将该对象上传至对象存储系统100中,本实施例中,该对象可以称之为普通对象。当对象的数据量较大时,如超过50兆等,客户端201可以先将该对象切分成多个段,并通过与对象存储系统100进行多次交互,实现将每个分段逐个上传至对象存储系统100中。本实施例中,该对象可以称之为分段对象。
当需要修改对象存储系统100中的对象时,如果客户端201先从对象存储系统100中下载该对象,并在客户端201本地对该对象进行修改,然后再将修改后的对象重新上传至对象存储系统100中进行存储,这会导致修改对象的效率较低、所需的资源消耗较大,从而使得修改对象的性能较差。并且,当客户端201所要修改的对象的数据量较大时(如50吉大小等),由于客户端201本地的存储空间可能不足以支持存储该对象,从而因为客户端201本地存储空间不足而导致该对象修改失败。
为此,本实施例提供的对象存储系统100能够对外提供修改接口,并且,对象存储系统100可以利用该修改接口实现修改对象。具体地,如图2所示,该对象存储系统100包括服务装置101、索引装置102以及存储装置103,并且,存储装置103中存储有客户端201预先上传至对象存储系统100中的对象。并且,服务装置101、索引装置102以及存储装置103之间,可以通过有线连接或者无线连接的方式进行数据交互,如服务装置101可以通过该连接将客户端201上传的对象发送至存储装置103中进行存储,服务装置101可以通过该连接访问索引装置102以获得用于在存储装置103中查找该对象的索引等。
当客户端201需要修改对象存储系统100中的对象时,客户端201可以通过修改接口向对象存储系统100上传目标数据,并请求对象存储系统100将对象中的待修改数据修改为该目标数据。
服务装置101可以通过该修改接口接收客户端201发送的修改请求,以请求对象存储系统100将对象中的待修改数据修改为客户端201上传的目标数据。然后,服务装置101响应该修改请求,将目标数据发送至存储装置103中进行存储。
另外,索引装置102中存储有对象对应的索引,该索引用于查找存储装置103中存储的对象。当服务装置101完成将目标数据写入存储装置103时,索引装置102将该索引中的待修改数据对应的元数据修改为存储装置103中的目标数据对应的元数据,以便后续基于修改后的索引从存储装置中查找到该对象中未被修改的数据以及修改后的目标数据(也即修改后的对象)。如此,可以实现客户端201(或者客户端202)修改对象存储系统100中存储的对象。
这样,在修改对象存储系统100中的对象的过程中,客户端201可以不用从对象存储系统100中下载整个对象,并且,客户端201也无需再向对象存储系统100重新上传整个对象,而是向对象存储系统100上传的目标数据即可,并且,通常情况下该目标数据的数据量小于整个对象的数据量。如此,可以有效提高客户端201修改对象存储系统100中对象的效率、降低资源消耗,从而可以有效提高修改对象的性能。
同时,客户端201不用将对象下载至本地,这对于客户端201的本地存储空间的要求较低,从而可以避免客户端201本地的存储空间限制而导致修改对象失败的问题。
示例性地,上述服务装置101、索引装置102可以通过软件实现,或者可以通过硬件实现。其中,当通过软件实现时,服务装置101与索引装置102可以运行在一个或者多个计算设备上的程序代码。具体地,服务装置101与索引装置102可以运行在一个计算设备,如运行在该计算设备上的一个虚拟机或者容器中,或者分别运行在该计算设备上的不同虚拟机或者不同容器中。或者,服务装置101与索引装置102可以运行在不同计算设备等。
当通过硬件实现时,服务装置101与索引装置102均可以通过至少一个计算设备实现,如通过服务器实现等。或者,服务装置101与索引装置102均可以通过专用集成电路(application-specific integrated circuit,ASIC)实现、或通过可编程逻辑器件(programmable logic device,PLD)实现等。其中,上述PLD可以是复杂程序逻辑器件(complex programmable logical device,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA)、通用阵列逻辑(generic array logic,GAL)或其任意组合实现。
存储装置103通过硬件实现,可以包括至少一个具有数据存储能力的存储设备,例如可以包括一个或者多个存储服务器等。
需要说明的是,图1所示的应用场景以及对象存储系统100的架构仅作为一种示例性说明,实际应用时,对象存储系统100也可以适用于其它场景。比如,在其它可能的应用场景中,对象存储系统100可以为更多数量的客户端提供对象存储服务,或者为其它类型的客户端提供对象存储服务等。或者,对象存储系统100中还可以包括其它功能的装置,以支持本实施例对此并不进行限定。
为便于理解,下面结合附图,对本申请的实施例进行描述。
参见图2,图2为本申请实施例提供的一种对象修改方法的流程示意图。其中,图2所示的推理方法可以应用于图1所示的应用场景,或者应用于其它可适用的应用场景中。为便于说明,本实施例中以应用于图1所示的应用场景并且由客户端201请求修改对象为例进行示例性说明。
基于图2所示的应用场景,图2所示的对象修改方法具体可以包括:
S201:客户端201向对象存储系统100发送修改请求,该修改请求包括被修改的对象的标识、该对象中的待修改数据的标识以及目标数据,以请求对象存储系统100将该对象中的待修改数据修改为目标数据。
本实施例中,对象存储系统100中预先存储客户端201上传的对象,该对象可以是上述普通对象,也可以是分段对象,并且,对象存储系统100可以通过存储装置103存储该对象。由于实际应用场景中,客户端201难免存在更新该对象中的部分数据的需求,此时,客户端201可以生成针对该对象的修改请求,以便基于该请求修改对象存储系统100中的对象。
其中,客户端201所生成的修改请求中,包括对象的标识,如对象名称等,用于标识对象存储系统100中需要被修改的对象;该修改请求中还包括待修改数据的标识,如待修改数据在被存储时的偏移量以及数据长度等,用于标识对该对象中的哪些数据进行修改。另外,修改请求中还包括目标数据,该目标数据也即为对待修改数据进行修改后的数据。
然后,客户端201可以通过对象存储系统100对外提供的修改接口,将该修改请求发送至对象存储系统100。
示例性地,对象存储系统100对外提供的修改接口,可以通过对象接口(或者称之为上传接口)进行修改实现。比如,在已有的对象接口基础上,可以新增modify(修改)参数以及position参数,其中,modify参数用于指示修改类型的操作,position参数用于指示修改操作的偏移量(也即用于指示待修改数据的首地址),则,客户端201通过该修改接口发送的修改请求的格式可以如图3所示,其中,“object1”为对象标识、“position=100”表征偏移量为100、bucket1为桶标识(对象object1位于该桶bucket1内)、“Content-Length:200”表征待修改数据的长度为200字节。如此,客户端201可以通过该对象接口实现向对象存储系统100上传对象以及修改对象。
在其它实现示例中,对象存储系统100也可以配置有单独定义的修改接口,从而客户端201通过对象接口上传对象,通过该单独定义的修改接口修改对象,本实施例对此并不进行限定。
S202:服务装置101接收并响应客户端201发送的修改请求,从该修改请求中解析出待修改对象的标识、待修改数据的标识以及目标数据。
S203:服务装置101将目标数据写入存储装置103,以便对该目标数据进行持久化存储。
实际应用时,服务装置101在将目标数据成功写入存储装置103后,存储装置103可以向服务装置101返回写入成功的通知消息。进一步地,该通知消息中还可以包括目标数据在存储装置103中的存储位置。在其它实施例中,服务装置101可以指定存储装置103中存储该目标数据的位置,从而存储装置103可以基于服务装置101所指定的位置存储目标数据,本实施例对此并不进行限定。
S204:服务装置101根据目标数据在存储装置103中的存储位置,生成元数据更新请求,该元数据更新请求包括待修改对象的标识、待修改数据的标识、目标数据对应的元数据,以请求索引装置102将对象的索引进行更新。
其中,对象的索引,可以指示该对象在存储位置中的存储位置,如地址A至地址B等。本实施例中,当被修改的对象为多段对象时,该对象可以在存储装置103中分段存储;相应的,该对象的索引可以包括该对象对应的元数据(以下简称为对象元数据)以及该对象中的多个分段分别对应的元数据(以下简称为段元数据)。其中,对象元数据可以包括对象标识、对象所属桶的标识、对象大小、对象所包括的分段标识等。段元数据可以包括多个分段的标识、每个分段在存储装置103中存储的偏移量以及数据长度等。比如,多段对象中的每个对象可以利用存储装置103中的一个物理日志(physical log,Plog)进行存储,假设该多段对象包括3个分段,每个分段的大小为1024兆(M),则段元数据可以包括[Plog1,offset=0,len=1024M;Plog2,offset=0,len=1024M;Plog3,offset=0,len=1024M],其中,Plog1~Plog3为存储位置103中用于存储不同分段的Plog的标识。实际应用时,存储装置103可以以Plog作为存储单元进行数据存储。
在修改对象的过程中,服务装置101根据目标数据在存储装置103中的存储位置,生成目标数据对应的元数据,从而根据该目标数据对应的元数据、对象标识、待修改数据的标识生成元数据更新请求,以便基于该元数据更新请求对该对象的索引数据进行更新。这样,后续在查询修改后的对象时,对象存储装置100可以基于该更新后的索引数据进行查询。
S205:服务装置101将元数据更新请求发送给索引装置102。
S206:索引装置102响应该元数据更新请求,将对象的索引中待修改数据对应的元数据修改为目标数据对应的元数据。
具体实现时,对象存储系统100在存储该对象时,索引装置102可以生成并保存该对象的索引(或者称之为对象在存储装置103中的数据布局)。并且,当接收到服务装置101发送的元数据更新请求后,索引装置102可以从该元数据更新请求中解析出待修改对象的标识、待修改数据的标识、目标数据对应的元数据,从而索引装置101可以根据该对象的标识,读取到本地存储的该对象的索引,从而根据待修改数据的标识、目标数据对应的元数据,确定索引中的待修改数据对应的元数据,并将索引中的待修改数据对应的元数据修改为目标数据对应的元数据,以此实现对索引的更新。
以更新多段对象的索引为例,假设多段对象包括3个分段,每个分段的大小为1024M,存储装置103利用Plog1~Plog3存储该3个分段,则在更新该多段对象之前,索引装置102所生成的段元数据可以是[Plog1,offset=0,len=1024M;Plog2,offset=0,len=1024M;Plog3,offset=0,len=1024M]。在更新该多段对象时,假设待修改数据为Plog2中偏移量为500M~600M的数据,存储装置103利用Plog4存储大小为100M的目标数据,则索引装置102在更新该多段对象的索引时,可以将该索引中待修改数据对应的元数据修改为目标数据对应的元数据。例如,索引装置102可以将索引中的段元数据[Plog1,offset=0,len=1024M;Plog2,offset=0,len=1024M;Plog3,offset=0,len=1024M],修改为[Plog1,offset=0,len=1024M;Plog2,offset=0,len=500M;Plog2,offset=600,len=424M;Plog3,offset=0,len=1024M;Plog4,offset=0,len=100M],即,将待修改数据对应的元数据[Plog2,offset=500,len=100M]修改为目标数据对应的元数据[Plog4,offset=0,len=100M]。
实际应用时,索引装置102在完成对于索引的修改后,可以向服务装置101反馈修正成功的通知消息。
S207:服务装置101向客户端201反馈对象修改成功的通知消息。
这样,在实现修改对象的过程中,客户端201可以不用从对象存储系统100中下载整个对象,并且,客户端201也无需再向对象存储系统100重新上传整个对象,而是向对象存储系统100上传的目标数据即可。如此,可以有效提高客户端201修改对象存储系统100中对象的效率、降低资源消耗,从而可以有效提高修改对象的性能。
图2所示的实施例中,介绍了对象存储系统100支持客户端201修改对象的过程。在完成对象修改后,客户端201可以从对象存储系统100中读取修改后的对象。下面,对客户端201读取修改后的多段对象的过程进行示例性介绍,该多段对象的索引包括对象元数据以及段元数据。
参见图4,图4为本申请实施例中针对多段对象的读取方法的流程示意图。如图4所示,该方法具体可以包括:
S401:客户端201向对象存储系统100发送对象读取请求,以请求读取对象存储系统100预先被修改的多段对象。
作为一种实现示例,当需要读取对象存储系统100被修改的多段对象时,客户端201可以生成对象读取请求,该对象读取请求可以包括被读取的多段对象的标识、该多段对象所属桶的标识,以便对象存储系统100根据该多段对象的标识以及桶标识,从而相应的桶中读取该多段对象。然后,客户端201将该对象读取请求发送给对象存储系统100,以请求对象存储系统100反馈该多段对象。
S402:服务装置101接收并响应对象读取请求,向索引装置102请求对象元数据。
S403:服务装置101根据索引装置102所反馈的对象元数据,向索引装置102中查询段元数据。
本实施例中,多段对象的索引中的对象元数据以及段元数据可以在索引装置102中分开存储,因此,服务装置101可以分别向索引装置102请求对象元数据以及段元数据。
具体实现时,服务装置101可以生成包括被读取对象的标识的查询请求,并将该查询请求发送给索引装置102,以便索引装置102根据该查询请求中的对象标识,查找对象元数据,并将该对象元数据返回给服务装置101。示例性地,该对象元数据可以包括多段对象的标识、多段对象包括的多个分段的标识。
然后,服务装置101可以根据索引装置102反馈的对象元数据,确定该多段对象所包括的多个分段,并进一步向索引装置102请求该多段对象的各个分段分别对应的段元数据。然后,索引装置102向服务装置101反馈各个分段对应的段元数据。示例性地,该段元数据可以包括分段标识以及各个分段在存储装置103中的存储位置(可以通过存储偏移量以及数据长度表示)。
值得注意的是,实际应用场景中,客户端201所请求的数据为该多段对象中的部分数据,如该多段对象包括10个分段,而客户端201可能仅需向对象存储系统100查询其中的第3个分段至第5个分段的数据。因此,在进一步可能的实施方式中,客户端201向对象存储系统100发送的对象读取请求中,还可以包括数据读取范围的标识,以请求对象存储系统100向客户端201返回多段对象中处于该数据读取范围内的数据。相应的,服务装置101在获取到对象元数据后,可以从该多段对象包括的多个分段中确定与该数据读取范围重叠的目标分段(包括一个或者多个分段),并向索引装置102请求该目标分段对应的段元数据。
S404:服务装置101合并索引装置102返回的对象元数据以及段元数据,获得多段对象的索引。
本实施例中,服务装置101在合并对象元数据以及段元数据后,即可得到用于查询该多段对象在存储装置103中的存储位置的索引,以便服务装置101根据该索引从存储装置103读取多段对象。
其中,当客户端201所请求查询的数据为该多段对象中的部分数据时,服务装置101合并对象元数据以及段元数据所生成的索引,为多段对象中的部分数据对应的索引。
S405:服务装置101根据多段对象的索引,从存储装置103中读取客户端201所请求的多段对象。
举例来说,假设修改后的多段对象的索引中的段元数据为[Plog1,offset=0,len=1024M;Plog2,offset=0,len=500M;Plog2,offset=600,len=424M;Plog3,offset=0,len=1024M;Plog4,offset=0,len=100M],则服务装置101在从存储装置103中读取该多段对象时,可以根据段元数据[Plog1,offset=0,len=1024M]从Plog1中读取1024M的数据、根据段元数据[Plog2,offset=500,len=424M]从Plog2中读取500M的数据、根据段元数据[Plog2,offset=600,len=424M]从Plog2中读取424M的数据、根据段元数据[Plog3,offset=0,len=1024M]从Plog3中读取1024M的数据、根据段元数据[Plog4,offset=0,len=100M]从Plog4中读取100M的数据,以此获得客户端201所请求的大小为3072M的多段对象。
S406:服务装置101将读取到的多段对象发送给客户端201。
如此,对象存储系统100可以根据修改后的多段对象的索引,从存储装置103中查找并读取修改后的多段对象,并将其反馈给客户端201,以实现支持客户端201对于修改后的多段对象的查询。
上述图4所示的实施例中,服务装置101在获取到多段对象的索引时,需要与索引装置102进行多次交互以分别获取对象元数据以及段元数据,通信成本较高、性能较低。为此,在进一步可能的实施例中,服务装置101可以在存储(或者修改)多段对象时,通过将对象元数据以及段元数据合并存储,以降低服务装置101获取多段对象的索引的通信成本、提高通信性能。
参见图5,图5示出了一示例性针对多段对象的存储以及读取方法的流程示意图。图图5所示,该方法具体可以包括:
S501:客户端201通知对象存储系统100初始化针对多段对象的上传任务。
客户端201在需要上传多段对象时,可以向通知对象存储系统100初始化一个包括多个分段的上传任务,此时,对象存储系统100可以向客户端201返回一个对象存储系统100创建的全局唯一标识,如上传标识(upload ID),以便利用该全局唯一标识来标识此次上传任务。
S502:客户端201分别上传多段对象中的各个分段。
示例性地,客户端201可以根据多段对象的标识以及对象存储系统100反馈的全局唯一标识,上传各个分段,以便指示客户端201所上传的分段对应的上传任务以及其所属的多段对象。实际应用时,客户端201上传的每个分段,均可以具有对应的标识,如位于1~10000的分段号(part number)等。
本实施例中,客户端201可以逐个上传多段对象中的各个分段,或者,客户端201可以通过多个进程并行上传该多段对象中的多个分段,以此可以提高客户端201上传多个多段对象的效率。
S503:服务装置101将客户端201上传的多个分段分别写入存储装置103中。
S504:服务装置101指示索引装置102记录存储于存储装置103中的多个分段分别对应的元数据,也即段元数据。
S505:客户端201在所有分段上传完成后,向对象存储系统100发送合并段请求,以请求对象存储系统100将上传的多个分段合并为一个多段对象。
示例性地,客户端201所发送的合并段请求中可以携带有多个分段的标识(如分段号等),从而对象存储系统100可以根据该多个分段的标识,确定该标识所指示的客户端202所上传的多个分段,并且,对象存储系统100在确定各个分段通过有效性验证后,可以将客户端201上传的多个分段合并为一个多段对象。
S506:服务装置101在生成多段对象后,指示索引装置102生成该多段对象对应的元数据,也即对象元数据。
S507:服务装置101请求索引装置102反馈多个分段对应的段元数据。
S508:服务装置101指示索引装置102将段元数据写入对象元数据中。
此时,索引装置102中的对象元数据中可以包括多段对象的标识、该多段对象包括的多个分段的标识、每个分段在存储装置103中的存储位置。
S509:服务装置101指示索引装置102清空原先记录的多个分段对应的段元数据。
由于对象元数据中已经包括多个分段对应的段元数据,因此,将索引装置102中原先所记录的多个分段对应的段元数据进行清空后,可以释放该数据所占用的存储空间,以便于索引装置102能够基于被释放的存储空间存储其它多段对象对应的元数据。
S510:客户端201向对象存储系统100发送针对该多段对象的对象读取请求,以请求读取对象存储系统100中的该多段对象。
S511:服务装置101接收并响应对象读取请求,向索引装置102请求对象元数据。
其中,服务装置101所请求的对象元数据中包括该多段对象包括的多个分段分别对应的段元数据。
S512:服务装置101根据索引装置102返回的对象元数据,从存储装置103中读取客户端201所请求的多段对象。
如此,在读取多段对象的过程中,服务装置101与索引装置102之间所需的交互次数可以得到减少,简化了对象存储系统100中的处理流程,从而不仅可以降低服务装置101与索引装置102之间的通信成本,而且也能提高对象存储系统100反馈多段对象的性能。
S513:服务装置101将读取到的多段对象发送给客户端201。
本实施例中,客户端201、服务装置101、索引装置102以及存储装置103之间在进行数据交互的过程中,均可以收到对方发送的反馈。比如,客户端201在将每个分段上传至对象存储系统100时,可以收到对象存储系统100返回的上传成功/失败的通知;服务装置101在将各个分段分别写入存储装置103时,可以接收到存储装置103反馈的用于指示各个分段在存储装置103中的存储位置的消息,本实施例在此不做赘述。
上述各实施例中,针对对象修改过程中所涉及到的对象存储系统100可以是配置于计算设备或者计算设备集群上的软件,并且,通过在计算设备或者计算设备集群上运行该软件,可以使得计算设备或者计算设备集群实现上述对象存储系统100所具有的功能。下面,基于硬件设备实现的角度,对修改对象的过程中所涉及的对象存储系统100进行详细介绍。
图6示出了一种计算设备的结构示意图,上述对象存储系统100可以部署在该计算设备上,该计算设备可以是云环境中的计算设备(如服务器),或边缘环境中的计算设备,或终端设备等具体可以用于实现上述图2、图4以及图5所示实施例中对象存储系统100中服务装置101、索引装置102以及存储装置103的功能。
如图6所示,计算设备600包括处理器610、存储器620、通信接口630和总线640。处理器610、存储器620和通信接口630之间通过总线640通信。总线640可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extendedindustry standard architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。通信接口630用于与外部通信,例如接收客户端201发送的修改请求,或者向客户端201发送修改后的对象等。
其中,处理器610可以为中央处理器(central processing unit,CPU)、专用集成电路(application specific integrated circuit,ASIC)、图形处理器(graphicsprocessing unit,GPU)或者一个或多个集成电路。处理器610还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,对象存储系统100中各个装置的功能可以通过处理器610中的硬件的集成逻辑电路或者软件形式的指令完成。处理器610还可以是通用处理器、数据信号处理器(digital signal process,DSP)、现场可编程逻辑门阵列(fieldprogrammable gate array,FPGA)或者其他可编程逻辑器件,分立门或者晶体管逻辑器件,分立硬件组件,可以实现或者执行本申请实施例中公开的方法、步骤及逻辑框图。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,结合本申请实施例所公开的方法可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器620,处理器610读取存储器620中的信息,结合其硬件完成对象存储系统100中的部分或全部功能。
存储器620可以包括易失性存储器(volatile memory),例如随机存取存储器(random access memory,RAM)。存储器620还可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器,HDD或SSD。
存储器620中存储有可执行代码,处理器610执行该可执行代码以执行前述对象存储系统100所执行的方法。
具体地,在实现图2、图4以及图5所示实施例的情况下,且图2、图4以及图5所示实施例中所描述的对象存储系统100为通过软件实现的情况下,执行图2、图4以及图5中的对象存储系统100的功能所需的软件或程序代码存储在存储器620中,对象存储系统100与其它设备的交互通过通信接口630实现,处理器用于执行存储器620中的指令,实现对象存储系统100所执行的方法。
图7示出的一种计算设备集群的结构示意图。其中,图7所示的计算设备集群70包括多个计算设备,上述对象存储系统100可以分布式地部署在该计算设备集群70中的多个计算设备上。如图7所示,计算设备集群70包括多个计算设备700,每个计算设备700包括存储器720、处理器710、通信接口730以及总线740,其中,存储器720、处理器710、通信接口730通过总线740实现彼此之间的通信连接。
处理器710可以采用CPU、GPU、ASIC或者一个或多个集成电路。处理器710还可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,对象存储系统100的部分功能可用通过处理器710中的硬件的集成逻辑电路或者软件形式的指令完成。处理器710还可以是DSP、FPGA、通用处理器、其他可编程逻辑器件,分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中公开的部分方法、步骤及逻辑框图。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器、闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器720,在每个计算设备700中,处理器710读取存储器720中的信息,结合其硬件可以完成对象存储系统100的部分功能。
存储器720可以包括ROM、RAM、静态存储设备、动态存储设备、硬盘(例如SSD、HDD)等。存储器720可以存储程序代码,例如,用于实现服务装置101的部分或者全部程序代码、用于实现索引装置102的部分或者全部程序代码、用于实现存储装置103的部分或者全部程序代码等。针对每个计算设备700,当存储器720中存储的程序代码被处理器710执行时,处理器710基于通信接口730执行对象存储系统100所执行的部分方法,如其中一部分计算设备700可以用于执行上述服务装置101所执行的方法,另一部分计算设备700用于执行上述索引装置102所执行的方法,还有一部分计算设备700用于执行上述存储装置103所执行的方法。存储器720还可以存储数据,例如:处理器710在执行过程中产生的中间数据或结果数据,例如,对象元数据、分段元数据等。
每个计算设备700中的通信接口703用于与外部通信,例如与其它计算设备700进行交互,或者接收客户端201发送的修改请求,或者向客户端201发送修改后的对象等。
总线740可以是外设部件互连标准总线或扩展工业标准结构总线等。为便于表示,图7中每个计算设备700内的总线740仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
上述多个计算设备700之间通过通信网络建立通信通路,以实现对象存储系统100的功能。任一计算设备可以是云环境中的计算设备(例如,服务器),或边缘环境中的计算设备,或终端设备。
此外,本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在一个或者多个计算设备上运行时,使得该一个或者多个计算设备执行上述实施例对象存储系统100中的各个装置所执行的方法。
此外,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品被一个或者多个计算设备执行时,所述一个或者多个计算设备执行前述对象修改方法中的任一方法。该计算机程序产品可以为一个软件安装包,在需要使用前述对象修改方法的任一方法的情况下,可以下载该计算机程序产品并在计算机上执行该计算机程序产品。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,训练设备,或者网络设备等)执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、训练设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、训练设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的训练设备、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。

Claims (15)

1.一种对象存储系统,其特征在于,所述对象存储系统包括服务装置、索引装置以及存储装置;
所述服务装置,用于接收客户端发送的修改请求,所述修改请求包括对象的标识、待修改数据的标识以及目标数据,所述修改请求用于请求将所述对象中的所述待修改数据修改为所述目标数据;响应所述修改请求,将所述目标数据写入所述存储装置;
所述索引装置,用于将索引中的待修改数据对应的元数据修改为所述目标数据对应的元数据,所述索引用于在所述存储装置中查找所述对象;
所述存储装置,用于存储所述对象以及所述目标数据。
2.根据权利要求1所述的对象存储系统,其特征在于,所述对象包括多个分段,所述索引包括所述对象对应的元数据以及所述对象中的多个分段分别对应的元数据。
3.根据权利要求2所述的对象存储系统,其特征在于,服务装置,还用于合并所述索引装置中所述多个分段分别对应的元数据以及所述目标数据对应的元数据,并将合并后所得到的元数据添加至所述对象对应的元数据中,得到修改后的对象元数据。
4.根据权利要求3所述的对象存储系统,其特征在于,
所述服务装置,还用于在将所述目标数据写入所述存储装置之后,接收所述客户端发送的对象读取请求,所述对象读取请求用于请求读取修改后的所述对象;响应所述对象读取请求,从所述索引装置中读取所述修改后的对象元数据;根据所述修改后的对象元数据从所述存储装置中读取修改后的所述对象。
5.根据权利要求1或2所述的对象存储系统,其特征在于,
所述服务装置,还用于在将所述目标数据写入所述存储装置之后,接收所述客户端发送的对象读取请求,所述对象读取请求用于请求读取修改后的所述对象;响应所述对象读取请求,从所述索引装置中读取所述对象对应的元数据、所述多个分段分别对应的元数据、所述目标数据对应的元数据;根据读取的元数据从所述存储装置中读取修改后的所述对象。
6.根据权利要求1至5任一项所述的对象存储系统,其特征在于,所述对象存储系统包括修改接口;
所述服务装置用于通过所述修改接口接收所述客户端发送的所述目标数据,还用于通过所述修改接口向所述客户端发送修改后的对象。
7.一种对象修改方法,其特征在于,所述方法应用于对象存储系统,所述对象存储系统包括服务装置、索引装置以及存储装置,所述方法包括:
所述服务装置接收客户端发送的修改请求,所述修改请求包括对象的标识、待修改数据的标识以及目标数据,所述修改请求用于请求将所述对象中的所述待修改数据修改为所述目标数据;
所述服务装置响应所述修改请求,将所述目标数据写入所述存储装置;
所述索引装置将索引中的待修改数据对应的元数据修改为所述目标数据对应的元数据,所述索引用于在所述存储装置中查找所述对象。
8.根据权利要求7所述的方法,其特征在于,所述对象包括多个分段,所述索引包括所述对象对应的元数据以及所述对象中的多个分段分别对应的元数据。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
所述服务装置合并所述索引装置中所述多个分段分别对应的元数据以及所述目标数据对应的元数据;
所述服务装置将合并后所得到的元数据添加至所述对象对应的元数据中,得到修改后的对象元数据。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
所述服务装置在将所述目标数据写入所述存储装置之后,接收所述客户端发送的对象读取请求,所述对象读取请求用于请求读取修改后的所述对象;
所述服务装置响应所述对象读取请求,从所述索引装置中读取所述修改后的对象元数据;
所述服务装置根据所述修改后的对象元数据从所述存储装置中读取修改后的所述对象。
11.根据权利要求7或8所述的方法,其特征在于,所述方法还包括:
所述服务装置在将所述目标数据写入所述存储装置之后,接收所述客户端发送的对象读取请求,所述对象读取请求用于请求读取修改后的所述对象;
所述服务装置响应所述对象读取请求,从所述索引装置中读取所述对象对应的元数据、所述多个分段分别对应的元数据、所述目标数据对应的元数据;
所述服务装置根据读取的元数据从所述存储装置中读取修改后的所述对象。
12.根据权利要求7至11任一项所述的方法,其特征在于,所述对象存储系统包括修改接口,所述服务装置接收客户端发送的修改请求,包括:
所述服务装置通过所述修改接口接收所述客户端发送的所述目标数据;
所述方法还包括:
所述服务装置通过所述修改接口向所述客户端发送修改后的对象。
13.一种计算设备集群,其特征在于,包括至少一个计算设备,每个计算设备包括处理器和存储器;
所述处理器用于执行所述存储器中存储的指令,以使得所述计算设备集群执行权利要求7至12中任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有指令,当其在至少一个计算设备上运行时,使得所述至少一个计算设备执行如权利要求7至12任一项所述的方法。
15.一种包含指令的计算机程序产品,其特征在于,当其在至少一个计算设备上运行时,使得所述至少一个计算设备执行如权利要求7至12中任一项所述的方法。
CN202210429336.4A 2022-04-22 2022-04-22 一种对象存储系统、对象修改方法及相关设备 Pending CN116974734A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210429336.4A CN116974734A (zh) 2022-04-22 2022-04-22 一种对象存储系统、对象修改方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210429336.4A CN116974734A (zh) 2022-04-22 2022-04-22 一种对象存储系统、对象修改方法及相关设备

Publications (1)

Publication Number Publication Date
CN116974734A true CN116974734A (zh) 2023-10-31

Family

ID=88473560

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210429336.4A Pending CN116974734A (zh) 2022-04-22 2022-04-22 一种对象存储系统、对象修改方法及相关设备

Country Status (1)

Country Link
CN (1) CN116974734A (zh)

Similar Documents

Publication Publication Date Title
CN112929401B (zh) 一种注册方法及装置
CN103607428B (zh) 一种访问共享内存的方法和装置
US11232070B2 (en) Metadata compaction in a distributed storage system
US11625192B2 (en) Peer storage compute sharing using memory buffer
CN110147203B (zh) 一种文件管理方法、装置、电子设备及存储介质
US20190199794A1 (en) Efficient replication of changes to a byte-addressable persistent memory over a network
US20170153909A1 (en) Methods and Devices for Acquiring Data Using Virtual Machine and Host Machine
CN111803917B (zh) 资源的处理方法和装置
CN113535068B (zh) 数据读取方法和系统
WO2021226822A1 (zh) 日志写入方法、装置、电子设备以及存储介质
CN112839076A (zh) 数据存储、读取方法、网关、电子设备及存储介质
CN115840731A (zh) 文件处理方法、计算设备及计算机存储介质
CN112115521B (zh) 数据访问方法及装置
CN112395337A (zh) 一种数据导出方法和装置
CN116974734A (zh) 一种对象存储系统、对象修改方法及相关设备
CN106775456B (zh) 一种数据处理方法、装置及系统
CN114840307A (zh) 容器的加载方法、装置、设备和存储介质
CN115904211A (zh) 一种存储系统、数据处理方法及相关设备
CN108023914B (zh) 一种内存数据共享系统、内存数据的写入以及读取方法
CN115103020B (zh) 数据迁移处理方法和装置
US20240037029A1 (en) Client allocation of memory across memory servers
CN114218281A (zh) 唯一识别号的生成方法及装置
CN116266842A (zh) 一种数据系统、数据访问方法及设备
CN116049314A (zh) 一种数据获取方法、装置、电子设备及存储介质
CN118779310A (zh) 数据库管理方法及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication